179 std::string_view typeStr = config.
getChildData(
"mappertype",
"Mirrored");
180 if (typeStr ==
"auto") {
190 if (machineType ==
"Coleco") {
191 if (rom.
size() ==
one_of(128*1024u, 256*1024u, 512*1024u, 1024*1024u)) {
197 return guessRomType(rom);
218 auto& doc =
const_cast<DeviceConfig&
>(config).getXMLDocument();
222 std::unique_ptr<MSXRom> result;
234 result = make_unique<RomPlain>(config, std::move(rom), type);
246 result = make_unique<RomPageNN>(config, std::move(rom), type);
249 result = make_unique<RomDRAM>(config, std::move(rom));
252 result = make_unique<RomGeneric8kB>(config, std::move(rom));
255 result = make_unique<RomGeneric16kB>(config, std::move(rom));
258 result = make_unique<RomKonamiSCC>(config, std::move(rom));
261 result = make_unique<RomKonami>(config, std::move(rom));
264 result = make_unique<RomKonamiKeyboardMaster>(config, std::move(rom));
267 result = make_unique<RomAscii8kB>(config, std::move(rom));
270 result = make_unique<RomAscii16kB>(config, std::move(rom));
273 result = make_unique<RomAscii16X>(config, std::move(rom));
276 result = make_unique<RomMSXWrite>(config, std::move(rom));
279 result = make_unique<RomPadial8kB>(config, std::move(rom));
282 result = make_unique<RomPadial16kB>(config, std::move(rom));
285 result = make_unique<RomSuperLodeRunner>(config, std::move(rom));
288 result = make_unique<RomSuperSwangi>(config, std::move(rom));
291 result = make_unique<RomMitsubishiMLTS2>(config, std::move(rom));
294 result = make_unique<RomMSXDOS2>(config, std::move(rom));
297 result = make_unique<RomRType>(config, std::move(rom));
300 result = make_unique<RomCrossBlaim>(config, std::move(rom));
303 result = make_unique<RomHarryFox>(config, std::move(rom));
306 result = make_unique<RomAscii8_8>(
310 result = make_unique<RomAscii8_8>(
314 result = make_unique<RomAscii8_8>(
318 result = make_unique<RomAscii8_8>(
322 result = make_unique<RomAscii8_8>(
326 result = make_unique<RomAscii8_8>(
336 result = make_unique<RomGameMaster2>(config, std::move(rom));
339 result = make_unique<RomPanasonic>(config, std::move(rom));
342 result = make_unique<RomNational>(config, std::move(rom));
345 result = make_unique<RomNeo8>(config, std::move(rom));
348 result = make_unique<RomNeo16>(config, std::move(rom));
351 result = make_unique<RomMajutsushi>(config, std::move(rom));
354 result = make_unique<RomSynthesizer>(config, std::move(rom));
357 result = make_unique<RomPlayBall>(config, std::move(rom));
360 result = make_unique<RomNettouYakyuu>(config, std::move(rom));
363 result = make_unique<RomHalnote>(config, std::move(rom));
366 result = make_unique<RomZemina25in1>(config, std::move(rom));
369 result = make_unique<RomZemina80in1>(config, std::move(rom));
372 result = make_unique<RomZemina90in1>(config, std::move(rom));
375 result = make_unique<RomZemina126in1>(config, std::move(rom));
378 result = make_unique<RomHolyQuran>(config, std::move(rom));
381 result = make_unique<RomHolyQuran2>(config, std::move(rom));
384 result = make_unique<RomFSA1FM1>(config, std::move(rom));
387 result = make_unique<RomFSA1FM2>(config, std::move(rom));
394 result = make_unique<RomManbow2>(config, std::move(rom), type);
397 result = make_unique<RomMatraInk>(config, std::move(rom));
400 result = make_unique<RomMatraCompilation>(config, std::move(rom));
403 result = make_unique<RomArc>(config, std::move(rom));
406 result = make_unique<RomAlAlamiah30in1>(config, std::move(rom));
409 result = make_unique<RomRetroHard31in1>(config, std::move(rom));
412 result = make_unique<ROMHunterMk2>(config, std::move(rom));
415 result = make_unique<MegaFlashRomSCCPlus>(config, std::move(rom));
418 result = make_unique<ReproCartridgeV1>(config, std::move(rom));
421 result = make_unique<ReproCartridgeV2>(config, std::move(rom));
424 result = make_unique<KonamiUltimateCollection>(config, std::move(rom));
427 result = make_unique<RomDooly>(config, std::move(rom));
430 result = make_unique<RomMSXtra>(config, std::move(rom));
433 result = make_unique<RomMultiRom>(config, std::move(rom));
436 result = make_unique<RomRamFile>(config, std::move(rom));
439 result = make_unique<RomColecoMegaCart>(config, std::move(rom));