Build Your Own Arcade Controls Forum
Software Support => GroovyMAME => Topic started by: jvlk on July 03, 2012, 01:41:24 pm
-
I'm running Groovymame on a Nanao ms2931 and instead of ddraw I run d3d, but was wondering what the best ini settings are if you run d3d.
Should i go for cleanstretch on or off?
Better to go vsync or tripplebuffer?
Currently mame ini looks like this.
# CORE SWITCHRES OPTIONS
#
modeline 1
monitor cga
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 15450.00-16050.00, 55-65, 3.19, 4.75, 6.45, 0.191, 0.191, 1.164, 0, 0, 288, 448
monitor_specs1 23900.00-24900.00, 55-65, 2.87, 3.0, 4.44, 0.451, 0.164, 1.148, 0, 0, 480, 768
monitor_specs2 31000.00-32000.00, 55-65, 0.33, 3.58, 1.75, 0.316, 0.063, 1.137, 0, 0, 576, 768
monitor_specs3 auto
monitor_specs4 auto
monitor_specs5 auto
monitor_specs6 auto
monitor_specs7 auto
magic_resolution auto
powerstrip 0
#
# WINDOWS DEBUGGING OPTIONS
#
oslog 0
watchdog 0
debugger_font "Lucida Console"
debugger_font_size 9
#
# WINDOWS PERFORMANCE OPTIONS
#
priority 0
multithreading 1
numprocessors auto
profile 0
bench 0
#
# WINDOWS VIDEO OPTIONS
#
video d3d
numscreens 1
window 0
maximize 1
keepaspect 0
prescale 1
waitvsync 1
syncrefresh 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
-
GroovyMAME deals with -cleanstretch internally, it only uses it when necessary so I would leave it disabled.
On the other hand I'd leave syncrefresh enabled, as it's by default.
Only use -triplebuffer when your refresh can't reach the required one because of your monitor limitations (vertical games above 256 lines, etc.), in case you dislike the slowed emulation.
-
Subject is very old but I would like to discuss it again.
I have problems with this option. No matter how I set it (0,1,2) I've get always games stretched to full screen using floating point scale instead of integer scale. Right now I've disabled modeline to play at work on standard LCD monitor with native 1440x900@60 and what really need at work is only integer scale and syncrefresh.
Is this option only works with modeline option enabled ?
-
If you're using an LCD, just leave the defaut settings for -modeline_generation & -modeline options (no need to disable those). In mame.ini, edit:
monitor lcd
aspect 16:10
That will probably be enough.
-
Here is what I've changed from default (testing at my home right now with Win7x64 and GTX770, res 1920x1080@60):
syncrefresh 1
autoror 1
monitor lcd
aspect 16:10
now
autoror from mame.ini does not work now though works if I set it through command line (the same situation is in my arcade PC connected to CRT TV). When this option is invoked through command line game is rotated but cleanstretch is ignored and again game fill entire screen. Right now I don't have LCD with pivot at work but will be very handy when I get new monitor.
game in horizontal position does not fill whole screen as expected but there are still some tearing/stretching artefacts with d3d. Only on ddraw everything is ok so I'll switch at work to ddraw with syncrefresh.
-
Switchres (GM's patch) manages rotation options internally. So anything you put in mame.ini will be overridden. The priority of Switchres option auto-setting is just above mame.ini but below specific game's inis and command line. That's how you can force those options through command line.
If you set your rotation options bypassing GM it will fail to assign the proper scaling settings, etc. You must tell GM about your monitor's orientation, and leave those options alone. If you're using a rotating monitor set:
orientation rotate_r
(or rotate_l)
Ddraw and D3D behaviour must be consistent for the most part (at least it is with ATI cards).
-
Thanks for help Calamity. This option indeed helps to set up auto rotate.
Today I've finally set up 2 monitor configuration where first one is for horizontal game (monitor type horizontal in mame.ini) and second is vertical (monitor type vertical in vertical.ini). Switching monitors works well but somehow cleanstretch does not work on second monitor. For example running Omega Fighter should give me large black bars on left and right side but groovymame fills entire area. Naturally this produces really nasty effect. When I force this game to run on first monitor everything is fine.
From to do list I read "Add support for modelines on secondary device (Windows)"
But what I can see switchres also works on second monitor. Any advise?
EDIT. I see that switchres actually does not work correctly with second monitor. Good example is Shienryu where game should internally change resolution couple of times so that's probably will be until "Add support for modelines on secondary device (Windows)" is done.