Build Your Own Arcade Controls Forum
Software Support => GroovyMAME => Topic started by: tiobolinha on June 29, 2012, 02:09:46 pm
-
Hi,
After getting my a** kicked for many weeks I finally got my display working. I have a Dual core with an ATI X1550 and a Toshiba TV connected with component in my video board (7-pin adapter to component). Unfortunately no SCART in Brazil... shame.
As my TV supports both PAL-M (Brazilian standard) and NTSC I think I can take advantage of that and get more possibilities of cool resolutions for my games. I just discovered (newbie!) that groovy mame is good not only for arcade monitor but also for standard TVs so I'll use it!
I saw that there are preset specs to be used in Groovy mame for PAL (PAL-M?) or NTSC. How can I tell it to use both?
Please help. I'm finally getting somewhere with my Cabinet!
Regards!
Marcelo.
-
Hi tiobolinha,
Instead of trying unique standards, I would go for a continuous range, this way:
monitor_specs0 15625-15900, 49.50-61.00, 2.000, 4.700, 8.000, 0.064, 0.160, 1.056, 0, 0, 288, 400
Make sure to use the "CUSTOM" monitor type in vmmaker.ini in order to get this line used.
If you find it doesn't work right then you can always add two separated ranges, as if it was a multisync monitor:
monitor_specs0 15625-15625, 50-50, 1.650, 4.700, 5.000, 0.064, 0.192, 1.024, 0, 0, 312.5, 576
monitor_specs1 15734.26-15734.26, 58.95-59.95, 2.000, 4.700, 8.000, 0.064, 0.192, 1.024, 0, 0, 262.5, 480
I'm curious to see if all this works through the component output.
-
Thanks!!
I will start testing tonight with your driver (I got the catalyst original running right now), comment and submit pictures of my results as it goes. I'm very excited to see it running as well. Also I will check my TV to see if it's compatible with other variants of PAL (PAL, PAL-N, etc). I don't no if that will give us even more possibilities but it doesn't hurt to give it a try.
Congrats on the amazing job with the driver. I appreciate your comments very much!
Marcelo.
-
Hi Calamity.
I started testing last night and the driver went fine with no surprises. Really plug and play. It setted my TV to 640x480@30hz interlaced. I manually went to 60hz and above and it accepted fine.
Picture is good.
The vmaker found only a few resolutions... arround 15. I tried NTSC, PAL, both and the set you gave me in your post. It generated the same number of video modes 1 or 2 give or take,
The only real problem I found is that emulation has a few hickups in sound in ddraw mode. If I switch to d3d it runs perfectly.
I shouldn't have this as my system is an Athlon 64 dual core 3600+ (2ghz) with 4gig ram. OS is WinXP 32.
Follow my mame.ini and VMMaker.ini specs:
Mame.ini:
readconfig 1
writeconfig 0
#
# CORE SEARCH PATH OPTIONS
#
rompath roms
hashpath hash
samplepath samples
artpath artwork
ctrlrpath ctrlr
inipath .;ini
fontpath .
cheatpath cheat
crosshairpath crosshair
#
# CORE OUTPUT DIRECTORY OPTIONS
#
cfg_directory cfg
nvram_directory nvram
memcard_directory memcard
input_directory inp
state_directory sta
snapshot_directory snap
diff_directory diff
comment_directory comments
#
# CORE STATE/PLAYBACK OPTIONS
#
state
autosave 0
playback
record
mngwrite
aviwrite
wavwrite
snapname %g/%i
snapsize auto
snapview internal
burnin 0
#
# CORE PERFORMANCE OPTIONS
#
autoframeskip 0
frameskip 0
seconds_to_run 0
throttle 1
sleep 1
speed 1.0
refreshspeed 0
#
# CORE ROTATION OPTIONS
#
rotate 1
ror 0
rol 0
autoror 0
autorol 0
flipx 0
flipy 0
#
# CORE ARTWORK OPTIONS
#
artwork_crop 0
use_backdrops 1
use_overlays 1
use_bezels 1
use_cpanels 1
use_marquees 1
#
# CORE SCREEN OPTIONS
#
brightness 1.0
contrast 1.0
gamma 1.0
pause_brightness 0.65
effect none
#
# CORE VECTOR OPTIONS
#
antialias 1
beam 1.0
flicker 0
#
# CORE SOUND OPTIONS
#
sound 1
samplerate 48000
samples 1
volume 0
#
# CORE INPUT OPTIONS
#
coin_lockout 1
ctrlr
mouse 0
joystick 1
lightgun 0
multikeyboard 0
multimouse 0
steadykey 0
offscreen_reload 0
joystick_map auto
joystick_deadzone 0.3
joystick_saturation 0.85
natural 0
joystick_contradictory 0
coin_impulse 0
#
# CORE INPUT AUTOMATIC ENABLE OPTIONS
#
paddle_device keyboard
adstick_device keyboard
pedal_device keyboard
dial_device keyboard
trackball_device keyboard
lightgun_device keyboard
positional_device keyboard
mouse_device mouse
#
# CORE DEBUGGING OPTIONS
#
log 0
verbose 0
update_in_pause 0
debug 0
debugscript
debug_internal 0
#
# CORE MISC OPTIONS
#
bios
cheat 0
skip_gameinfo 0
uifont default
ramsize
confirm_quit 0
#
# WINDOWS DEBUGGING OPTIONS
#
oslog 0
watchdog 0
debugger_font "Lucida Console"
debugger_font_size 9
#
# WINDOWS PERFORMANCE OPTIONS
#
priority 0
multithreading 0
numprocessors auto
profile 0
bench 0
#
# WINDOWS VIDEO OPTIONS
#
video ddraw
numscreens 0
window 0
maximize 1
keepaspect 1
prescale 1
waitvsync 1
syncrefresh 1
menu 0
#
# DIRECTDRAW-SPECIFIC OPTIONS
#
hwstretch 0
#
# DIRECT3D-SPECIFIC OPTIONS
#
d3dversion 9
filter 1
#
# 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 640x434@60
view auto
screen0 auto
aspect0 4:3
resolution0 640x480
view0 auto
screen1 auto
aspect1 4:3
resolution1 640x480
view1 auto
screen2 auto
aspect2 4:3
resolution2 640x480
view2 auto
screen3 auto
aspect3 4:3
resolution3 640x480
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
VMMaker.ini:
Path for Mame executable, in case we want to extract xml information from it.
MameExe = "\Mame\groovymame32.exe"
; Path for Mame ini folder, in case we want to create an ini file for each game.
; Important: existing ini files will be overwritten.
IniPath = "\Mame\ini\"
; Mame options.
ListFromXML = 1 ; Processes Mame XML and get video mode list from it
GenerateXML = 1 ; Extracts XML from Mame (only needed once)
GenerateInis = 0 ; Creates an ini file for each Mame game, in the IniPath folder
SDLMame = 0 ; Use SDLMame specific options
; Monitor orientation
MonitorHorizontal = 1 ; 0 = Rotating monitor: horizontal and vertical games at their native resolution
; Suitable for users that physically rotate their CRTs
; 1 = Horizontal monitor: horizontal games run at their native resolution and
; vertical games are rotated to fit in horizontal monitor
RotatingDesktop = 0 ; Specifies if both desktop and monitor are rotated
; Aspect ratio for vertical games on horizontal monitor
; 4:3 (keeps original aspect ratio)
; 3:3 (stretches to square format)
; 3:4 (stretches to full screen)
; h:v (custom aspect ratio)
VerticalAspect = "4:3"
; 2. MONITOR
; ----------
; Monitor Type. Valid types: D9800, D9400, D9200, EGA, VGA, MULTI, H9110, PAL, NTSC, GENERIC, CUSTOM
MonitorType = "CUSTOM"
; Monitor CUSTOM. These values will be used if MonitorType = "CUSTOM"
;
; monitor_specs_0-6 = "HfreqMin-HfreqMax, VfreqMin,VfreqMax, HFrontPorch, HSyncPulse, HBackPorch, VfrontPorch, VSyncPulse, VBackPorch, HSyncPol, VSyncPol, ActiveLinesLimit, VirtualLinesLimit"
;
; * HfreqMin-HfreqMax: Minimum and maximum horizontal frequency, in Hz. Defines the range of horizontal frequencies the monitor is capable to sync.
; The higher the horizontal frequency, the higher the vertical resolution available for the same vertical refresh.
; The higher the horizontal frequency, the higher the vertical refresh available for the same vertical resolution.
; The higher the horizontal frequency, the lower the horizontal amplitude of active video (narrower picture).
;
; * VFreqMin-VfreqMax: Minimum and maximum vertical frequency, in Hz, Defines the range of vertical frequencies the monitor is capable to sync.
;
; * HFrontPorch, HSyncPulse, HBackPorch: Horizontal timing and geometry, values in µs
;
; * VfrontPorch, VSyncPulse, VBackPorch: Vertical timing and geometry, values in ms
;
; * HSyncPol,VSyncPol: polarities, not in use! defaults to negative.
;
; * ActiveLinesLimit: Vertical resolutions until ActiveLinesLimit value included, are generated as progressive, regardless the possibility
; of obtaining the required vertical refresh value.
;
; * VirtualLinesLimit: Vertical resolutions above ActiveLinesLimit and below VirtualLinesLimit are virtualized, that is, an interlaced resolution
; bigger that the native one is generated, with the right refresh, and "hardware stretch" is applied.
; Vertical resolutions above VirtulaLinesLimit are generated as interlaced, without any stretching.
monitor_specs_0 = "15734.26-15734.26, 58.95-59.95, 2.000, 4.700, 8.000, 0.064, 0.192, 1.024, 0, 0, 262.5, 480"
monitor_specs_1 = "15625-15625, 50-50, 1.650, 4.700, 5.000, 0.064, 0.192, 1.024, 0, 0, 312.5, 576"
; Tolerance for horizontal frequency, in kHz, enables extending the range defined by [ HfreqMin, HfreqMax ]
; The resulting allowed frequency range will be [ HfreqMin - HfreqTolerance, HfreqMax + HfreqTolerance ]
HfreqTolerance = 0.010
; 3. MODELINE GENERATOR
; ---------------------
; Total number of modelines to generate. Here are the recommended values for each driver version:
; CRT_Emudriver, based on Catalyst 6.5 XP32: 160 modes (accepts up to 200, but above 160 HyperSpin will refuse to load)
; CRT_Emudriver, based on Catalyst 6.5 XP64: 120 modes
; CRT_Emudriver, based on Catalyst 9.3 XP32/64: 120 modes (accepts some more but above 120 you can get some blue screens)
; Regular Catalyst: 60 modes (won't accept any more)
TotalModes = 120
; Method for mode table generation. If Mame xml is processed, that will create a lot of different video modes, so the mode table
; will be optimized keeping the most relevant ones, and dropping the rest, to keep below the TotalModes value.
ModeTableMethod = 1 ; 0 = Static table: modelines are generated keeping their original vertical refresh. This
; method is intended to be used in combination with ini files for each game.
; 1 = Dynamic table: a table of dummy modes is created using xres and yres values while ignoring
; vfreq. This method is intended to be used in combination with Switchres or Groovymame. No ini
; files are required using this method (you should disable the GenerateInis option).
; Minimum resolution values (these will be used instead of lower values)
XresMin = 184
YresMin = 192
; Minimum dotclock value allowed by the video card, in MHz (i.e. DotClockMin = 7.010)
DotClockMin = 0
; Number of iterations used by the mode generator [0,5]. The higher the number of iterations, the bigger the accuracy of the vertical
; refreshed obtained, normally at the cost of increasing the horizontal frequency strictly required.
Iterations = 0
; Specifies if the refresh label is multiplied by 10 before rounding (experimental).
VFreqLabelx10 = 0
; 4. DRIVER
; ---------
; Path for the driver folder
DriverPath = ".\Driver\"
; If UpdateRegistry is enabled, UpdateDriver will only work if the driver version found in DriverPath matches the one installed
; in the system.
UpdateRegistry = 1 ; Specifies if the video card registry section will be updated with the new video modes
; (will only work in combination with CRT_EMUDriver).
UpdateDriver = 0 ; Specifies if the driver files in DriverPath will be updated with the new video modes, for
; future installations.
AnyCatalyst = 0 ; Allows modelines to be installed for any Catalyst version. This option is experimental and
; known to produce some problems.
MANY MANY thANKs!!
-
Hi tiobolinha:
Before we go on, just two things:
- Download the latest version of VMMaker, otherwise it won't be able to process MAME 0.146 XML properly: http://aburamushi.net/calamity/VMMaker_1.3c_Arcade_OSD_1.3b.rar (http://aburamushi.net/calamity/VMMaker_1.3c_Arcade_OSD_1.3b.rar)
- Backup your current mame.ini and create a new one using GroovyMAME, otherwise you won't have access to its features. To do this, from command line type: groovymame.exe -cc
Then in mame.ini use the same monitor_specs you have in vmmaker.ini
-
WOW. Rookie mistake. LOL.
Will do and get back to you. As Groovymame pack comes only with the executable file I assume I'll just execute it instead of mame.exe in the mame folder and voila. I`ll generate the mame.ini file and see what happens.
Thanks.
Marcelo.
-
Hi tiobolinha:
Before we go on, just two things:
- Download the latest version of VMMaker, otherwise it won't be able to process MAME 0.146 XML properly: http://aburamushi.net/calamity/VMMaker_1.3c_Arcade_OSD_1.3b.rar (http://aburamushi.net/calamity/VMMaker_1.3c_Arcade_OSD_1.3b.rar)
- Backup your current mame.ini and create a new one using GroovyMAME, otherwise you won't have access to its features. To do this, from command line type: groovymame.exe -cc
Then in mame.ini use the same monitor_specs you have in vmmaker.ini
DONE and hoooohey!! 115 modes recorded from 450+ found taken the similar ones.
I found some under scan and blurriness in some games so I think it's time to start further testing. The TV is NTSC / PAL-N / PAL-M compatible but I think once windows started in NTSC it will remain that way so maybe I'll get better results working with NTSC or PAL-M alone.
The Ddraw hiccups in sound remain... any thoughts?
Many Thanks.
-
The Ddraw hiccups in sound remain... any thoughts?
That's odd. Please get a log of a game with sound hiccups, like this:
groovymame.exe romname -v -md 4 >romname.txt
-
Hi Calamity,
Sorry for the long time. I changed my system. I got an opportunity to purchase an used JAMMA arcade cabinet for $200 and bought it. The monitor is an arcade 29" and, although it's used, it's in good shape.
That said I'll just set your driver for "GENERIC" and run. Is that it? I'm not sure of the monitor's model but I'm pretty sure it's the most common 15 kHz SFII, KOF monitor. I don't believe it's gonna support 31 kHz and I'm afraid of testing and damaging it. Any tips?
Thank you and I'll report as soon as I get it running. I'm excited!
Regards.