diff --git a/core/cart_hw/sms_cart.c b/core/cart_hw/sms_cart.c index c4aba91..47ebfec 100644 --- a/core/cart_hw/sms_cart.c +++ b/core/cart_hw/sms_cart.c @@ -255,7 +255,8 @@ static const rominfo_t game_list[] = {0x41C948BF, 0, 0, SYSTEM_SPORTSPAD, MAPPER_SEGA, SYSTEM_SMS2, REGION_USA}, /* Sports Pad Soccer */ /* games requiring homemade multitap */ - {0xFAB6F52F, 0, 0, SYSTEM_MS4PLAY, MAPPER_NONE, SYSTEM_SMS2, REGION_USA}, /* BOom */ + {0xFAB6F52F, 0, 0, SYSTEM_MS4PLAY, MAPPER_NONE, SYSTEM_SMS2, REGION_USA}, /* BOom (v1.0) */ + {0x143AB50B, 0, 0, SYSTEM_MS4PLAY, MAPPER_NONE, SYSTEM_SMS2, REGION_USA}, /* BOom (v1.1) */ /* games supporting YM2413 FM */ {0x1C951F8E, 0, 1, SYSTEM_GAMEPAD, MAPPER_SEGA, SYSTEM_SMS2, REGION_USA}, /* After Burner */ diff --git a/libretro/libretro.c b/libretro/libretro.c index 8cca6f4..e8b68e5 100644 --- a/libretro/libretro.c +++ b/libretro/libretro.c @@ -745,6 +745,8 @@ static void configure_controls(void) input.system[1] = SYSTEM_TEAMPLAYER; else if (!strcmp(var.value, "teamplayer 1&2")) input.system[0] = input.system[1] = SYSTEM_TEAMPLAYER; + else if (!strcmp(var.value, "master system 4p")) + input.system[0] = SYSTEM_MS4PLAY; var.key = "portb"; environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var); @@ -768,7 +770,7 @@ void retro_set_environment(retro_environment_t cb) { "addr_error", "68k address error; enabled|disabled" }, { "lock_on", "Cartridge lock-on; disabled|game genie|action replay (pro)|sonic & knuckles" }, { "padtype", "Gamepad type; auto|6-buttons|3-buttons|2-buttons" }, - { "multitap", "Multi Tap; disabled|4-wayplay|teamplayer (port 1)|teamplayer (port 2)|teamplayer (both)" }, + { "multitap", "Multi Tap; disabled|4-wayplay|teamplayer (port 1)|teamplayer (port 2)|teamplayer (both)|master system 4p" }, { "portb", "Control Port 2; enabled|disabled" }, { "ym2413", "Master System FM; auto|disabled|enabled" }, { "dac_bits", "YM2612 DAC quantization; disabled|enabled" },