Splitted, merged e non-merged set in export
Inviato: 17/08/2023, 22:23
Recentemente ho avuto richieste in merito all'export per ClrMamePro e il tipo di set.
Mi spiego meglio: usando l'export di oggi e portandolo su ClrMamePro, in alcuni casi ho un warning o un errore di file mancanti o relazioni con il parent non disponibili.
Riepilogo i tipi di set del Mame:
Prendiamo come esempio un parent ed un clone.
Parent 1941
Clone 1941u
Quindi avendo questi 3 tipi e volendo mettere un selettore nelle opzioni di esportazione, come dovrebbero cambiare i file dat?
Io pensavo di togliere cloneof/romof da un set non-merged (quindi ciascuno zip ha tutti i file necessari).
Il primo problema è che non saprei che fare nel caso di merged (se non eventualmente togliere tutte le rom o addirittura il file in export in caso di clone).
Il secondo è che romof potrebbe contenere dei bios, come in mslug/neogeo, quindi in questo caso dovrebbe essere tenuto. Ma è un casino verificare ulteriormente se il link è un bios ed eventualmente rimuoverlo, mi piacerebbe una regola più lineare.
Inoltre è corretto agire in questo modo o si vanno a creare problemi con ClrMamePro?
Ad esempio dat senza rom producono errori? A memoria direi di si, ma non riesco a provarlo in questo momento.
Il default ovviamente sarebbe splitted, quindi i file dat risulteranno una copia dell'xml del Mame.
In caso di dubbi, la documentazione ufficiale è qui: https://docs.mamedev.org/usingmame/aboutromsets.html
Mi spiego meglio: usando l'export di oggi e portandolo su ClrMamePro, in alcuni casi ho un warning o un errore di file mancanti o relazioni con il parent non disponibili.
Riepilogo i tipi di set del Mame:
- splitted: formato classico, con parent completo e clone con le differenze
- merged: parent completo anche di tutti i cloni, cloni vuoti (il file può essere rimosso)
- non-merged: parent con i propri file, clone con i propri file (anche uguali)

