Risoluzione dello schermo nel Mame

Il database che raccoglie tutte le informazioni sui giochi, video, screenshot e tanto altro ancora

Moderatore: Moderatore ADB

Avatar utente
motoschifo
Progetto Arcade Database
Progetto Arcade Database
Messaggi: 2699
Iscritto il: 12/07/2013, 20:29
Medaglie: 2
Reputation: 42
Città: Parma
Località: Parma
:
Gold Medal Donatore
Contatta:

Risoluzione dello schermo nel Mame

Messaggio da motoschifo » 10/04/2018, 23:22

Dopo aver fatto alcuni controlli, mi è venuto un dubbio che non ricordo di aver chiarito tempo fa quando si parlava di risoluzione.
Ovvero: ci sono giochi, come per es. galaxian, che riportano una risoluzione molto più alta di quella del cabinato. In questo caso 768x224.
Come è possibile?

Questo è l'xml:

Codice: Seleziona tutto

<machine name="galaxian" sourcefile="galaxian.cpp">
  <description>Galaxian (Namco set 1)</description>
  <year>1979</year>
  <manufacturer>Namco</manufacturer>
  <rom name="galmidw.u" size="2048" crc="745e2d61" sha1="e65f74e35b1bfaccd407e168ea55678ae9b68edf" region="maincpu" offset="0"/>
  <rom name="galmidw.v" size="2048" crc="9c999a40" sha1="02fdcd95d8511e64c0d2b007b874112d53e41045" region="maincpu" offset="800"/>
  <rom name="galmidw.w" size="2048" crc="b5894925" sha1="0046b9ed697a34d088de1aead8bd7cbe526a2396" region="maincpu" offset="1000"/>
  <rom name="galmidw.y" size="2048" crc="6b3ca10b" sha1="18d8714e5ef52f63ba8888ecc5a25b17b3bf17d1" region="maincpu" offset="1800"/>
  <rom name="7l" size="2048" crc="1b933207" sha1="8b44b0f74420871454e27894d0f004859f9e59a9" region="maincpu" offset="2000"/>
  <rom name="1h.bin" size="2048" crc="39fb43a4" sha1="4755609bd974976f04855d51e08ec0d62ab4bc07" region="gfx1" offset="0"/>
  <rom name="1k.bin" size="2048" crc="7e3f56a2" sha1="a9795d8b7388f404f3b0e2c6ce15d713a4c5bafa" region="gfx1" offset="800"/>
  <rom name="6l.bpr" size="32" crc="c3ac9467" sha1="f382ad5a34d282056c78a5ec00c30ec43772bae2" region="proms" offset="0"/>
  <device_ref name="z80"/>
  <device_ref name="watchdog"/>
  <device_ref name="gfxdecode"/>
  <device_ref name="palette"/>
  <device_ref name="screen"/>
  <device_ref name="speaker"/>
  <device_ref name="galaxian_sound"/>
  <device_ref name="discrete"/>
  <chip type="cpu" tag="maincpu" name="Zilog Z80" clock="3072000"/>
  <chip type="audio" tag="speaker" name="Speaker"/>
  <chip type="audio" tag="cust" name="Galaxian Custom Sound"/>
  <chip type="audio" tag="discrete" name="Discrete Sound"/>
  <display tag="screen" type="raster" rotate="90" width="768" height="224" refresh="60.606061" pixclock="18432000" htotal="1152" hbend="0" hbstart="768" vtotal="264" vbend="16" vbstart="240"/>
  <sound channels="1"/>
  <input players="2" coins="2">
    <control type="joy" player="1" buttons="1" ways="2"/>
    <control type="joy" player="2" buttons="1" ways="2"/>
  </input>
  <dipswitch name="Cabinet" tag="IN0" mask="32">
    <dipvalue name="Upright" value="0" default="yes"/>
    <dipvalue name="Cocktail" value="32"/>
  </dipswitch>
  <dipswitch name="Service Mode" tag="IN0" mask="64">
    <dipvalue name="Off" value="0" default="yes"/>
    <dipvalue name="On" value="64"/>
  </dipswitch>
  <dipswitch name="Coinage" tag="IN1" mask="192">
    <dipvalue name="2 Coins/1 Credit" value="64"/>
    <dipvalue name="1 Coin/1 Credit" value="0" default="yes"/>
    <dipvalue name="1 Coin/2 Credits" value="128"/>
    <dipvalue name="Free Play" value="192"/>
  </dipswitch>
  <dipswitch name="Bonus Life" tag="IN2" mask="3">
    <dipvalue name="7000" value="0" default="yes"/>
    <dipvalue name="10000" value="1"/>
    <dipvalue name="12000" value="2"/>
    <dipvalue name="20000" value="3"/>
  </dipswitch>
  <dipswitch name="Lives" tag="IN2" mask="4">
    <dipvalue name="2" value="0"/>
    <dipvalue name="3" value="4" default="yes"/>
  </dipswitch>
  <dipswitch name="Unused" tag="IN2" mask="8">
    <dipvalue name="Off" value="0" default="yes"/>
    <dipvalue name="On" value="8"/>
  </dipswitch>
  <port tag=":IN0"/>
  <port tag=":IN1"/>
  <port tag=":IN2"/>
  <driver status="good" emulation="good" savestate="supported"/>
