Build Your Own Arcade Controls Forum
Main => Monitor/Video Forum => Topic started by: s8n187 on March 24, 2019, 10:11:26 pm
-
hi members , i have a small problem with _INI_Creator_v0.4 and GroovyMAME. On my bedroom PC and PC Monitor scanlines look great , on another computer my 'MAME PC' going to a VGA PC Monitor great again. Here's the problem when i output from the MAME PC to my Samsung LCD TV the scanlines are uneven , i'm hoping you guys can figure out what's up. Below is my ini from Simpsons , the problem also occurs in CPS3 and Neo Geo games. I'm not sure where the issue is coming from but if you need any more info let me know , i am going to catch some sleep i'll be up a bit later.
#
# CORE CONFIGURATION OPTIONS
#
readconfig 1
writeconfig 1
#
# CORE SEARCH PATH OPTIONS
#
homepath .
rompath "D:\MAME 0.206 ROMs (merged)"
hashpath hash
samplepath samples
artpath artwork
ctrlrpath ctrlr
inipath .;ini;ini/presets
fontpath .
cheatpath cheat
crosshairpath crosshair
pluginspath plugins
languagepath language
swpath software
#
# CORE OUTPUT DIRECTORY OPTIONS
#
cfg_directory cfg
nvram_directory nvram
input_directory inp
state_directory sta
snapshot_directory snap
diff_directory diff
comment_directory comments
#
# CORE STATE/PLAYBACK OPTIONS
#
state
autosave 0
rewind 0
rewind_capacity 100
playback
record
record_timecode 0
exit_after_playback 0
mngwrite
aviwrite
wavwrite
snapname %g/%i
snapsize auto
snapview internal
snapbilinear 1
statename %g
burnin 0
#
# CORE PERFORMANCE OPTIONS
#
autoframeskip 0
frameskip 0
seconds_to_run 0
throttle 1
syncrefresh 1
autosync 1
sleep 1
speed 1.0
refreshspeed 0
#
# CORE RENDER OPTIONS
#
keepaspect 1
unevenstretch 1
unevenstretchx 0
unevenstretchy 0
autostretchxy 0
intoverscan 0
intscalex 0
intscaley 0
#
# CORE ROTATION OPTIONS
#
rotate 1
ror 0
rol 0
autoror 1
autorol 0
flipx 0
flipy 0
#
# CORE ARTWORK OPTIONS
#
artwork_crop 1
use_backdrops 0
use_overlays 0
use_bezels 0
use_cpanels 0
use_marquees 0
fallback_artwork
override_artwork
#
# CORE SCREEN OPTIONS
#
brightness 0.82
contrast 1.18
gamma 1.0
pause_brightness 0.65
effect none
#
# CORE VECTOR OPTIONS
#
beam_width_min 1.0
beam_width_max 1.0
beam_intensity_weight 0
flicker 0
#
# CORE SOUND OPTIONS
#
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
ui_active 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
#
verbose 0
log 0
oslog 0
debug 0
update_in_pause 0
debugscript
#
# CORE COMM OPTIONS
#
comm_localhost 0.0.0.0
comm_localport 15112
comm_remotehost 127.0.0.1
comm_remoteport 15112
comm_framesync 0
#
# CORE MISC OPTIONS
#
drc 1
drc_use_c 0
drc_log_uml 0
drc_log_native 0
bios
cheat 0
skip_gameinfo 0
uifont default
ui cabinet
ramsize
confirm_quit 0
ui_mouse 1
language English
nvram_save 1
#
# SCRIPTING OPTIONS
#
autoboot_command
autoboot_delay 0
autoboot_script
console 0
plugins 1
plugin
noplugin
#
# HTTP SERVER OPTIONS
#
http 0
http_port 8080
http_root web
#
# CORE SWITCHRES OPTIONS
#
modeline_generation 1
monitor lcd
orientation horizontal
connector auto
interlace 1
doublescan 1
super_width 2560
changeres 1
powerstrip 0
lock_system_modes 1
lock_unsupported_modes 1
refresh_dont_care 0
dotclock_min 0
sync_refresh_tolerance 2.0
frame_delay 0
vsync_offset 0
black_frame_insertion 0
modeline auto
ps_timing auto
lcd_range auto
crt_range0 auto
crt_range1 auto
crt_range2 auto
crt_range3 auto
crt_range4 auto
crt_range5 auto
crt_range6 auto
crt_range7 auto
crt_range8 auto
crt_range9 auto
#
# OSD KEYBOARD MAPPING OPTIONS
#
uimodekey SCRLOCK
#
# OSD FONT OPTIONS
#
uifontprovider auto
#
# OSD OUTPUT OPTIONS
#
output auto
#
# OSD INPUT OPTIONS
#
keyboardprovider auto
mouseprovider auto
lightgunprovider auto
joystickprovider auto
#
# OSD DEBUGGING OPTIONS
#
debugger auto
debugger_font auto
debugger_font_size 0
watchdog 0
#
# OSD PERFORMANCE OPTIONS
#
numprocessors auto
bench 0
#
# OSD VIDEO OPTIONS
#
video auto
numscreens 1
window 0
maximize 1
waitvsync 1
monitorprovider auto
#
# OSD 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
#
# OSD FULL SCREEN OPTIONS
#
switchres 1
#
# OSD ACCELERATED VIDEO OPTIONS
#
filter 1
prescale 1
#
# OpenGL-SPECIFIC OPTIONS
#
gl_forcepow2texture 0
gl_notexturerect 0
gl_vbo 1
gl_pbo 1
gl_glsl 0
gl_glsl_filter 1
glsl_shader_mame0 none
glsl_shader_mame1 none
glsl_shader_mame2 none
glsl_shader_mame3 none
glsl_shader_mame4 none
glsl_shader_mame5 none
glsl_shader_mame6 none
glsl_shader_mame7 none
glsl_shader_mame8 none
glsl_shader_mame9 none
glsl_shader_screen0 none
glsl_shader_screen1 none
glsl_shader_screen2 none
glsl_shader_screen3 none
glsl_shader_screen4 none
glsl_shader_screen5 none
glsl_shader_screen6 none
glsl_shader_screen7 none
glsl_shader_screen8 none
glsl_shader_screen9 none
#
# OSD SOUND OPTIONS
#
sound auto
audio_latency 2.0
#
# PORTAUDIO OPTIONS
#
pa_api none
pa_device none
pa_latency 0
#
# BGFX POST-PROCESSING OPTIONS
#
bgfx_path bgfx
bgfx_backend auto
bgfx_debug 0
bgfx_screen_chains default
bgfx_shadow_mask slot-mask.png
bgfx_avi_name auto
#
# WINDOWS PERFORMANCE OPTIONS
#
priority 0
profile 0
#
# WINDOWS VIDEO OPTIONS
#
menu 0
#
# DIRECT3D POST-PROCESSING OPTIONS
#
hlslpath hlsl
hlsl_enable 1
hlsl_oversampling 1
hlsl_write auto
hlsl_snap_width 2048
hlsl_snap_height 1536
shadow_mask_tile_mode 0
shadow_mask_alpha 0.33
shadow_mask_texture aperture-grille.png
shadow_mask_x_count 16
shadow_mask_y_count 48
shadow_mask_usize 1
shadow_mask_vsize 1
shadow_mask_uoffset 0
shadow_mask_voffset 0
distortion 0
cubic_distortion 0
distort_corner 0
round_corner 0.02
smooth_border 0.02
reflection 0
vignetting 0.1
scanline_alpha 1
scanline_size 1.0
scanline_height 1.0
scanline_variation 1.0
scanline_bright_scale 1.4
scanline_bright_offset 0.4
scanline_jitter 0.0
hum_bar_alpha 0
defocus 0.7,0.0
converge_x -0.4,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
offset -0.02,-0.02,-0.02
scale 0.98,0.99,1.02
power 1.3,1.3,1.3
floor 0.0,0.0,0.0
phosphor_life 0.0,0.0,0.0
#
# NTSC POST-PROCESSING OPTIONS
#
yiq_enable 0
yiq_jitter 0.0
yiq_cc 3.57954545
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
#
# VECTOR POST-PROCESSING OPTIONS
#
vector_beam_smooth 0.0
vector_length_scale 0.5
vector_length_ratio 0.5
#
# BLOOM POST-PROCESSING OPTIONS
#
bloom_blend_mode 0
bloom_scale 0.05
bloom_overdrive 1.00,1.00,1.00
bloom_lvl0_weight 1.0
bloom_lvl1_weight 1
bloom_lvl2_weight 1
bloom_lvl3_weight 1
bloom_lvl4_weight 1
bloom_lvl5_weight 0
bloom_lvl6_weight 0
bloom_lvl7_weight 0
bloom_lvl8_weight 0
#
# FULL SCREEN OPTIONS
#
triplebuffer 0
full_screen_brightness 1.0
full_screen_contrast 1.0
full_screen_gamma 1.0
#
# INPUT DEVICE OPTIONS
#
global_inputs 0
dual_lightgun 0
#
# FRONTEND COMMAND OPTIONS
#
dtd 1
-
HLSL relies on scaling and is not very good at it if the vertical resolution is not quite high.
What are the resolutions of the different displays you mentioned ? if your TV is like 720p or 1080p it is likely not enough to 'hide' the expected unevenness.
(tho even on a 4K the issue applies, it will just be less obvious. it's simple math the panel has to be a multiple of the game's resolution for the distribution to be perfect, otherwise algorithms can only try to get it right with the pixel real estate they have)
Your best and probably only solution for the games that display that scanlines unevenness is to turn intoverscan on in their respective .INI's
You will lose a portion of the picture at the top and bottom, but it's not like you have much choice there.
PS: also turn filter off both in the mame.ini and the dedicated .ini's, this will also help and it should always be off when using shaders anyway (bc it's redundant to HLSL's own softening and actually adds a lot to it as well as influencing the scaling, which makes a muddy mess and increases the potential unevenness artifacts)
PSbis: you'll always get better results by figuring the HLSL settings that fit the games on the display you're using by yourself, there is no such thing as 'universal' HLSL settings that will just work on any display featuring any panel resolution, HLSL as most shaders is just not advanced-enough for that. That 'INI creator' is a strange thing if it claims it can do that.
-
thanks for replying schmerzkaufen , ok all 3 displays are running at 1080p. I did try 'intoverscan' in the simpsons ini and it looked a bit worse , 'filter' has been turned off as well as requested. I'm not using CRTemudriver as well i'm using an official AMD Display Driver if that is a clue and Windows 10 , i did notice one thing with the MAME PC VGA Monitor and Samsung LCD TV they are running at different refresh rates. Switchres says the below
MAME PC VGA Monitor
1920x1080p 60.000 hz 67.500 khz
Samsung LCD TV
1920x1080p 59.000 hz 0.000 khz
(https://imagizer.imageshack.com/img924/8991/IUiwEx.jpg)
-
HLSL relies on scaling and is not very good at it if the vertical resolution is not quite high.
What are the resolutions of the different displays you mentioned ? if your TV is like 720p or 1080p it is likely not enough to 'hide' the expected unevenness.
(tho even on a 4K the issue applies, it will just be less obvious. it's simple math the panel has to be a multiple of the game's resolution for the distribution to be perfect, otherwise algorithms can only try to get it right with the pixel real estate they have)
Your best and probably only solution for the games that display that scanlines unevenness is to turn intoverscan on in their respective .INI's
You will lose a portion of the picture at the top and bottom, but it's not like you have much choice there.
PS: also turn filter off both in the mame.ini and the dedicated .ini's, this will also help and it should always be off when using shaders anyway (bc it's redundant to HLSL's own softening and actually adds a lot to it as well as influencing the scaling, which makes a muddy mess and increases the potential unevenness artifacts)
PSbis: you'll always get better results by figuring the HLSL settings that fit the games on the display you're using by yourself, there is no such thing as 'universal' HLSL settings that will just work on any display featuring any panel resolution, HLSL as most shaders is just not advanced-enough for that. That 'INI creator' is a strange thing if it claims it can do that.
Not true, for me I’ve never had this issue with premade HLSL settings. Bigbluefrontends HLSL setting I use. Every single game I’ve thrown at it I’ve never had uneven scanlines. We’re talking 100’s of titles I’ve booted to configure.
Since then I’ve switched you Nueda’s ini creator, and again I have all his preconfigured HLSL settings for different games emulating many different monitors. I run them on a 1920x1200 screen. Never had uneven scanlines. He even says that ini creator is built towards 1080p users so everything should just work out of the box.
He must have a setting off that’s setting Nueda’s premade ini files off. Maybe try enabling HLSL oversampling.
-
i just checked and hlsl_oversampling is set to 1 , i even tried turning it off but no dice
update.........i just copied the groovymame folder to my bedroom PC and ouput the video to my Sony 900E , interestingly same problem although on my bedroom PC monitor it's just fine.
below is how i build the ini's
(https://imagizer.imageshack.com/img924/2555/oeqKuI.jpg)
(https://imagizer.imageshack.com/img921/9099/gtfya3.jpg)
(https://imagizer.imageshack.com/img923/2492/BweLQu.jpg)
(https://imagizer.imageshack.com/img922/7401/TUAtT4.jpg)
-
Forgot to tell you; turn unevenstretch off before activating intoverscan.
Also this might not work directly from the mame.ini anyway, usually these settings are made at the superior level of priority.
Check the INI folder;
In that ini folder you have all the specific ini's that have been created by the program, and there may be - or not - ini's other than games or systems dedicated, with a different priority called horizont.ini and vertical.ini
I they are present open them and you should find filter 0 in both (or create them and write filter 0)
If they are not present or if even that doesn't work, next you should check the specific ini's, in this case it'll be either a particular game rom name's ini, or the corresponding driver's ini (in this case should be simpsons.ini)
In it you may or may not find filter (wich will be set either to 1 or 0), and it is also in there that it is preferable to set unevenstretch and intoverscan to your desired settings.
Always remember there is a priority order which is (very shortened and simplified for the sake of illustration);
game.ini or system.ini > horizont.ini & vertical.ini > mame.ini
Whatever you'll set in simpsons.ini will have priority.
Sorry not to be more specific about the present case of INI Creator, I don't remember exactly which types of ini's it creates, nor what's inside each, the one time i've tried (on my pc monitor and then laptop) it it was a disaster, everything was wrong on both displays.
Not true, for me I’ve never had this issue with premade HLSL settings. Bigbluefrontends HLSL setting I use. Every single game I’ve thrown at it I’ve never had uneven scanlines. We’re talking 100’s of titles I’ve booted to configure.
Since then I’ve switched you Nueda’s ini creator, and again I have all his preconfigured HLSL settings for different games emulating many different monitors. I run them on a 1920x1200 screen. Never had uneven scanlines. He even says that ini creator is built towards 1080p users so everything should just work out of the box.
He must have a setting off that’s setting Nueda’s premade ini files off. Maybe try enabling HLSL oversampling.
Good for you but allow me to doubt, i've seen what people are satisfied with when it comes to CRT shaders and my reaction has almost always been "really?" as for me i could see issues others apparently wouldn't (i'm very ocd/picky for that)
Over 1200p you will already experience much, MUCH less occurences of annoying uneven scanlines (224p and 240p both fit which is a considerable advantage), and seeing how heavily smoothed the settings are (if filter not off) and if the scanlines density is not strong then it is common that the unevenness artifacts that will happen in less favourable cases will be hidden efficiently-enough and hardly noticeable.
However they are still here in cases the resolution's still too short to fit a good multiple, no matter what, and the lower the vertical resolution the more obvious the issues become, so you have to increase the blur and make the lines fainter to hide them.
I don't fancy the too-soft blurry CRT type so I'm always after rather sharp, clear and clean CRT look, and from all the time I've spent with HLSL, I've found that it is impossible to achieve over a 1080p panel and avoid uneven lines artifacts in many cases, or you have to use integer scaling period.
When i was still using RetroArch i've experienced a couple shaders that were much better than HLSL at keeping the lines even, don't remember which ones though.
I don't trust premade ini's for HLSL because I think I know its limits, and i'm generally quite demanding on the results, for me different display resolutions = different HLSL settings, and I usually work by system or source, which means I have on average like 15~20 specific ini's.
EDIT: problems posting yesterday, sending got stuck for some reason.
-
Sony 900E
This is a 4K display, you better make sure your PC is outputing 4K and MAME as well, otherwise it's unevitable that the TV will apply its own scaling on top of the output and therefore mess up everything.
(also it has to be in game mode w/ every possible post-processing option turned off. and NO overscan, Sony sets have several zoom settings iirc)