180 std::string_view typeStr = config.
getChildData(
"mappertype",
"Mirrored");
181 if (typeStr ==
"auto") {
191 if (machineType ==
"Coleco") {
192 if (rom.
size() ==
one_of(128*1024u, 256*1024u, 512*1024u, 1024*1024u)) {
198 return guessRomType(rom);
219 auto& doc =
const_cast<DeviceConfig&
>(config).getXMLDocument();
223 std::unique_ptr<MSXRom> result;
235 result = make_unique<RomPlain>(config, std::move(rom), type);
247 result = make_unique<RomPageNN>(config, std::move(rom), type);
250 result = make_unique<RomDRAM>(config, std::move(rom));
253 result = make_unique<RomGeneric8kB>(config, std::move(rom));
256 result = make_unique<RomGeneric16kB>(config, std::move(rom));
259 result = make_unique<RomKonamiSCC>(config, std::move(rom));
262 result = make_unique<RomKonami>(config, std::move(rom));
265 result = make_unique<RomKonamiKeyboardMaster>(config, std::move(rom));
268 result = make_unique<RomAscii8kB>(config, std::move(rom));
271 result = make_unique<RomAscii16kB>(config, std::move(rom));
274 result = make_unique<RomAscii16X>(config, std::move(rom));
277 result = make_unique<RomMSXWrite>(config, std::move(rom));
280 result = make_unique<RomPadial8kB>(config, std::move(rom));
283 result = make_unique<RomPadial16kB>(config, std::move(rom));
286 result = make_unique<RomSuperLodeRunner>(config, std::move(rom));
289 result = make_unique<RomSuperSwangi>(config, std::move(rom));
292 result = make_unique<RomMitsubishiMLTS2>(config, std::move(rom));
295 result = make_unique<RomMSXDOS2>(config, std::move(rom));
298 result = make_unique<RomRType>(config, std::move(rom));
301 result = make_unique<RomCrossBlaim>(config, std::move(rom));
304 result = make_unique<RomHarryFox>(config, std::move(rom));
307 result = make_unique<RomAscii8_8>(
311 result = make_unique<RomAscii8_8>(
315 result = make_unique<RomAscii8_8>(
319 result = make_unique<RomAscii8_8>(
323 result = make_unique<RomAscii8_8>(
327 result = make_unique<RomAscii8_8>(
337 result = make_unique<RomGameMaster2>(config, std::move(rom));
340 result = make_unique<RomPanasonic>(config, std::move(rom));
343 result = make_unique<RomNational>(config, std::move(rom));
346 result = make_unique<RomNeo8>(config, std::move(rom));
349 result = make_unique<RomNeo16>(config, std::move(rom));
352 result = make_unique<RomMajutsushi>(config, std::move(rom));
355 result = make_unique<RomSynthesizer>(config, std::move(rom));
358 result = make_unique<RomPlayBall>(config, std::move(rom));
361 result = make_unique<RomNettouYakyuu>(config, std::move(rom));
364 result = make_unique<RomHalnote>(config, std::move(rom));
367 result = make_unique<RomZemina25in1>(config, std::move(rom));
370 result = make_unique<RomZemina80in1>(config, std::move(rom));
373 result = make_unique<RomZemina90in1>(config, std::move(rom));
376 result = make_unique<RomZemina126in1>(config, std::move(rom));
379 result = make_unique<RomHolyQuran>(config, std::move(rom));
382 result = make_unique<RomHolyQuran2>(config, std::move(rom));
385 result = make_unique<RomFSA1FM1>(config, std::move(rom));
388 result = make_unique<RomFSA1FM2>(config, std::move(rom));
395 result = make_unique<RomManbow2>(config, std::move(rom), type);
398 result = make_unique<RomMatraInk>(config, std::move(rom));
401 result = make_unique<RomMatraCompilation>(config, std::move(rom));
404 result = make_unique<RomArc>(config, std::move(rom));
407 result = make_unique<RomAlAlamiah30in1>(config, std::move(rom));
410 result = make_unique<RomRetroHard31in1>(config, std::move(rom));
413 result = make_unique<ROMHunterMk2>(config, std::move(rom));
416 result = make_unique<MegaFlashRomSCCPlus>(config, std::move(rom));
419 result = make_unique<ReproCartridgeV1>(config, std::move(rom));
422 result = make_unique<ReproCartridgeV2>(config, std::move(rom));
425 result = make_unique<Yamanooto>(config, std::move(rom));
428 result = make_unique<KonamiUltimateCollection>(config, std::move(rom));
431 result = make_unique<RomDooly>(config, std::move(rom));
434 result = make_unique<RomMSXtra>(config, std::move(rom));
437 result = make_unique<RomMultiRom>(config, std::move(rom));
440 result = make_unique<RomRamFile>(config, std::move(rom));
443 result = make_unique<RomColecoMegaCart>(config, std::move(rom));