</machine>
mentre prima della versione 0.124 appariva così:

Codice: Seleziona tutto

<game name="galaxian" sourcefile="galaxian.c">
  <description>Galaxian (Namco set 1)</description>
  <year>1979</year>
  <manufacturer>Namco</manufacturer>
  <rom name="galmidw.u" size="2048" crc="745e2d61" sha1="e65f74e35b1bfaccd407e168ea55678ae9b68edf" region="cpu1" offset="0"/>
  <rom name="galmidw.v" size="2048" crc="9c999a40" sha1="02fdcd95d8511e64c0d2b007b874112d53e41045" region="cpu1" offset="800"/>
  <rom name="galmidw.w" size="2048" crc="b5894925" sha1="0046b9ed697a34d088de1aead8bd7cbe526a2396" region="cpu1" offset="1000"/>
  <rom name="galmidw.y" size="2048" crc="6b3ca10b" sha1="18d8714e5ef52f63ba8888ecc5a25b17b3bf17d1" region="cpu1" offset="1800"/>
  <rom name="7l" size="2048" crc="1b933207" sha1="8b44b0f74420871454e27894d0f004859f9e59a9" region="cpu1" offset="2000"/>
  <rom name="1h.bin" size="2048" crc="39fb43a4" sha1="4755609bd974976f04855d51e08ec0d62ab4bc07" region="gfx1" dispose="yes" offset="0"/>
  <rom name="1k.bin" size="2048" crc="7e3f56a2" sha1="a9795d8b7388f404f3b0e2c6ce15d713a4c5bafa" region="gfx1" dispose="yes" offset="800"/>
  <rom name="6l.bpr" size="32" crc="c3ac9467" sha1="f382ad5a34d282056c78a5ec00c30ec43772bae2" region="proms" offset="0"/>
  <chip type="cpu" name="Z80" clock="3072000"/>
  <chip type="audio" name="Samples"/>
  <display type="raster" rotate="90" width="256" height="224" refresh="60.606061" pixclock="6144000" htotal="384" hbend="0" hbstart="256" vtotal="264" vbend="16" vbstart="240"/>
  <sound channels="1"/>
  <input players="2" buttons="1" coins="2">
    <control type="joy2way"/>
  </input>
  <dipswitch name="Cabinet">
    <dipvalue name="Upright" default="yes"/>
    <dipvalue name="Cocktail"/>
  </dipswitch>
  <dipswitch name="Service Mode">
    <dipvalue name="Off" default="yes"/>
    <dipvalue name="On"/>
  </dipswitch>
  <dipswitch name="Coinage">
    <dipvalue name="2 Coins/1 Credit"/>
    <dipvalue name="1 Coin/1 Credit" default="yes"/>
    <dipvalue name="1 Coin/2 Credits"/>
    <dipvalue name="Free Play"/>
  </dipswitch>
  <dipswitch name="Bonus Life">
    <dipvalue name="7000" default="yes"/>
    <dipvalue name="10000"/>
    <dipvalue name="12000"/>
    <dipvalue name="20000"/>
  </dipswitch>
  <dipswitch name="Lives">
    <dipvalue name="2"/>
    <dipvalue name="3" default="yes"/>
  </dipswitch>
  <dipswitch name="Unused">
    <dipvalue name="Off" default="yes"/>
    <dipvalue name="On"/>
  </dipswitch>
  <driver status="good" emulation="good" color="good" sound="good" graphic="good" savestate="supported" palettesize="98"/>