Prendiamo come esempio un parent ed un clone.
Parent 1941
Codice: Seleziona tutto
game (
name "1941"
description "1941: Counter Attack (World 900227)"
year "1990"
manufacturer "Capcom"
sourcefile "capcom/cps1.cpp"
rom ( name "41em_30.11f" size "131072" crc "4249ec61" sha1 "5323cfa6938e6d95db8469f09b2fb5b5c5068bfc" )
rom ( name "41em_35.11h" size "131072" crc "ddbee5eb" sha1 "0fef53398f4e2cd6ccc7bc122dd893e0a4e2e052" )
rom ( name "41em_31.12f" size "131072" crc "584e88e5" sha1 "af254408d939cc439b5653e60afbccdf59777085" )
rom ( name "41em_36.12h" size "131072" crc "3cfc31d0" sha1 "7c0614e4e25502ff2d18aa4a97c91bf05ead875f" )
rom ( name "41-32m.8h" size "524288" crc "4e9648ca" sha1 "d8e67e6e3a6dc79053e4f56cfd83431385ea7611" )
rom ( name "41-5m.7a" size "524288" crc "01d1cb11" sha1 "621e5377d1aaa9f7270d85bea1bdeef6721cdd05" )
rom ( name "41-7m.9a" size "524288" crc "aeaa3509" sha1 "6124ef06d9dfdd879181856bd49853f1800c3b87" )
rom ( name "41-1m.3a" size "524288" crc "ff77985a" sha1 "7e08df3a829bf9617470a46c79b713d4d9ebacae" )
rom ( name "41-3m.5a" size "524288" crc "983be58f" sha1 "83a4decdd775f859240771269b8af3a5981b244c" )
rom ( name "41_9.12b" size "65536" crc "0f9d8527" sha1 "3a00dd5772f38081fde11d8d61ba467379e2a636" )
rom ( name "41_18.11c" size "131072" crc "d1f15aeb" sha1 "88089383f2d54fc97026a67f067d448eee5bd0c2" )
rom ( name "41_19.12c" size "131072" crc "15aec3a6" sha1 "8153c03aba005bab62bf0e8b3d15ec1c346326fd" )
rom ( name "buf1" size "279" crc "eb122de7" sha1 "b26b5bfe258e3e184f069719f9fd008d6b8f6b9b" )
rom ( name "ioa1" size "279" crc "59c7ee3b" sha1 "fbb887c5b4f5cb8df77cec710eaac2985bc482a6" )
rom ( name "prg1" size "279" crc "f1129744" sha1 "a5300f301c1a08a7da768f0773fa0fe3f683b237" )
rom ( name "rom1" size "279" crc "41dc73b9" sha1 "7d4c9f1693c821fbf84e32dd6ef62ddf14967845" )
rom ( name "sou1" size "279" crc "84f4b2fe" sha1 "dcc9e86cc36316fe42eace02d6df75d08bc8bb6d" )
rom ( name "yi24b.1a" size "279" crc "3004dcdf" sha1 "a73d86d1545af1d99a03d88af83449ec82b03c5c" )
rom ( name "iob1.11e" size "279" crc "3abc0700" sha1 "973043aa46ec6d5d1db20dc9d5937005a0f9f6ae" )
)
Codice: Seleziona tutto
game (
name "1941u"
description "1941: Counter Attack (USA 900227)"
year "1990"
manufacturer "Capcom"
romof "1941"
cloneof "1941"
sourcefile "capcom/cps1.cpp"
rom ( name "41u_30.11f" size "131072" crc "be5439d0" sha1 "a62e0aa4f13f504c0eded99d731f7c820c51cb3d" )
rom ( name "41u_35.11h" size "131072" crc "6ac96595" sha1 "efff8185fd1aee29d9b5164a9aac61f77f769ae4" )
rom ( name "41u_31.12f" size "131072" crc "9811d6eb" sha1 "6dda86a3a726a2b5459f0b90f58343966e9783cc" )
rom ( name "41u_36.12h" size "131072" crc "a87e6137" sha1 "d4b63a0c14a35ebd61cddd01cdc6fc955d521ae2" )
rom ( name "41-32m.8h" size "524288" crc "4e9648ca" sha1 "d8e67e6e3a6dc79053e4f56cfd83431385ea7611" )
rom ( name "41-5m.7a" size "524288" crc "01d1cb11" sha1 "621e5377d1aaa9f7270d85bea1bdeef6721cdd05" )
rom ( name "41-7m.9a" size "524288" crc "aeaa3509" sha1 "6124ef06d9dfdd879181856bd49853f1800c3b87" )
rom ( name "41-1m.3a" size "524288" crc "ff77985a" sha1 "7e08df3a829bf9617470a46c79b713d4d9ebacae" )
rom ( name "41-3m.5a" size "524288" crc "983be58f" sha1 "83a4decdd775f859240771269b8af3a5981b244c" )
rom ( name "41_9.12b" size "65536" crc "0f9d8527" sha1 "3a00dd5772f38081fde11d8d61ba467379e2a636" )
rom ( name "41e_18.11c" size "131072" crc "d1f15aeb" sha1 "88089383f2d54fc97026a67f067d448eee5bd0c2" )
rom ( name "41_19.12c" size "131072" crc "15aec3a6" sha1 "8153c03aba005bab62bf0e8b3d15ec1c346326fd" )
rom ( name "buf1" size "279" crc "eb122de7" sha1 "b26b5bfe258e3e184f069719f9fd008d6b8f6b9b" )
rom ( name "ioa1" size "279" crc "59c7ee3b" sha1 "fbb887c5b4f5cb8df77cec710eaac2985bc482a6" )
rom ( name "prg1" size "279" crc "f1129744" sha1 "a5300f301c1a08a7da768f0773fa0fe3f683b237" )
rom ( name "rom1" size "279" crc "41dc73b9" sha1 "7d4c9f1693c821fbf84e32dd6ef62ddf14967845" )
rom ( name "sou1" size "279" crc "84f4b2fe" sha1 "dcc9e86cc36316fe42eace02d6df75d08bc8bb6d" )
rom ( name "yi24b.1a" size "279" crc "3004dcdf" sha1 "a73d86d1545af1d99a03d88af83449ec82b03c5c" )
rom ( name "iob1.11e" size "279" crc "3abc0700" sha1 "973043aa46ec6d5d1db20dc9d5937005a0f9f6ae" )
)
Io pensavo di togliere cloneof/romof da un set non-merged (quindi ciascuno zip ha tutti i file necessari).
Il primo problema è che non saprei che fare nel caso di merged (se non eventualmente togliere tutte le rom o addirittura il file in export in caso di clone).
Il secondo è che romof potrebbe contenere dei bios, come in mslug/neogeo, quindi in questo caso dovrebbe essere tenuto. Ma è un casino verificare ulteriormente se il link è un bios ed eventualmente rimuoverlo, mi piacerebbe una regola più lineare.
Inoltre è corretto agire in questo modo o si vanno a creare problemi con ClrMamePro?
Ad esempio dat senza rom producono errori? A memoria direi di si, ma non riesco a provarlo in questo momento.
Il default ovviamente sarebbe splitted, quindi i file dat risulteranno una copia dell'xml del Mame.
In caso di dubbi, la documentazione ufficiale è qui: https://docs.mamedev.org/usingmame/aboutromsets.html