merge mappers from FCEU-mm
[fceu.git] / unif.c
diff --git a/unif.c b/unif.c
index 6354131..362ec92 100644 (file)
--- a/unif.c
+++ b/unif.c
@@ -318,132 +318,163 @@ static int LoadCHR(int fp)
 \r
 static BMAPPING bmap[] = {\r
 \r
-       /* Sachen Carts */\r
-       { "TC-U01-1.5M", TCU01_Init,0},\r
-       { "Sachen-8259A", S8259A_Init,0},\r
-       { "Sachen-8259B", S8259B_Init,0},\r
-       { "Sachen-8259C", S8259C_Init,0},\r
-       { "Sachen-8259D", S8259D_Init,0},\r
-       { "Sachen-74LS374N", S74LS374N_Init,0},\r
-       { "Sachen-74LS374NA", S74LS374NA_Init,0}, //seems to be custom mapper\r
-       { "SA-002", TCU02_Init, 0},\r
-       { "SA-016-1M", SA0161M_Init,0},\r
-       { "SA-72007", SA72007_Init,0},\r
-       { "SA-72008", SA72008_Init,0},\r
-       { "SA-009", SA009_Init,0},\r
-       { "SA-0036", SA0036_Init,0},\r
-       { "SA-0037", SA0037_Init,0},\r
-       { "SA-NROM", TCA01_Init,0},\r
-\r
-       // /* AVE carts. */\r
-       // { "MB-91", MB91_Init,0},  // DeathBots\r
-       // { "NINA-06", NINA06_Init,0},  // F-15 City War\r
-       // { "NINA-03", NINA03_Init,0},  // Tiles of Fate\r
-       // { "NINA-001", NINA001_Init,0}, // Impossible Mission 2\r
-\r
-       { "ANROM", ANROM_Init,0},\r
-\r
-       { "HKROM", HKROM_Init,0},\r
-\r
-       { "EWROM", EWROM_Init,0},\r
-       { "EKROM", EKROM_Init,0},\r
-       { "ELROM", ELROM_Init,0},\r
-       { "ETROM", ETROM_Init,0},\r
-\r
-       { "SAROM", SAROM_Init,0},\r
-       { "SBROM", SBROM_Init,0},\r
-       { "SCROM", SCROM_Init,0},\r
-       { "SEROM", SEROM_Init,0},\r
-       { "SGROM", SGROM_Init,0},\r
-       { "SKROM", SKROM_Init,0},\r
-       { "SLROM", SLROM_Init,0},\r
-       { "SL1ROM", SL1ROM_Init,0},\r
-       { "SNROM", SNROM_Init,0},\r
-       { "SOROM", SOROM_Init,0},\r
-\r
-       { "TGROM", TGROM_Init,0},\r
-       { "TR1ROM", TFROM_Init,BMCFLAG_FORCE4},\r
-\r
-       { "TBROM", TBROM_Init,0},\r
-       { "TEROM", TEROM_Init,0},\r
-       { "TFROM", TFROM_Init,0},\r
-       { "TLROM", TLROM_Init,0},\r
-       { "TKROM", TKROM_Init,0},\r
-       { "TSROM", TSROM_Init,0},\r
-\r
-       { "TLSROM", TLSROM_Init,0},\r
-       { "TKSROM", TKSROM_Init,0},\r
-       { "TQROM", TQROM_Init,0},\r
-       { "TVROM", TLROM_Init,BMCFLAG_FORCE4},\r
-\r
-       { "NTBROM", Mapper68_Init,0},\r
-\r
-       { "CPROM", CPROM_Init,BMCFLAG_16KCHRR},\r
-       { "CNROM", CNROM_Init,0},\r
-       { "NROM", NROM_Init,0 }, //NROM256_Init,0 },\r
-       { "NROM-128", NROM_Init,0 }, //NROM128_Init,0 },\r
-       { "NROM-256", NROM_Init,0 }, //NROM256_Init,0 },\r
-       { "RROM", NROM_Init,0 }, //NROM128_Init,0 },\r
-       { "RROM-128", NROM_Init,0 }, //NROM128_Init,0 },\r
-       { "MHROM", MHROM_Init,0},\r
-       { "UNROM", UNROM_Init,0},\r
-       { "UOROM", UNROM_Init,0},\r
-       { "SUNSOFT_UNROM", SUNSOFT_UNROM_Init,0},\r
-       { "MARIO1-MALEE2", MALEE_Init,0},\r
-       { "3D-BLOCK", UNL3DBlock_Init, 0},\r
-       { "SMB2J", UNLSMB2J_Init, 0},\r
-       { "AX5705", UNLAX5705_Init, 0},\r
-       { "CC-21", UNLCC21_Init,0},\r
-       { "H2288", UNLH2288_Init,0},\r
-       { "KOF97", UNLKOF97_Init,0},\r
-       { "SL1632", UNLSL1632_Init,0},\r
-       { "SHERO", UNLSHeroes_Init,0},\r
-       { "8237", UNL8237_Init,0},\r
-       { "8237A", UNL8237A_Init,0},\r
-       { "8157", UNL8157_Init,0},\r
-       { "T-262", BMCT262_Init,0},\r
-       { "FK23C", BMCFK23C_Init,0},\r
-       { "A65AS", BMCA65AS_Init,0},\r
-       { "C-N22M", UNLCN22M_Init,0},\r
-       { "EDU2000", UNLEDU2000_Init,0},\r
-       { "603-5052", UNL6035052_Init,0},\r
-       { "N625092", UNLN625092_Init,0},\r
-       { "Supervision16in1", Supervision16_Init,0},\r
-       { "NovelDiamond9999999in1", Novel_Init,0},\r
-       { "Super24in1SC03", Super24_Init,0},\r
-       { "64in1NoRepeat", BMC64in1nr_Init, 0},\r
-       { "13in1JY110", BMC13in1JY110_Init, 0},\r
-       { "70in1", BMC70in1_Init, 0},\r
-       { "70in1B", BMC70in1B_Init, 0},\r
-       { "D1038", BMCD1038_Init, 0},\r
-       { "GK-192", BMCGK192_Init, 0},\r
-       { "SuperHIK8in1", Mapper45_Init,0},\r
-       { "22211", UNL22211_Init,0},\r
-       { "TF1201", UNLTF1201_Init, 0},\r
-       { "GS-2004", BMCGS2004_Init, 0},\r
-       { "GS-2013", BMCGS2013_Init, 0},\r
-       { "KS7032", UNLKS7032_Init, 0},\r
-       { "T-230", UNLT230_Init, 0},\r
-       { "190in1", BMC190in1_Init, 0},\r
-       { "Ghostbusters63in1", BMCGhostbusters63in1_Init, 0},\r
-       { "BS-5",BMCBS5_Init, 0},\r
-       { "411120-C",BMC411120C_Init, 0},\r
-       { "830118C",BMC830118C_Init, 0},\r
-       { "T-227-1",BMCT2271_Init,0},\r
-\r
-       { "DREAMTECH01", DreamTech01_Init,0},\r
-       { "KONAMI-QTAI", Mapper190_Init,0},\r
-\r
-       { "DANCE", UNLDANCE_Init,0},\r
-       { "OneBus", UNLOneBus_Init,0},\r
-       { "SC-127", UNLSC127_Init,0},\r
-\r
-       { "TEK90", Mapper90_Init,0},\r
-\r
+/* Sachen Carts */\r
+ { "TC-U01-1.5M", TCU01_Init,0},\r
+ { "Sachen-8259A", S8259A_Init,0},\r
+ { "Sachen-8259B", S8259B_Init,0},\r
+ { "Sachen-8259C", S8259C_Init,0},\r
+ { "Sachen-8259D", S8259D_Init,0},\r
+ { "Sachen-74LS374N", S74LS374N_Init,0},\r
+ { "Sachen-74LS374NA", S74LS374NA_Init,0}, //seems to be custom mapper\r
+ { "SA-002", TCU02_Init, 0},\r
+ { "SA-016-1M", SA0161M_Init,0},\r
+ { "SA-72007", SA72007_Init,0},\r
+ { "SA-72008", SA72008_Init,0},\r
+ { "SA-009", SA009_Init,0},\r
+ { "SA-0036", SA0036_Init,0},\r
+ { "SA-0037", SA0037_Init,0},\r
+ { "SA-NROM", TCA01_Init,0},\r
+ { "SA-9602B", SA9602B_Init, BMCFLAG_32KCHRR},\r
+\r
+// /* AVE carts. */\r
+// { "MB-91", MB91_Init,0},  // DeathBots\r
+// { "NINA-06", NINA06_Init,0},  // F-15 City War\r
+// { "NINA-03", NINA03_Init,0},  // Tiles of Fate\r
+// { "NINA-001", NINA001_Init,0}, // Impossible Mission 2\r
+\r
+ { "ANROM", ANROM_Init,0},\r
+\r
+ { "HKROM", HKROM_Init,0},\r
+\r
+ { "EWROM", EWROM_Init,0},\r
+ { "EKROM", EKROM_Init,0},\r
+ { "ELROM", ELROM_Init,0},\r
+ { "ETROM", ETROM_Init,0},\r
+\r
+ { "SAROM", SAROM_Init,0},\r
+ { "SBROM", SBROM_Init,0},\r
+ { "SCROM", SCROM_Init,0},\r
+ { "SEROM", SEROM_Init,0},\r
+ { "SGROM", SGROM_Init,0},\r
+ { "SKROM", SKROM_Init,0},\r
+ { "SLROM", SLROM_Init,0},\r
+ { "SL1ROM", SL1ROM_Init,0},\r
+ { "SNROM", SNROM_Init,0},\r
+ { "SOROM", SOROM_Init,0},\r
+\r
+ { "TGROM", TGROM_Init,0},\r
+ { "TR1ROM", TFROM_Init,BMCFLAG_FORCE4},\r
+\r
+ { "TBROM", TBROM_Init,0},\r
+ { "TEROM", TEROM_Init,0},\r
+ { "TFROM", TFROM_Init,0},\r
+ { "TLROM", TLROM_Init,0},\r
+ { "TKROM", TKROM_Init,0},\r
+ { "TSROM", TSROM_Init,0},\r
+\r
+ { "TLSROM", TLSROM_Init,0},\r
+ { "TKSROM", TKSROM_Init,0},\r
+ { "TQROM", TQROM_Init,0},\r
+ { "TVROM", TLROM_Init,BMCFLAG_FORCE4},\r
+\r
+ { "NTBROM", Mapper68_Init,0},\r
+\r
+ { "CPROM", CPROM_Init,BMCFLAG_16KCHRR},\r
+ { "CNROM", CNROM_Init,0},\r
+ { "NROM", NROM_Init,0 }, //NROM256_Init,0 },\r
+ { "NROM-128", NROM_Init,0 }, //NROM128_Init,0 },\r
+ { "NROM-256", NROM_Init,0 }, //NROM256_Init,0 },\r
+ { "SSS-NROM-256", SSSNROM_Init,0 },\r
+ { "RROM", NROM_Init,0 }, //NROM128_Init,0 },\r
+ { "RROM-128", NROM_Init,0 }, //NROM128_Init,0 },\r
+ { "MHROM", MHROM_Init,0},\r
+ { "UNROM", UNROM_Init,0},\r
+ { "UOROM", UNROM_Init,0},\r
+ { "SUNSOFT_UNROM", SUNSOFT_UNROM_Init,0},\r
+ { "MARIO1-MALEE2", MALEE_Init,0},\r
+ { "3D-BLOCK", UNL3DBlock_Init, 0},\r
+ { "SMB2J", UNLSMB2J_Init, 0},\r
+ { "AX5705", UNLAX5705_Init, 0},\r
+ { "CC-21", UNLCC21_Init,0},\r
+ { "LE05", LE05_Init,0},\r
+ { "AC08", AC08_Init,0},\r
+ { "LH10", LH10_Init,0},\r
+ { "LH32", LH32_Init,0},\r
+ { "LH53", LH53_Init,0},\r
+ { "BB", UNLBB_Init,0},\r
+\r
+ { "H2288", UNLH2288_Init,0},\r
+ { "KOF97", UNLKOF97_Init,0},\r
+ { "SL1632", UNLSL1632_Init,0},\r
+ { "SL12", UNLSL12_Init,0},\r
+ { "SHERO", UNLSHeroes_Init,0},\r
+ { "8237", UNL8237_Init,0},\r
+ { "8237A", UNL8237A_Init,0},\r
+ { "8157", UNL8157_Init,0},\r
+ { "T-262", BMCT262_Init,0},\r
  { "FK23C", BMCFK23C_Init,BMCFLAG_EXPCHRR},\r
  { "FK23CA", BMCFK23CA_Init,BMCFLAG_EXPCHRR},\r
-\r
-       {0,0,0}\r
+ { "A65AS", BMCA65AS_Init,0},\r
+ { "YOKO", UNLYOKO_Init,0},\r
+ { "FS304", UNLFS304_Init,0},\r
+ { "43272", UNL43272_Init,0},\r
+ { "EDU2000", UNLEDU2000_Init,0},\r
+ { "603-5052", UNL6035052_Init,0},\r
+ { "N625092", UNLN625092_Init,0},\r
+ { "Supervision16in1", Supervision16_Init,0},\r
+ { "NovelDiamond9999999in1", Novel_Init,0},\r
+ { "Super24in1SC03", Super24_Init,0},\r
+ { "64in1NoRepeat", BMC64in1nr_Init, 0},\r
+ { "42in1ResetSwitch", Mapper226_Init, 0},\r
+ { "13in1JY110", BMC13in1JY110_Init, 0},\r
+ { "70in1", BMC70in1_Init, 0},\r
+ { "70in1B", BMC70in1B_Init, 0},\r
+ { "D1038", BMCD1038_Init, 0},\r
+ { "GK-192", BMCGK192_Init, 0},\r
+ { "SuperHIK8in1", Mapper45_Init,0},\r
+ { "22211", UNL22211_Init,0},\r
+ { "TF1201", UNLTF1201_Init, 0},\r
+ { "GS-2004", BMCGS2004_Init, 0},\r
+ { "GS-2013", BMCGS2013_Init, 0},\r
+ { "KS7057", UNLKS7057_Init, 0},\r
+ { "KS7037", UNLKS7037_Init, 0},\r
+ { "KS7030", UNLKS7030_Init, 0},\r
+ { "KS7031", UNLKS7031_Init, 0},\r
+ { "KS7032", UNLKS7032_Init, 0},\r
+ { "KS7017", UNLKS7017_Init, 0},\r
+ { "KS7012", UNLKS7012_Init, 0},\r
+ { "KS7013B", UNLKS7013B_Init, 0},\r
+ { "T-230", UNLT230_Init, 0},\r
+ { "CITYFIGHT", UNLCITYFIGHT_Init, 0},\r
+ { "190in1", BMC190in1_Init, 0},\r
+ { "Ghostbusters63in1", BMCGhostbusters63in1_Init, 0},\r
+ { "BS-5",BMCBS5_Init, 0},\r
+ { "411120-C",BMC411120C_Init, 0},\r
+ { "830118C",BMC830118C_Init, 0},\r
+ { "T-227-1",BMCT2271_Init,0},\r
+ { "PEC-586",UNLPEC586Init,0},\r
+ { "12-IN-1",BMC12IN1_Init,0},\r
+ { "VRC7", UNLVRC7_Init,0},\r
+ { "810544-C-A1", BMC810544CA1_Init,0},\r
+ { "NTD-03", BMCNTD03_Init,0},\r
+\r
+ { "DREAMTECH01", DreamTech01_Init,0},\r
+ { "KONAMI-QTAI", Mapper190_Init,0},\r
+\r
+ { "DANCE", UNLOneBus_Init,0}, // redundant\r
+ { "OneBus", UNLOneBus_Init,0},\r
+ { "SC-127", UNLSC127_Init,0},\r
+ { "DANCE2000", UNLD2000_Init,0},\r
+ { "Transformer", Transformer_Init, 0},\r
+\r
+ { "TEK90", Mapper90_Init,0},\r
+\r
+#ifdef COPYFAMI\r
+ { "COPYFAMI_MMC3", MapperCopyFamiMMC3_Init,0},\r
+ { "COPYFAMI", MapperCopyFami_Init,0},\r
+#endif\r
+\r
+ {0,0,0}\r
 };\r
 \r
 static BFMAPPING bfunc[] = {\r