Previous 15994 Revisions Next

r2222 Wednesday 2nd April, 2008 at 19:50:20 UTC by Cowering
[Genesis] Add handler for 'Mahjong Lover'
[src/mess/drivers]genesis.c

src/mess/drivers/genesis.c
r2221r2222
5959static int is_radica = 0;
6060static int is_kof99 = 0;
6161static int is_soulb = 0;
62static int is_mjlovr = 0;
6263
6364static UINT8 *genesis_sram;
6465static int genesis_sram_start;
r2221r2222
185186   unsigned char *ROM;
186187
187188   genesis_sram = NULL;
188   genesis_sram_start = genesis_sram_len = genesis_sram_active = genesis_sram_readonly = is_ssf2 = is_redcliff = is_radica = is_kof99 = is_soulb = 0;
189   genesis_sram_start = genesis_sram_len = genesis_sram_active = genesis_sram_readonly = 0;
190   is_ssf2 = is_redcliff = is_radica = is_kof99 = is_soulb = is_mjlovr = 0;
189191
190192   rawROM = memory_region(REGION_CPU1);
191193        ROM = rawROM /*+ 512 */;
r2221r2222
293295         }
294296      }
295297
298      // detect Mahjong Lover unlicensed game
299      if (length == 0x100000)
300      {
301          static unsigned char mjlovrsig[] = { 0x13, 0xf9, 0x00, 0x40, 0x00, 0x00}; // move.b  ($400000).l,($FFFF0C).l (partial)
302
303          if (!memcmp(&ROM[0x01b24+relocate],&mjlovrsig[0],sizeof(mjlovrsig)))
304         {
305            is_mjlovr = 1;
306         }
307      }
308
296309   }
297310
298311   ROM = memory_region(REGION_CPU1);   /* 68000 ROM region */
r2221r2222
467480   return 0xc900;
468481}
469482
483// Mahjong Lover handler from HazeMD
484READ16_HANDLER( mjlovr_prot_1_r )
485{
486   return 0x9000;
487}
488
489READ16_HANDLER( mjlovr_prot_2_r )
490{
491   return 0xd300;
492}
493
470494// KOF99 handler from HazeMD
471495READ16_HANDLER( kof99_0xA13002_r )
472496{
r2221r2222
554578      memory_install_read16_handler(0, ADDRESS_SPACE_PROGRAM, 0x400004, 0x400005, 0, 0, redclif_prot_r );
555579   }
556580
581   if (is_mjlovr)
582   {
583      memory_install_read16_handler(0, ADDRESS_SPACE_PROGRAM, 0x400000, 0x400001, 0, 0, mjlovr_prot_1_r );
584      memory_install_read16_handler(0, ADDRESS_SPACE_PROGRAM, 0x401000, 0x401001, 0, 0, mjlovr_prot_2_r );
585   }
557586
558587   /* install NOP handler for TMSS */
559588   memory_install_write16_handler(0, ADDRESS_SPACE_PROGRAM, 0xA14000, 0xA14003, 0, 0, genesis_TMSS_bank_w);

Previous 15994 Revisions Next


© 1998-2018 The MESS Team