Ciao
Si, in realtà l'esigenza attuale era quella di convertire l'xml nel formato hyperspin

I campi che mancano sono Genre e Rating.
Più in generale i campi che userei pre fare vari filtri + o - custom sono:
- name
description
rate
require chd (boolean)
type
cloneof
manifacturer
year
driver
genre
category
language
input
buttons
players
coins
resolution
orientation
Più che XML che è complesso potrebbe bastare anche un CSV. Potresti metterci direttamente tutti i campi che non sono multivalue (come le rom) ma se serve solo a me dedica il tempo ad altro.
Piuttosto avere l'XML di hyperspin sarebbe molto bello

Il formato è molto semplice, riporto di seguito un estratto:
Codice: Seleziona tutto
<?xml version="1.0"?>
<menu>
<header>
<listname>MAME</listname>
<lastlistupdate>02/08/2016</lastlistupdate>
<listversion>.160 Ongoing</listversion>
<exporterversion>HyperList XML Exporter Version 1.3 Copywrite (c) 2009-2011 William Strong</exporterversion>
</header>
<game name="88games" index="true" image="'">
<description>'88 Games</description>
<cloneof></cloneof>
<crc></crc>
<manufacturer>Konami</manufacturer>
<year>1988</year>
<genre>Sports / Track & Field</genre>
<rating>AAMA - Green (Suitable For All Ages)</rating>
<enabled>Yes</enabled>
</game>
<game name="99lstwark" index="" image="">
<description>'99: The Last War (Kyugo)</description>
<cloneof>repulse</cloneof>
<crc></crc>
<manufacturer>Crux / Kyugo</manufacturer>
<year>1985</year>
<genre>Shooter / Gallery</genre>
<rating>AAMA - Green (Suitable For All Ages)</rating>
<enabled>Yes</enabled>
</game>
<game name="99lstwar" index="" image="">
<description>'99: The Last War (set 1)</description>
<cloneof>repulse</cloneof>
<crc></crc>
<manufacturer>Crux / Proma</manufacturer>
<year>1985</year>
<genre>Shooter / Gallery</genre>
<rating>AAMA - Green (Suitable For All Ages)</rating>
<enabled>Yes</enabled>
</game>
<game name="99lstwara" index="" image="">
<description>'99: The Last War (set 2)</description>
<cloneof>repulse</cloneof>
<crc></crc>
<manufacturer>Crux / Proma</manufacturer>
<year>1985</year>
<genre>Shooter / Gallery</genre>
<rating>AAMA - Green (Suitable For All Ages)</rating>
<enabled>Yes</enabled>
</game>
<game name="005" index="true" image="0">
<description>005</description>
<cloneof></cloneof>
<crc></crc>
<manufacturer>Sega</manufacturer>
<year>1981</year>
<genre>Maze / Shooter Small</genre>
<rating>AAMA - Green (Suitable For All Ages)</rating>
<enabled>Yes</enabled>
</game>
<game name="1on1gov" index="true" image="1">
<description>1 on 1 Government (Japan)</description>
<cloneof></cloneof>
<crc></crc>
<manufacturer>Tecmo</manufacturer>
<year>2000</year>
<genre>Sports / Basketball</genre>
<rating>AAMA - Green (Suitable For All Ages)</rating>
<enabled>Yes</enabled>
</game>
<game name="10yard85" index="" image="">
<description>10-Yard Fight '85 (US, Taito license)</description>
<cloneof>10yard</cloneof>
<crc></crc>
<manufacturer>Irem (Taito license)</manufacturer>
<year>1985</year>
<genre>Sports / Amer. Football</genre>
<rating>AAMA - Green (Suitable For All Ages)</rating>
<enabled>Yes</enabled>
</game>
</menu>
I giochi devono essere in ordine alfabetico per il campo description.
I campi sono abbastanza parlanti, ti spiego quelli particolari:
index va a true se il tuitolo è il primo di una determinata lettera/carattere.
image ha valore solo se index è true ed il valore è il primo carattere di description
crc serve solo per gli XML delle console (c'è l'md5)
Genre dovrebbe essere in inglese così matcha i files di hyperspin per le icone (altrimenti c'è da rinominare i files).
Rating dovrebbe avere uno di questi valori:
Codice: Seleziona tutto
AAMA - Green (Suitable For All Ages)
AAMA - Red (Animated Violence Strong)
AAMA - Red (Language Strong)
AAMA - Red (Life Like Violence Strong)
AAMA - Red (Sexual Content Strong)
AAMA - Yellow (Animated Violence Mild)
AAMA - Yellow (Language Mild)
AAMA - Yellow (Life Like Violence Mild)
AAMA - Yellow (Sexual Content Mild)
CERO - A (All Ages)
CERO - B (Ages 12+)
CERO - C (Ages 15+)
CERO - D (Ages 17+)
CERO - Z (Ages 18+)
ESRB - AO (Adults Only)
ESRB - E (Everyone)
ESRB - E10+ (Everyone 10+)
ESRB - EC (Early Childhood)
ESRB - M (Mature)
ESRB - T (Teen)
HSRS - 17 (17+)
HSRS - AD (Adult)
HSRS - GA (General Audience)
HSRS - PG (Parental Guidance)
Other - NR (Not Rated)
PEGI - 12 (Everyone 12+)
PEGI - 16 (Everyone 16+)
PEGI - 18 (Everyone 18+)
PEGI - 3 (Everyone 3+)
PEGI - 7 (Everyone 7+)
Enabled sempre a Yes
Questi sono i possibili valori di Genre (se non si rinominano i files):
Codice: Seleziona tutto
Action
Adventure
All Games
Ball & Paddle
Beat-'Em-Up
Board Games
Breakout
Card Battle
Casino
Climbing
Compilation
Driving
Educational
Fighter
Flying
Game Show
Gun
Mahjong
Mature
Maze
Mini-Games
Miscellaneous
Motorcycle
Multimedia
Party
Pinball
Platform
Puzzle
Quiz
Rhythm
Role-Playing
Shoot-'Em-Up
Shooter
Simulation
Spinner
Sports-Baseball
Sports-Basketball
Sports-Biking
Sports-Bowling
Sports-Boxing
Sports-Cricket
Sports-Fishing
Sports-Football
Sports-Futuristic
Sports-Golf
Sports-Handball
Sports-Hockey
Sports-Horse Racing
Sports-Hunting
Sports-Olympic
Sports-Pool and Dart
Sports-Rugby
Sports-Skateboarding
Sports-Skating
Sports-Skiing
Sports-Snowboarding
Sports-Soccer
Sports-Surfing
Sports-Tennis
Sports-Track & Field
Sports-Volleyball
Sports-Wakeboarding
Sports-Wrestling
Sports
Strategy
Tabletop
Trackball
Utility
Virtual Life
Water
Cmq per il genere non è un problema, come ce li hai scritti nel DB vanno bene, poi secondo me i files vanno rinominati di conseguenza.
Dici che è fattibile?
Emu