diff --git a/src/burn/drv/sms/d_sms.cpp b/src/burn/drv/sms/d_sms.cpp index d780c029f..725de1c59 100644 --- a/src/burn/drv/sms/d_sms.cpp +++ b/src/burn/drv/sms/d_sms.cpp @@ -896,6 +896,26 @@ struct BurnDriver BurnDrvsms_alexkiddj = { }; +// Alex Kidd in Radaxian Rumble 1.02e + +static struct BurnRomInfo sms_alexkiddrrRomDesc[] = { + { "akrr102e.sms", 0x80000, 0x368b64b0, BRF_PRG | BRF_ESS }, +}; + +STD_ROM_PICK(sms_alexkiddrr) +STD_ROM_FN(sms_alexkiddrr) + +struct BurnDriver BurnDrvsms_alexkiddrr = { + "sms_akrr102e", "sms_alexkidd", NULL, NULL, "2015", + "Alex Kidd in Radaxian Rumble (ver. 1.02e)\0", NULL, "Sega", "Sega Master System", + NULL, NULL, NULL, NULL, + BDF_GAME_WORKING | BDF_CLONE, 2, HARDWARE_SEGA_MASTER_SYSTEM, GBF_MISC, 0, + SMSGetZipName, sms_alexkiddrrRomInfo, sms_alexkiddrrRomName, NULL, NULL, SMSInputInfo, SMSDIPInfo, + SMSInit, SMSExit, SMSFrame, SMSDraw, SMSScan, &SMSPaletteRecalc, 0x1000, + 256, 192, 4, 3 +}; + + // Alex Kidd - The Lost Stars (World) static struct BurnRomInfo sms_alexlostRomDesc[] = { @@ -27488,7 +27508,7 @@ struct BurnDriver BurnDrvsms_hongkildong = { "sms_hongkildong", NULL, NULL, NULL, "1991", "Hong Kil Dong (Kor)\0", NULL, "Clover", "Sega Master System", NULL, NULL, NULL, NULL, - BDF_GAME_WORKING | BDF_CLONE, 2, HARDWARE_SEGA_MASTER_SYSTEM, GBF_MISC, 0, + BDF_GAME_WORKING | BDF_CLONE, 2, HARDWARE_SEGA_MASTER_SYSTEM | HARDWARE_SMS_DISPLAY_PAL, GBF_MISC, 0, SMSGetZipName, sms_hongkildongRomInfo, sms_hongkildongRomName, NULL, NULL, SMSInputInfo, SMSDIPInfo, SMSInit, SMSExit, SMSFrame, SMSDraw, SMSScan, &SMSPaletteRecalc, 0x1000, 256, 192, 4, 3 diff --git a/src/burn/drv/sms/sms.cpp b/src/burn/drv/sms/sms.cpp index 25fcc1780..36a511036 100644 --- a/src/burn/drv/sms/sms.cpp +++ b/src/burn/drv/sms/sms.cpp @@ -304,7 +304,7 @@ void sms_reset(void) cart.fcr[0] = 0x00; cart.fcr[1] = 0x00; cart.fcr[2] = 0x01; - cart.fcr[3] = 0x00; + cart.fcr[3] = 0x02; // Default (0x0000 - 0xbfff) mappings: if (cart.mapper == MAPPER_KOREA8K) { // aka Janggun ui Adeul (Kor) @@ -315,7 +315,7 @@ void sms_reset(void) korean8kmap6000_7fff = cart.rom + 0x6000; korean8kmap8000_9fff = cart.rom + 0x8000; korean8kmapa000_bfff = cart.rom + 0xa000; - cart.fcr[2] = 0x00; + cart.fcr[2] = 0x00; cart.fcr[3] = 0x00; } else if (cart.mapper == MAPPER_XIN1) { // HiCom Xin1 Carts @@ -341,7 +341,7 @@ void sms_reset(void) ZetMapMemory((UINT8 *)&sms.wram + 0x0000, 0xc000, 0xdfff, MAP_RAM); ZetMapMemory((UINT8 *)&sms.wram + 0x0000, 0xe000, 0xffff, MAP_RAM); memset(&sms.wram[1], 0xf0, sizeof(sms.wram) - 1); // this memory pattern fixes booting of a few korean games - cart.fcr[2] = 0x00; + cart.fcr[2] = 0x00; cart.fcr[3] = 0x00; } ZetReset(); ZetClose(); @@ -350,7 +350,7 @@ void sms_reset(void) { case MAPPER_MSX_NEMESIS: { bprintf(0, _T("(Nemesis-MSX: cart rom-page 0x0f remapped to 0x0000 - 0x1fff)\n")); - cart.fcr[2] = 0x00; + cart.fcr[2] = 0x00; cart.fcr[3] = 0x00; UINT32 poffset = (0x0f) << 13; ZetOpen(0); ZetMapMemory(cart.rom + poffset, 0x0000, 0x1fff, MAP_ROM);