</game>
La parte interessante è questa:

Codice: Seleziona tutto

0.196: <display type="raster" rotate="90" width="768" height="224" refresh="60.606061" pixclock="18432000" htotal="1152" hbend="0" hbstart="768" vtotal="264" vbend="16" vbstart="240"/>
0.123: <display type="raster" rotate="90" width="256" height="224" refresh="60.606061" pixclock="6144000"  htotal="384"  hbend="0" hbstart="256" vtotal="264" vbend="16" vbstart="240"/>
Come posso ottenere la risoluzione corretta, o meglio cosa rappresentano questi valori?
Dai nomi pensavo a questa corrispondenza:
- htotal, vtotal: totale px in larghezza e altezza
- hbstart, hbend: coordinate iniziali e finali del bordo orizzontale
- vbstart, vbend: coordinate iniziali e finali del bordo verticale

Se è così, l'attributo width non esprime la larghezza schermo e andrebbe in qualche modo ricalcolata con nuove regole, oppure aggiungere un attributo "display width" e rinominare questo in "full view/artwork width" o qualcosa del genere.

Qualche idea?
Per esempio 1152-768 fa proprio 384... ma non torna in altri casi... <-think->

Prima di andare a controllare il sorgente volevo sapere se altri si sono posti il problema o se hanno già trovato la soluzione.
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 WebArcadeDatabase


Avatar utente
Tox Nox Fox
Moderatore
Moderatore
Messaggi: 6988
Iscritto il: 14/01/2007, 23:35
Medaglie: 3
Reputation: 26
Been thanked: 1 time

Re: Risoluzione dello schermo nel Mame

Messaggio da Tox Nox Fox » 13/04/2018, 13:08

Hai capito qualcosa poi ?
Immagine
WP.ARCADEITALIA.NET


Avatar utente
motoschifo
Progetto Arcade Database
Progetto Arcade Database
Messaggi: 2699
Iscritto il: 12/07/2013, 20:29
Medaglie: 2
Reputation: 42
Città: Parma
Località: Parma
:
Gold Medal Donatore
Contatta:

Re: Risoluzione dello schermo nel Mame

Messaggio da motoschifo » 13/04/2018, 20:05

No non ci ho più pensato, ho lanciato la richiesta sul forum proprio perchè non avevo tempo di approfondire 8-)

Mi pare strano che dalla versione 0.124 la risoluzione sia triplicata per quel gioco e non ci sia stato una spiegazione precisa del perchè.
Magari mi spulcio anche i changelog e i sorgenti, probabilmente hanno inserito commenti lì dentro.
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 WebArcadeDatabase


Avatar utente
DigDug
Cab-maniaco
Cab-maniaco
Messaggi: 1031
Iscritto il: 23/07/2005, 19:24
Reputation: 4
Città: PoggioBerni

Re: Risoluzione dello schermo nel Mame

Messaggio da DigDug » 25/04/2018, 9:52

un altro che ricordo avere incongruenze di risoluzione è popeye...
CAB: "Classic" + Hantarex 25" VGA · Intel Core2Duo E6550 · 4Gb RAM · Geforce 8600GT · HD Seagate 500Gb · WindowsXP
MameWAH con Mame32 0.101 e 0.154 + WinUAE + WinVice + Stella + Daphne + PC Games + Sega Model 2


Avatar utente
motoschifo
Progetto Arcade Database
Progetto Arcade Database
Messaggi: 2699
Iscritto il: 12/07/2013, 20:29
Medaglie: 2
Reputation: 42
Città: Parma
Località: Parma
:
Gold Medal Donatore
Contatta:

Re: Risoluzione dello schermo nel Mame

Messaggio da motoschifo » 25/04/2018, 13:20

Se si trova la regola, o anche solo una lista con i valori corretti dei giochi che si conoscono, posso mettere in piedi qualcosa per tenere traccia della giusta risoluzione.
Per adesso non ho trovato ancora nulla di valido da applicare.
Motoschifo
CAB ›MameOriz ›MameVert ›PCB ›NeoGeo ›TopDrive ›Tekken3 Wishlist ›PacMan ›Arkanoid
Flipper ›HighSpeed Wishlist ›MedievalMadness ›MonsterBash ›HighSpeed2 WebArcadeDatabase


Rispondi

Torna a “Progetto Arcade Data Base”