

Purtroppo mi pare di capire che non ci sia un tutorial completo sull'argomento, quindi mi sono dovuto arrangiare leggendo un po' qui e un po' sul forum di Arcade Controls, ma ci sono alcune cose che mi sfuggono.
Intanto partiamo col dire che utilizzo Win Xp 32 bit. Ho scaricato una versione del Groovymame già compilata dal repository del progetto, esattamente la GroovyMAME 0.146u4 Windows 32bit, che mi par di capire dovrebbe essere la più recente per Win32. Ho installato i driver modificati di Calamity. Ho prima installato sul pc il mameui per farmi creare dal suo setup la struttura di cartelle corretta, poi ho cancellato il suo mame.ini e ne ho fatto generare uno nuovo da groovymame usando l'opzione -cc da riga di comando. Prima di lanciare il VMmaker ho configurato il suo ini, mettendo:
Codice: Seleziona tutto
ListFromXML = 1, GenerateXML = 1, GenerateInis = 1, SDLMame = 0
Poi mi sono dedicato alla configurazione del monitor. Il mio monitor è un Intervideo 28 pollici bi-frequenza. Ho scaricato il manuale in pdf, ma non ci sono scritti dei dati specifici sulle frequenze. Allora leggendo in giro che dovrebbe essere praticamente uguale all'Hantarex MTC 9110 e al Polostar 25 ho impostato questi valori:
Codice: Seleziona tutto
monitor_specs_0 = "15625-16670, 49.50-65.00, 2.000, 4.700, 8.000, 0.064, 0.160, 1.056, 0, 0, 288, 448"
Secondo voi dovrebbero essere ok?
A questo punto, guardando sempre il file Vmmaker.ini mi sono interrogato sull'opzione ModeTableMethod. Settandola su 0 dovrebbero venir generate delle modeline con risoluzione giusta per ogni gioco (solo quelli presenti o tutti?) e relativo refresh giusto. Settandola su 1 invece dovrebbe tenere conto solo della risoluzione, ignorando il refresh verticale. Ma quale sarebbe il vantaggio di questa seconda opzione? Poi come fa il Groovymame a far partire il gioco con la giusta vfreq?
Infine il discorso del mame.ini. Anche qui ho letto molto e ho visto che ognuno consigliava opzioni diverse. Io ho fatto diverse prove (il gioco di test era Euro League) e pare che sia riuscito ad ottenere una buona fluidità dello scrolling, l'audio syncato giusto e nessun problema sulla velocità di emulazione usando questi parametri:
Codice: Seleziona tutto
#
# CORE PERFORMANCE OPTIONS
#
autoframeskip 0
frameskip 0
seconds_to_run 0
throttle 1
syncrefresh 1
sleep 1
speed 1.0
refreshspeed 0
Queste le impostazioni sul monitor:
Codice: Seleziona tutto
#
# CORE SWITCHRES OPTIONS
#
modeline 1
monitor custom
monitor_connector auto
monitor_orientation horizontal
monitor_aspect 4:3
monitor_debug 0
monitor_doublescan 1
monitor_dotclock 0
monitor_ymin 0
soundsync 1
cleanstretch 1
changeres 1
redraw 0
monitor_specs0 15625-16670, 49.50-65.00, 2.000, 4.700, 8.000, 0.064, 0.160, 1.056, 0, 0, 288, 448
monitor_specs1 auto
monitor_specs2 auto
monitor_specs3 auto
monitor_specs4 auto
monitor_specs5 auto
monitor_specs6 auto
monitor_specs7 auto
magic_resolution auto
powerstrip 0
Codice: Seleziona tutto
#
# WINDOWS PERFORMANCE OPTIONS
#
priority 0
multithreading 1
numprocessors auto
profile 0
bench 0
#
# WINDOWS VIDEO OPTIONS
#
video ddraw
numscreens 1
window 0
maximize 1
keepaspect 0
prescale 1
waitvsync 1
menu 0
#
# DIRECTDRAW-SPECIFIC OPTIONS
#
hwstretch 0
#
# DIRECT3D-SPECIFIC OPTIONS
#
d3dversion 9
filter 0
#
# DIRECT3D POST-PROCESSING OPTIONS
#
hlsl_enable 0
hlslpath hlsl
hlsl_ini_read 0
hlsl_ini_write 0
hlslini %g
hlsl_prescale_x 0
hlsl_prescale_y 0
hlsl_preset -1
hlsl_write
hlsl_snap_width 2048
hlsl_snap_height 1536
shadow_mask_alpha 0.0
shadow_mask_texture aperture.png
shadow_mask_x_count 320
shadow_mask_y_count 240
shadow_mask_usize 0.09375
shadow_mask_vsize 0.109375
curvature 0.0
pincushion 0.0
scanline_alpha 0.0
scanline_size 1.0
scanline_height 0.7
scanline_bright_scale 1.0
scanline_bright_offset 0.0
scanline_jitter 0.0
defocus 0.0,0.0
converge_x 0.0,0.0,0.0
converge_y 0.0,0.0,0.0
radial_converge_x 0.0,0.0,0.0
radial_converge_y 0.0,0.0,0.0
red_ratio 1.0,0.0,0.0
grn_ratio 0.0,1.0,0.0
blu_ratio 0.0,0.0,1.0
saturation 1.0
offset 0.0,0.0,0.0
scale 1.0,1.0,1.0
power 1.0,1.0,1.0
floor 0.0,0.0,0.0
phosphor_life 0.0,0.0,0.0
yiq_enable 0
yiq_cc 3.59754545
yiq_a 0.5
yiq_b 0.5
yiq_o 0.0
yiq_p 1.0
yiq_n 1.0
yiq_y 6.0
yiq_i 1.2
yiq_q 0.6
yiq_scan_time 52.6
yiq_phase_count 2
#
# PER-WINDOW VIDEO OPTIONS
#
screen auto
aspect auto
resolution auto
view auto
screen0 auto
aspect0 auto
resolution0 auto
view0 auto
screen1 auto
aspect1 auto
resolution1 auto
view1 auto
screen2 auto
aspect2 auto
resolution2 auto
view2 auto
screen3 auto
aspect3 auto
resolution3 auto
view3 auto
#
# FULL SCREEN OPTIONS
#
triplebuffer 0
switchres 1
full_screen_brightness 1.0
full_screen_contrast 1.0
full_screen_gamma 1.0
#
# WINDOWS SOUND OPTIONS
#
audio_latency 2
#
# INPUT DEVICE OPTIONS
#
hide_cursor 1
dual_lightgun 0
Codice: Seleziona tutto
#
# CORE MKChamp OPTIONS
#
disable_hiscore_patch 0
disable_nagscreen_patch 0
disable_loading_patch 0
Cosa sbaglio?

Un'ultima cosa. Esistono vantaggi sostanziali ad usare Groovymame sotto Linux anzichè sotto Windows? Se volessi avere una versione più recente di Groovymame per Win32 me lo devo compilare da solo dai sorgenti? Come posso procedere?
Grazie 1000 a tutti per le eventuali risposte e scusate se sono stato un po' troppo prolisso

