Previous 199869 Revisions Next

r24856 Monday 12th August, 2013 at 10:01:18 UTC by Robbbert
captcommb : various graphical issues fixed, marked as working [Barry Harris]
[src/mame/drivers]cps1.c
[src/mame/video]cps1.c

trunk/src/mame/drivers/cps1.c
r24855r24856
1110911109GAME( 1991, captcommu,   captcomm, cps1_10MHz, captcomm, cps_state,   cps1,     ROT0,   "Capcom", "Captain Commando (USA 910928)", GAME_SUPPORTS_SAVE )
1111011110GAME( 1991, captcommj,   captcomm, cps1_10MHz, captcomm, cps_state,   cps1,     ROT0,   "Capcom", "Captain Commando (Japan 911202)", GAME_SUPPORTS_SAVE )
1111111111GAME( 1991, captcommjr1, captcomm, cps1_10MHz, captcomm, cps_state,   cps1,     ROT0,   "Capcom", "Captain Commando (Japan 910928)", GAME_SUPPORTS_SAVE )
11112GAME( 1991, captcommb,   captcomm, cps1_10MHz, captcomm, cps_state,   cps1,     ROT0,   "bootleg", "Captain Commando (bootleg)", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE )    // 911014 - based on World version
11112GAME( 1991, captcommb,   captcomm, cps1_10MHz, captcomm, cps_state,   cps1,     ROT0,   "bootleg", "Captain Commando (bootleg)", GAME_SUPPORTS_SAVE )    // 911014 - based on World version
1111311113GAME( 1991, knights,     0,        cps1_10MHz, knights,  cps_state,   cps1,     ROT0,   "Capcom", "Knights of the Round (World 911127)", GAME_SUPPORTS_SAVE )   // "ETC"
1111411114GAME( 1991, knightsu,    knights,  cps1_10MHz, knights,  cps_state,   cps1,     ROT0,   "Capcom", "Knights of the Round (USA 911127)", GAME_SUPPORTS_SAVE )
1111511115GAME( 1991, knightsj,    knights,  cps1_10MHz, knights,  cps_state,   cps1,     ROT0,   "Capcom", "Knights of the Round (Japan 911127, B-Board 91634B-2)", GAME_SUPPORTS_SAVE )
trunk/src/mame/video/cps1.c
r24855r24856
13641364   {"captcommu",   CPS_B_21_BT3, mapper_CC63B,  0x36, 0x38, 0x34 },
13651365   {"captcommj",   CPS_B_21_BT3, mapper_CC63B,  0x36, 0x38, 0x34 },
13661366   {"captcommjr1", CPS_B_21_BT3, mapper_CC63B,  0x36, 0x38, 0x34 },
1367   {"captcommb",   CPS_B_21_BT3, mapper_CC63B,  0x36, 0x38, 0x34 },
1367   {"captcommb",   CPS_B_21_BT3, mapper_CC63B,  0x36, 0x38, 0x34, 3 },
13681368   {"knights",     CPS_B_21_BT4, mapper_KR63B,  0x36, 0, 0x34 },
13691369   {"knightsu",    CPS_B_21_BT4, mapper_KR63B,  0x36, 0, 0x34 },
13701370   {"knightsj",    CPS_B_21_BT4, mapper_KR63B,  0x36, 0, 0x34 },
r24855r24856
18411841      scroll2xoff = -0x10;
18421842      scroll3xoff = -0x10;
18431843   }
1844   else
1845   if (m_game_config->bootleg_kludge == 3)
1846   {
1847      scroll1xoff = -0x08;
1848      scroll2xoff = -0x0b;
1849      scroll3xoff = -0x0c;
1850   }
18441851
18451852   m_obj = cps1_base(machine(), CPS1_OBJ_BASE, m_obj_size);
18461853   m_other = cps1_base(machine(), CPS1_OTHER_BASE, m_other_size);
r24855r24856
22692276   /* Locate the end of table marker */
22702277   while (offset < m_obj_size / 2)
22712278   {
2272      int colour = m_buffered_obj[offset + 3];
2273      if ((colour & 0xff00) == 0xff00)
2279      if (m_game_config->bootleg_kludge == 3) {
2280         /* captcommb - same end of sprite marker as CPS-2 */
2281         int colour = m_buffered_obj[offset + 1];
2282         if (colour >= 0x8000)
2283         {
2284            /* Marker found. This is the last sprite. */
2285            m_last_sprite_offset = offset - 4;
2286            return;
2287         }
2288      }
2289      else
22742290      {
2275         /* Marker found. This is the last sprite. */
2276         m_last_sprite_offset = offset - 4;
2277         return;
2291         int colour = m_buffered_obj[offset + 3];
2292         if ((colour & 0xff00) == 0xff00)
2293         {
2294            /* Marker found. This is the last sprite. */
2295            m_last_sprite_offset = offset - 4;
2296            return;
2297         }
22782298      }
22792299
22802300      offset += 4;
r24855r24856
23092329   UINT16 *base = m_buffered_obj;
23102330
23112331   /* some sf2 hacks draw the sprites in reverse order */
2312   if ((m_game_config->bootleg_kludge == 1) || (m_game_config->bootleg_kludge == 2))
2332   if ((m_game_config->bootleg_kludge == 1) || (m_game_config->bootleg_kludge == 2) || (m_game_config->bootleg_kludge == 3))
23132333   {
23142334      base += m_last_sprite_offset;
23152335      baseadd = -4;

Previous 199869 Revisions Next


© 1997-2024 The MAME Team