Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Getting the right refresh rate on multisync LCD screen  (Read 7792 times)

0 Members and 1 Guest are viewing this topic.

eldiau

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 39
  • Last login:June 12, 2023, 06:01:40 pm
Getting the right refresh rate on multisync LCD screen
« on: April 04, 2014, 04:38:57 pm »
Hi all,
I have a Samsung Syncmaster 214T LCD monitor that supports a vertical refresh range from 56 to 75 Hz, I'm trying to use this monitor with linux and groovymame 0152ex1 .015 to get the right refresh to play games at the right speed.

To my understanding I should use "monitor lcd" and "lcd_range 56.00-75.00" options but I can't get groovymame to switch refresh rate.

I launch groovymame with this command line:
Code: [Select]
rm -f .groovymame/cfg/*; ./bin/groovymame64_0152ex1.015 -inipath .groovymame -verbose rtype
with this mame.ini:
Code: [Select]
Parsing mame.ini
Parsing mame.ini
Parsing mame.ini
Parsing mame.ini
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'dac' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'dac' not found
Optional device 'mcu' not found
Optional device 'dac' not found
Optional device 'mcu' not found
Optional device 'dac' not found
Optional device 'mcu' not found
Optional device 'dac' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
SwitchRes: LCD vfreq range set by user as 56.000000-75.000000
SwitchRes: Monitor: lcd Orientation: horizontal Modeline generation: enabled
SwitchRes: Found output connector 'VGA1'
SwitchRes: Creating automatic specs for LCD based on VESA GTF
SwitchRes: Monitor range 69552.00-93150.00,56.00-75.00,0.696,1.044,1.740,0.013,0.040,0.510,0,1,1200,1200,0,0
SwitchRes: -resolution was set at command line or in .ini file as 1600x1200@60
SwitchRes: Setting option -nochangeres

SwitchRes: Entering switchres_modeline_setup
SwitchRes: v0.015:[rtype] Calculating best video mode for 384x256@55.017605 orientation: normal

SwitchRes: [1600]x[1200]_(60=0.0000Hz)
   rng(0): 1600 x1200_56.000p 69.552 [fract] scale(4, 4, 1) diff(0.00, 14.17, 0.9824) ratio(4.167, 4.688)

SwitchRes: [rtype] (1) horizontal (384x256@55.02)->(1600x1200@56.00)
   rng(0): 1600 x1200_56.000p 69.552 [fract] scale(4, 4, 1) diff(0.00, 14.17, 0.9824) ratio(4.167, 4.688)
SwitchRes: Modeline "1600x1200_60 69.55KHz 56.00Hz" 146.89 1600 1704 1856 2112 1200 1202 1205 1242   -hsync +vsync
SwitchRes: Running 'xrandr  --newmode "1600x1200_56.00" 146.89 1600 1704 1856 2112 1200 1202 1205 1242   -hsync +vsync'
SwitchRes: Running 'xrandr  --addmode VGA1 "1600x1200_56.00"'
SwitchRes: Setting option -rotate
SwitchRes: Setting option -noror
SwitchRes: Setting option -autoror
SwitchRes: Setting option -norol
SwitchRes: Setting option -noautorol
SwitchRes: Setting option -noblack_frame_insertion
SwitchRes: Setting option -multithreading
SwitchRes: Setting option -syncrefresh
SwitchRes: Setting option -waitvsync
SwitchRes: Setting option -keepaspect
SwitchRes: Setting option -unevenstretch
SwitchRes: Setting option -filter
SwitchRes: Setting option -prescale 4
Invalid prescale option, reverting to '1'
Build version:      0.152ex1 (Jan 15 2014)
Build architecure:  SDLMAME_ARCH=
Build defines 1:    SDLMAME_UNIX=1 SDLMAME_X11=1 SDLMAME_LINUX=1
Build defines 1:    LSB_FIRST=1 PTR64=1 DISTRO=generic SYNC_IMPLEMENTATION=tc
SDL/OpenGL defines: SDL_COMPILEDVERSION=1215 USE_OPENGL=1 USE_DISPATCH_GL=1
Compiler defines A: __GNUC__=4 __GNUC_MINOR__=8 __GNUC_PATCHLEVEL__=2 __VERSION__="4.8.2 20131219 (prerelease)"
Compiler defines B: __amd64__=1 __x86_64__=1 __unix__=1
Compiler defines C: __USE_FORTIFY_LEVEL=0
Invalid prescale option, reverting to '1'
SDL Device Driver     : x11
SDL Monitor Dimensions: 1600 x 1200
Enter sdlwindow_init
Using SDL single-window OpenGL driver (SDL 1.2)
Leave sdlwindow_init
Loaded opengl shared library: <default>
OpenGL: Intel Open Source Technology Center
OpenGL: Mesa DRI Intel(R) Q45/Q43
OpenGL: 2.1 Mesa 10.1.0
OpenGL: texture rectangle supported
OpenGL: non-power-of-2 textures supported (new method)
OpenGL: vertex buffer supported
OpenGL: pixel buffers supported
OpenGL: framebuffer object supported
OpenGL: GLSL supported, but disabled
OpenGL: max texture size 8192 x 8192
Keyboard: Start initialization
Input: Adding Kbd #0: System keyboard
Keyboard: Registered System keyboard
Keyboard: End initialization
Mouse: Start initialization
Input: Adding Mouse #0: System mouse
Mouse: Registered System mouse
Mouse: End initialization
Joystick: Start initialization
Joystick: End initialization
Audio: Start initialization
Audio: Driver is pulse
Audio: frequency: 48000, channels: 2, samples: 256
sdl_create_buffers: creating stream buffer of 76800 bytes
Audio: End initialization
output: unable to open output notifier file /tmp/sdlmame_out
Region ':maincpu' created
Region ':gfx1' created
Region ':gfx2' created
Region ':gfx3' created
Searching font Liberation Sans in -fontpath
Matching font: /usr/share/fonts/truetype/liberation/LiberationSans-Regular.ttf
Starting R-Type (World) ':'
Optional device 'dac' not found
Optional device 'mcu' not found
Optional shared pointer 'spriteram2' not found
Optional shared pointer 'majtitle_rowscr' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
  (missing dependencies; rescheduling)
Starting V30 ':maincpu'
Starting Z80 ':soundcpu'
Starting Video Screen ':screen'
Starting Speaker ':lspeaker'
  (missing dependencies; rescheduling)
Starting Speaker ':rspeaker'
  (missing dependencies; rescheduling)
Starting M72 Custom ':m72'
Starting YM2151 ':ymsnd'
Starting R-Type (World) ':'
Optional device 'dac' not found
Optional device 'mcu' not found
Optional shared pointer 'spriteram2' not found
Optional shared pointer 'majtitle_rowscr' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
  (missing dependencies; rescheduling)
Starting Speaker ':lspeaker'
Starting Speaker ':rspeaker'
Starting R-Type (World) ':'
Optional device 'dac' not found
Optional device 'mcu' not found
Optional shared pointer 'spriteram2' not found
Optional shared pointer 'majtitle_rowscr' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
OpenGL: VBO supported
OpenGL: PBO supported
OpenGL: FBO supported
OpenGL: using vid filter: 1
GL texture: copy 1, shader 0, dynamic 1, 384x256 384x256 [PALETTE16, Equal: 0, Palette: 1,
            scale 1x1, border 0, pitch 512,384/8192], colors: 512, bytes/pix 4
GL texture: copy 1, shader 0, dynamic 1, 384x256 384x256 [PALETTE16, Equal: 0, Palette: 1,
            scale 1x1, border 0, pitch 512,384/8192], colors: 512, bytes/pix 4
Average speed: 109.06% (7 seconds)
sdl_kill: closing audio
Joystick: Start deinitialization
Joystick: End deinitialization
Enter sdlwindow_exit
Leave sdlwindow_exit
SwitchRes: Restoring desktop resolution: 1600x1200
SwitchRes: Running 'xrandr --output VGA1 --mode 1600x1200'
SwitchRes: Running 'xrandr  --delmode VGA1 "1600x1200_56.00"'
SwitchRes: Running 'xrandr  --rmmode "1600x1200_56.00"'

and I get this output:
Code: [Select]
#
# CORE CONFIGURATION OPTIONS
#
readconfig                1
writeconfig               0

#
# CORE SEARCH PATH OPTIONS
#
rompath                   $HOME/emulators/mame/roms
hashpath                  /usr/share/games/mame/hash
samplepath                $HOME/emulators/mame/samples
artpath                   $HOME/emulators/mame/artwork;$HOME/.mame/artwork
ctrlrpath                 $HOME/.mame/ctrlr
inipath                   $HOME/.groovymame
fontpath                  /tmp
cheatpath                 $HOME/.mame/cheat
crosshairpath             $HOME/.mame/crosshair;/usr/local/share/games/mame/crosshair

#
# CORE OUTPUT DIRECTORY OPTIONS
#
cfg_directory             $HOME/.groovymame/cfg
nvram_directory           $HOME/.groovymame/nvram
memcard_directory         $HOME/.groovymame/memcard
input_directory           $HOME/.groovymame/inp
state_directory           $HOME/.groovymame/sta
snapshot_directory        $HOME/.groovymame/snap
diff_directory            $HOME/.groovymame/diff
comment_directory         $HOME/.groovymame/comments

#
# CORE OUTPUT DIRECTORY OPTIONS
#
hiscore_directory         $HOME/.groovymame/hi

#
# CORE STATE/PLAYBACK OPTIONS
#
state                     
autosave                  0
playback                 
record                   
mngwrite                 
aviwrite                 
wavwrite                 
snapname                  %g/%i
snapsize                  auto
snapview                  internal
statename                 %g
burnin                    0

#
# CORE PERFORMANCE OPTIONS
#
autoframeskip             0
frameskip                 0
seconds_to_run            0
throttle                  1
syncrefresh               0
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              1
use_backdrops             0
use_overlays              0
use_bezels                0
use_cpanels               0
use_marquees              0

#
# CORE SCREEN OPTIONS
#
brightness                1.0
contrast                  1.0
gamma                     1.0
pause_brightness          0.65
#effect                    none
effect                    aperturescan1280.png

#
# 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
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
#
log                       0
verbose                   0
update_in_pause           0
debug                     0
debugscript               
debug_internal            0

#
# CORE MISC OPTIONS
#
drc                       1
drc_use_c                 0
bios                     
cheat                     0
skip_gameinfo             1
uifont                    default
ramsize                   
confirm_quit              0
ui_mouse                  0
autoboot_command         
autoboot_delay            2
autoboot_script           
http                      0
http_port                 8080
http_path                 web

#
# CORE MKChamp OPTIONS
#
disable_hiscore_patch     1
disable_nagscreen_patch   0
disable_loading_patch     0

#
# CORE SWITCHRES OPTIONS
#
modeline_generation       1
monitor                   lcd
#monitor                   custom
orientation               horizontal
connector                 auto
interlace                 1
doublescan                1
cleanstretch              0
changeres                 1
powerstrip                0
lock_system_modes         0
lock_unsupported_modes    1
refresh_dont_care         1
dotclock_min              0
sync_refresh_tolerance    2.0
frame_delay               0
black_frame_insertion     0
modeline                  auto
ps_timing                 auto
# Samsung:
lcd_range                 56.00-75.00
crt_range0                30000.00-81000.00,56.00-75.00,0.696,1.044,1.740,0.013,0.040,0.510,0,1,200,1200,0,0
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

#
# DEBUGGING OPTIONS
#
oslog                     0
watchdog                  0

#
# PERFORMANCE OPTIONS
#
multithreading            1
numprocessors             auto
sdlvideofps               0
bench                     0

#
# VIDEO OPTIONS
#
video                     opengl
numscreens                1
window                    0
maximize                  1
keepaspect                0
unevenstretch             0
centerh                   1
centerv                   1
waitvsync                 1
scalemode                 none

#
# OpenGL-SPECIFIC OPTIONS
#
filter                    0
prescale                  1
gl_forcepow2texture       0
gl_notexturerect          0
gl_vbo                    1
gl_pbo                    1
gl_glsl                   0
#gl_glsl                   1
gl_glsl_filter            1
glsl_shader_mame0         none
glsl_shader_mame1         none
#glsl_shader_mame0         /home/arcade/.mame/CRT/shader/glsl_plain
#glsl_shader_mame1         /home/arcade/.mame/CRT/CRT-geom
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
gl_glsl_vid_attr          1

#
# 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
#
switchres                 1
useallheads               0

#
# SOUND OPTIONS
#
audio_latency             2

#
# SDL KEYBOARD MAPPING
#
keymap                    0
keymap_file               keymap.dat
uimodekey                 SCRLOCK

#
# SDL JOYSTICK MAPPING
#
joy_idx1                  auto
joy_idx2                  auto
joy_idx3                  auto
joy_idx4                  auto
joy_idx5                  auto
joy_idx6                  auto
joy_idx7                  auto
joy_idx8                  auto
sixaxis                   0

#
# SDL LOWLEVEL DRIVER OPTIONS
#
videodriver               auto
audiodriver               auto
gl_lib                    auto

I am sure my graphic card supports the requested resolution and I can set it on the desktop using:
Code: [Select]
emu@arcade:~$ xrandr  --newmode "1600x1200_56.00" 146.89 1600 1704 1856 2112 1200 1202 1205 1242   -hsync +vsync
emu@arcade:~$ xrandr  --addmode VGA1 "1600x1200_56.00"
emu@arcade:~$ xrandr --output VGA1 --mode "1600x1200_56.00"


Any suggestions?

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7414
  • Last login:April 10, 2024, 02:02:31 pm
  • Quote me with care
Re: Getting the right refresh rate on multisync LCD screen
« Reply #1 on: April 06, 2014, 05:54:26 am »
Hi eldiau,

Your setup looks right. However the question is what video card you're using. In my experience, and in the Linux context, an ATI card would output our custom modeline/refresh regardless what the monitor EDID dictates. Intel cards on the other hand seem to ignore custom refresh rates for LCD screens.
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

eldiau

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 39
  • Last login:June 12, 2023, 06:01:40 pm
Re: Getting the right refresh rate on multisync LCD screen
« Reply #2 on: April 06, 2014, 11:59:08 am »
Hi Calamity,
thanks for you answer

And an Intel card I have!
You probably nailed the problem... I'll try with an ATI card and report back...

eldiau

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 39
  • Last login:June 12, 2023, 06:01:40 pm
Re: Getting the right refresh rate on multisync LCD screen
« Reply #3 on: April 06, 2014, 01:47:57 pm »
No luck  :banghead:
With a PCI-E ATI Radeon HD5450 I get the exact same problem (no sync switching) and exact same log:
Code: [Select]
Parsing mame.ini
Parsing mame.ini
Parsing mame.ini
Parsing mame.ini
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'dac' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'dac' not found
Optional device 'mcu' not found
Optional device 'dac' not found
Optional device 'mcu' not found
Optional device 'dac' not found
Optional device 'mcu' not found
Optional device 'dac' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
Optional device 'mcu' not found
SwitchRes: LCD vfreq range set by user as 56.000000-75.000000
SwitchRes: Monitor: lcd Orientation: horizontal Modeline generation: enabled
SwitchRes: Found output connector 'VGA-0'
SwitchRes: Creating automatic specs for LCD based on VESA GTF
SwitchRes: Monitor range 69552.00-93150.00,56.00-75.00,0.696,1.044,1.740,0.013,0.040,0.510,0,1,1200,1200,0,0
SwitchRes: -resolution was set at command line or in .ini file as 1600x1200@60
SwitchRes: Setting option -nochangeres

SwitchRes: Entering switchres_modeline_setup
SwitchRes: v0.015:[rtype] Calculating best video mode for 384x256@55.017605 orientation: normal

SwitchRes: [1600]x[1200]_(60=0.0000Hz)
   rng(0): 1600 x1200_56.000p 69.552 [fract] scale(4, 4, 1) diff(0.00, 14.17, 0.9824) ratio(4.167, 4.688)

SwitchRes: [rtype] (1) horizontal (384x256@55.02)->(1600x1200@56.00)
   rng(0): 1600 x1200_56.000p 69.552 [fract] scale(4, 4, 1) diff(0.00, 14.17, 0.9824) ratio(4.167, 4.688)
SwitchRes: Modeline "1600x1200_60 69.55KHz 56.00Hz" 146.89 1600 1704 1856 2112 1200 1202 1205 1242   -hsync +vsync
SwitchRes: Running 'xrandr  --newmode "1600x1200_56.00" 146.89 1600 1704 1856 2112 1200 1202 1205 1242   -hsync +vsync'
SwitchRes: Running 'xrandr  --addmode VGA-0 "1600x1200_56.00"'
SwitchRes: Setting option -rotate
SwitchRes: Setting option -noror
SwitchRes: Setting option -autoror
SwitchRes: Setting option -norol
SwitchRes: Setting option -noautorol
SwitchRes: Setting option -noblack_frame_insertion
SwitchRes: Setting option -multithreading
SwitchRes: Setting option -syncrefresh
SwitchRes: Setting option -waitvsync
SwitchRes: Setting option -keepaspect
SwitchRes: Setting option -unevenstretch
SwitchRes: Setting option -filter
SwitchRes: Setting option -prescale 4
Invalid prescale option, reverting to '1'
Build version:      0.152ex1 (Jan 15 2014)
Build architecure:  SDLMAME_ARCH=
Build defines 1:    SDLMAME_UNIX=1 SDLMAME_X11=1 SDLMAME_LINUX=1
Build defines 1:    LSB_FIRST=1 PTR64=1 DISTRO=generic SYNC_IMPLEMENTATION=tc
SDL/OpenGL defines: SDL_COMPILEDVERSION=1215 USE_OPENGL=1 USE_DISPATCH_GL=1
Compiler defines A: __GNUC__=4 __GNUC_MINOR__=8 __GNUC_PATCHLEVEL__=2 __VERSION__="4.8.2 20131219 (prerelease)"
Compiler defines B: __amd64__=1 __x86_64__=1 __unix__=1
Compiler defines C: __USE_FORTIFY_LEVEL=0
Invalid prescale option, reverting to '1'
SDL Device Driver     : x11
SDL Monitor Dimensions: 1600 x 1200
Enter sdlwindow_init
Using SDL single-window OpenGL driver (SDL 1.2)
Leave sdlwindow_init
Loaded opengl shared library: <default>
OpenGL: X.Org
OpenGL: Gallium 0.4 on AMD CEDAR
OpenGL: 3.0 Mesa 10.1.0
OpenGL: texture rectangle supported
OpenGL: non-power-of-2 textures supported (new method)
OpenGL: vertex buffer supported
OpenGL: pixel buffers supported
OpenGL: framebuffer object supported
OpenGL: GLSL supported, but disabled
OpenGL: max texture size 16384 x 16384
Keyboard: Start initialization
Input: Adding Kbd #0: System keyboard
Keyboard: Registered System keyboard
Keyboard: End initialization
Mouse: Start initialization
Input: Adding Mouse #0: System mouse
Mouse: Registered System mouse
Mouse: End initialization
Joystick: Start initialization
Joystick: End initialization
Audio: Start initialization
Audio: Driver is pulse
Audio: frequency: 48000, channels: 2, samples: 256
sdl_create_buffers: creating stream buffer of 76800 bytes
Audio: End initialization
output: unable to open output notifier file /tmp/sdlmame_out
Region ':maincpu' created
Region ':gfx1' created
Region ':gfx2' created
Region ':gfx3' created
Searching font Liberation Sans in -fontpath
Matching font: /usr/share/fonts/truetype/liberation/LiberationSans-Regular.ttf
Starting R-Type (World) ':'
Optional device 'dac' not found
Optional device 'mcu' not found
Optional shared pointer 'spriteram2' not found
Optional shared pointer 'majtitle_rowscr' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
  (missing dependencies; rescheduling)
Starting V30 ':maincpu'
Starting Z80 ':soundcpu'
Starting Video Screen ':screen'
Starting Speaker ':lspeaker'
  (missing dependencies; rescheduling)
Starting Speaker ':rspeaker'
  (missing dependencies; rescheduling)
Starting M72 Custom ':m72'
Starting YM2151 ':ymsnd'
Starting R-Type (World) ':'
Optional device 'dac' not found
Optional device 'mcu' not found
Optional shared pointer 'spriteram2' not found
Optional shared pointer 'majtitle_rowscr' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
  (missing dependencies; rescheduling)
Starting Speaker ':lspeaker'
Starting Speaker ':rspeaker'
Starting R-Type (World) ':'
Optional device 'dac' not found
Optional device 'mcu' not found
Optional shared pointer 'spriteram2' not found
Optional shared pointer 'majtitle_rowscr' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
OpenGL: VBO supported
OpenGL: PBO supported
OpenGL: FBO supported
OpenGL: using vid filter: 1
GL texture: copy 1, shader 0, dynamic 1, 384x256 384x256 [PALETTE16, Equal: 0, Palette: 1,
            scale 1x1, border 0, pitch 512,384/16384], colors: 512, bytes/pix 4
GL texture: copy 1, shader 0, dynamic 1, 384x256 384x256 [PALETTE16, Equal: 0, Palette: 1,
            scale 1x1, border 0, pitch 512,384/16384], colors: 512, bytes/pix 4
Average speed: 109.12% (12 seconds)
sdl_kill: closing audio
Sound buffer: overflows=1 underflows=0
Joystick: Start deinitialization
Joystick: End deinitialization
Enter sdlwindow_exit
Leave sdlwindow_exit
SwitchRes: Restoring desktop resolution: 1600x1200
SwitchRes: Running 'xrandr --output VGA-0 --mode 1600x1200'
SwitchRes: Running 'xrandr  --delmode VGA-0 "1600x1200_56.00"'
SwitchRes: Running 'xrandr  --rmmode "1600x1200_56.00"'


Checked de EDID info with "sudo get-edid | parse-edid" and I get this:
Code: [Select]
Section "Monitor"
        Identifier "SyncMaster"
        ModelName "SyncMaster"
        VendorName "SAM"
        # Monitor Manufactured week 46 of 2006
        # EDID version 1.3
        # Analog Display
        Option "SyncOnGreen" "true"
        DisplaySize 430 320
        Gamma 2.20
        Option "DPMS" "true"
        Horizsync 30-81
        VertRefresh 56-75
        # Maximum pixel clock is 170MHz
        #Not giving standard mode: 1600x1200, 60Hz
        #Not giving standard mode: 1280x1024, 60Hz
        #Not giving standard mode: 1280x960, 60Hz
        #Not giving standard mode: 1152x864, 75Hz
        Modeline        "Mode 0" 162.00 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync
EndSection


Should I try to connect the monitor with the DVI  port (I'm using VGA now)?

The verbose outputs says "SwitchRes: -resolution was set at command line or in .ini file as 1600x1200@60" is this normal?

Checking the grovymame .diff at line 2654 I see:
Code: [Select]
if (!strcmp(cs->monitor, "lcd"))than, inside the IF:
Code: [Select]
current.refresh = 60;and
Code: [Select]
sprintf(resolution, "%dx%d@%d", current.width, current.height, current.refresh);
Is this supposed to lock the resolution for the info screens only?

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7414
  • Last login:April 10, 2024, 02:02:31 pm
  • Quote me with care
Re: Getting the right refresh rate on multisync LCD screen
« Reply #4 on: April 06, 2014, 02:28:23 pm »
No, that doesn't lock the refresh rate, that's only to make sure we get the most likely current resolution for the desktop.

As you see, the commands GM is running are these:

SwitchRes: Running 'xrandr  --newmode "1600x1200_56.00" 146.89 1600 1704 1856 2112 1200 1202 1205 1242   -hsync +vsync'
SwitchRes: Running 'xrandr  --addmode VGA-0 "1600x1200_56.00"'

You may try those commands by yourself to see if the driver is actually accepting that mode or it is conflicting with its EDID preset.

Also, try using any of the "vesa" presets in GroovyMAME. I know those are not what you want, but they may help figuring out things. For instance, try "vesa_1024".
 
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

eldiau

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 39
  • Last login:June 12, 2023, 06:01:40 pm
Re: Getting the right refresh rate on multisync LCD screen
« Reply #5 on: April 06, 2014, 04:53:51 pm »
I'm sure the modes get added by groovymame, I can list them via ssh while GM is running and it deletes them after exiting.
I did try launching:
Code: [Select]
emu@arcade:~$ xrandr --newmode "1600x1200_56.00" 146.89 1600 1704 1856 2112 1200 1202 1205 1242   -hsync +vsync
emu@arcade:~$ xrandr --addmode VGA1 "1600x1200_56.00"
emu@arcade:~$ xrandr --output VGA1 --mode "1600x1200_56.00"
on both the Intel and ATI gfx boards ad I get the correct refresh rate so I'm sure they work.
If I manualy set the resolution and after that I launch GM it keeps the  resolution, here it's the switchres log after launching xrand by hand and than GM:
Code: [Select]
SwitchRes: LCD vfreq range set by user as 56.000000-75.000000
SwitchRes: Monitor: lcd Orientation: horizontal Modeline generation: enabled
SwitchRes: Found output connector 'VGA-0'
SwitchRes: Creating automatic specs for LCD based on VESA GTF
SwitchRes: Monitor range 69552.00-93150.00,56.00-75.00,0.696,1.044,1.740,0.013,0.040,0.510,0,1,1200,1200,0,0
SwitchRes: -resolution was set at command line or in .ini file as 1600x1200@60
SwitchRes: Setting option -nochangeres

SwitchRes: Entering switchres_modeline_setup
SwitchRes: v0.015:[rtype] Calculating best video mode for 384x256@55.017605 orientation: normal

SwitchRes: [1600]x[1200]_(60=0.0000Hz)
   rng(0): 1600 x1200_56.000p 69.552 [fract] scale(4, 4, 1) diff(0.00, 14.17, 0.9824) ratio(4.167, 4.688)

SwitchRes: [rtype] (1) horizontal (384x256@55.02)->(1600x1200@56.00)
   rng(0): 1600 x1200_56.000p 69.552 [fract] scale(4, 4, 1) diff(0.00, 14.17, 0.9824) ratio(4.167, 4.688)
SwitchRes: Modeline "1600x1200_60 69.55KHz 56.00Hz" 146.89 1600 1704 1856 2112 1200 1202 1205 1242   -hsync +vsync
SwitchRes: Running 'xrandr  --newmode "1600x1200_56.00" 146.89 1600 1704 1856 2112 1200 1202 1205 1242   -hsync +vsync'
X Error of failed request:  BadName (named color or font does not exist)
  Major opcode of failed request:  140 (RANDR)
  Minor opcode of failed request:  16 (RRCreateMode)
  Serial number of failed request:  33
  Current serial number in output stream:  33
SwitchRes: Running 'xrandr  --addmode VGA-0 "1600x1200_56.00"'
SwitchRes: Setting option -rotate
SwitchRes: Setting option -noror
SwitchRes: Setting option -autoror
SwitchRes: Setting option -norol
SwitchRes: Setting option -noautorol
SwitchRes: Setting option -noblack_frame_insertion
SwitchRes: Setting option -multithreading
SwitchRes: Setting option -syncrefresh
SwitchRes: Setting option -waitvsync
SwitchRes: Setting option -keepaspect
SwitchRes: Setting option -unevenstretch
SwitchRes: Setting option -filter
SwitchRes: Setting option -prescale 4

I obviusly get an error when GN tryis to re-add the already existing mode, but the the game rauns at the right speed:
Code: [Select]
Average speed: 101.73% (32 seconds)versus:
Code: [Select]
Average speed: 109.12% (12 seconds)when running at 60Hz


Using the "vesa_1024" presets does change the resolution I get a 1152x825@75Hz and the game (rtype) runs at 136% with this verbose log:
Code: [Select]
SwitchRes: Monitor range 29320.00-30320.00,50.00-65.00,0.671,2.683,3.353,0.034,0.101,0.436,0,1,384,480,0,0
SwitchRes: Monitor range 36820.00-37820.00,50.00-65.00,0.837,2.093,2.931,0.027,0.080,0.482,0,1,480,600,0,0
SwitchRes: Monitor range 47200.00-48200.00,50.00-65.00,0.874,1.622,2.496,0.021,0.063,0.482,0,1,600,768,0,0
SwitchRes: Monitor range 63100.00-64100.00,50.00-65.00,0.759,1.241,2.000,0.016,0.047,0.503,0,1,768,1024,0,0
SwitchRes: Monitor: vesa_1024 Orientation: horizontal Modeline generation: enabled
SwitchRes: Found output connector 'VGA-0'

SwitchRes: Entering switchres_modeline_setup
SwitchRes: v0.015:[rtype] Calculating best video mode for 384x256@55.017605 orientation: normal

SwitchRes: (   1)x(   1)_(60=0.0000Hz)
   rng(0):  640 x 480_55.018p 29.324 [fract] scale(1, 1, 1) diff(0.00, 0.00, 0.0000) ratio(1.667, 1.875)
   rng(1):  800 x 600_55.018p 36.862 [fract] scale(2, 2, 1) diff(0.00, 33.43, 0.0000) ratio(2.083, 2.344)
   rng(2): 1152 x 768_55.018p 47.205 [integ] scale(3, 3, 1) diff(0.00, 0.00, 0.0000) ratio(3.000, 3.000)
   rng(3): 1152 x 768_55.018p 63.105 [integ] scale(3, 3, 1) diff(0.00, 0.00, 0.0000) ratio(3.000, 3.000)

SwitchRes: [rtype] (1) horizontal (384x256@55.02)->(1152x768@55.02)
   rng(2): 1152 x 768_55.018p 47.205 [integ] scale(3, 3, 1) diff(0.00, 0.00, 0.0000) ratio(3.000, 3.000)
SwitchRes: Modeline "1152x768_60 47.21KHz 55.02Hz" 71.00 1152 1216 1328 1504 768 801 804 858   -hsync +vsync
SwitchRes: Running 'xrandr  --newmode "1152x768_55.02" 71.00 1152 1216 1328 1504 768 801 804 858   -hsync +vsync'
SwitchRes: Running 'xrandr  --addmode VGA-0 "1152x768_55.02"'
SwitchRes: Setting option -rotate
SwitchRes: Setting option -noror
SwitchRes: Setting option -autoror
SwitchRes: Setting option -norol
SwitchRes: Setting option -noautorol
SwitchRes: Setting option -noblack_frame_insertion
SwitchRes: Setting option -multithreading
SwitchRes: Setting option -syncrefresh
SwitchRes: Setting option -waitvsync
SwitchRes: Setting option -keepaspect
SwitchRes: Setting option -nounevenstretch
SwitchRes: Setting option -nofilter
SwitchRes: Setting option -prescale 3
Build version:      0.152ex1 (Jan 15 2014)
Build architecure:  SDLMAME_ARCH=
Build defines 1:    SDLMAME_UNIX=1 SDLMAME_X11=1 SDLMAME_LINUX=1
Build defines 1:    LSB_FIRST=1 PTR64=1 DISTRO=generic SYNC_IMPLEMENTATION=tc
SDL/OpenGL defines: SDL_COMPILEDVERSION=1215 USE_OPENGL=1 USE_DISPATCH_GL=1
Compiler defines A: __GNUC__=4 __GNUC_MINOR__=8 __GNUC_PATCHLEVEL__=2 __VERSION__="4.8.2 20131219 (prerelease)"
Compiler defines B: __amd64__=1 __x86_64__=1 __unix__=1
Compiler defines C: __USE_FORTIFY_LEVEL=0
SDL Device Driver     : x11
SDL Monitor Dimensions: 1600 x 1200
Enter sdlwindow_init
Using SDL single-window OpenGL driver (SDL 1.2)
Leave sdlwindow_init
Loaded opengl shared library: <default>
OpenGL: X.Org
OpenGL: Gallium 0.4 on AMD CEDAR
OpenGL: 3.0 Mesa 10.1.0
OpenGL: texture rectangle supported
OpenGL: non-power-of-2 textures supported (new method)
OpenGL: vertex buffer supported
OpenGL: pixel buffers supported
OpenGL: framebuffer object supported
OpenGL: GLSL supported, but disabled
OpenGL: max texture size 16384 x 16384
Keyboard: Start initialization
Input: Adding Kbd #0: System keyboard
Keyboard: Registered System keyboard
Keyboard: End initialization
Mouse: Start initialization
Input: Adding Mouse #0: System mouse
Mouse: Registered System mouse
Mouse: End initialization
Joystick: Start initialization
Joystick: End initialization
Audio: Start initialization
Audio: Driver is pulse
Audio: frequency: 48000, channels: 2, samples: 256
sdl_create_buffers: creating stream buffer of 76800 bytes
Audio: End initialization
output: unable to open output notifier file /tmp/sdlmame_out
Region ':maincpu' created
Region ':gfx1' created
Region ':gfx2' created
Region ':gfx3' created
Searching font Liberation Sans in -fontpath
Matching font: /usr/share/fonts/truetype/liberation/LiberationSans-Regular.ttf
Starting R-Type (World) ':'
Optional device 'dac' not found
Optional device 'mcu' not found
Optional shared pointer 'spriteram2' not found
Optional shared pointer 'majtitle_rowscr' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
  (missing dependencies; rescheduling)
Starting V30 ':maincpu'
Starting Z80 ':soundcpu'
Starting Video Screen ':screen'
Starting Speaker ':lspeaker'
  (missing dependencies; rescheduling)
Starting Speaker ':rspeaker'
  (missing dependencies; rescheduling)
Starting M72 Custom ':m72'
Starting YM2151 ':ymsnd'
Starting R-Type (World) ':'
Optional device 'dac' not found
Optional device 'mcu' not found
Optional shared pointer 'spriteram2' not found
Optional shared pointer 'majtitle_rowscr' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
  (missing dependencies; rescheduling)
Starting Speaker ':lspeaker'
Starting Speaker ':rspeaker'
Starting R-Type (World) ':'
Optional device 'dac' not found
Optional device 'mcu' not found
Optional shared pointer 'spriteram2' not found
Optional shared pointer 'majtitle_rowscr' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
OpenGL: VBO supported
OpenGL: PBO supported
OpenGL: FBO supported
OpenGL: using vid filter: 0
GL texture: copy 1, shader 0, dynamic 1, 1152x768 1152x768 [PALETTE16, Equal: 0, Palette: 1,
            scale 3x3, border 0, pitch 512,1152/16384], colors: 512, bytes/pix 4
GL texture: copy 1, shader 0, dynamic 1, 1152x768 1152x768 [PALETTE16, Equal: 0, Palette: 1,
            scale 3x3, border 0, pitch 512,1152/16384], colors: 512, bytes/pix 4
Average speed: 136.32% (7 seconds)
sdl_kill: closing audio
Joystick: Start deinitialization
Joystick: End deinitialization
Enter sdlwindow_exit
Leave sdlwindow_exit
SwitchRes: Restoring desktop resolution: 1600x1200
SwitchRes: Running 'xrandr --output VGA-0 --mode 1600x1200'
SwitchRes: Running 'xrandr  --delmode VGA-0 "1152x768_55.02"'
SwitchRes: Running 'xrandr  --rmmode "1152x768_55.02"'

mame.ini is always this one:
Code: [Select]
#
# CORE CONFIGURATION OPTIONS
#
readconfig                1
writeconfig               0

#
# CORE SEARCH PATH OPTIONS
#
rompath                   $HOME/emulators/mame/roms
hashpath                  /usr/share/games/mame/hash
samplepath                $HOME/emulators/mame/samples
artpath                   $HOME/emulators/mame/artwork;$HOME/.mame/artwork;$HOME/.mame.ora/artwork
ctrlrpath                 $HOME/.mame/ctrlr
inipath                   $HOME/.groovymame
fontpath                  /tmp
cheatpath                 $HOME/.mame/cheat
crosshairpath             $HOME/.mame/crosshair;/usr/local/share/games/mame/crosshair

#
# CORE OUTPUT DIRECTORY OPTIONS
#
cfg_directory             $HOME/.groovymame/cfg
nvram_directory           $HOME/.groovymame/nvram
memcard_directory         $HOME/.groovymame/memcard
input_directory           $HOME/.groovymame/inp
state_directory           $HOME/.groovymame/sta
snapshot_directory        $HOME/.groovymame/snap
diff_directory            $HOME/.groovymame/diff
comment_directory         $HOME/.groovymame/comments

#
# CORE OUTPUT DIRECTORY OPTIONS
#
hiscore_directory         $HOME/.groovymame/hi

#
# CORE STATE/PLAYBACK OPTIONS
#
state                     
autosave                  0
playback                 
record                   
mngwrite                 
aviwrite                 
wavwrite                 
snapname                  %g/%i
snapsize                  auto
snapview                  internal
statename                 %g
burnin                    0

#
# CORE PERFORMANCE OPTIONS
#
autoframeskip             0
frameskip                 0
seconds_to_run            0
throttle                  1
syncrefresh               0
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              1
use_backdrops             0
use_overlays              0
use_bezels                0
use_cpanels               0
use_marquees              0

#
# CORE SCREEN OPTIONS
#
brightness                1.0
contrast                  1.0
gamma                     1.0
pause_brightness          0.65
#effect                    none
effect                    aperturescan1280.png

#
# 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
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
#
log                       0
verbose                   0
update_in_pause           0
debug                     0
debugscript               
debug_internal            0

#
# CORE MISC OPTIONS
#
drc                       1
drc_use_c                 0
bios                     
cheat                     0
skip_gameinfo             1
uifont                    default
ramsize                   
confirm_quit              0
ui_mouse                  0
autoboot_command         
autoboot_delay            2
autoboot_script           
http                      0
http_port                 8080
http_path                 web

#
# CORE MKChamp OPTIONS
#
disable_hiscore_patch     1
disable_nagscreen_patch   0
disable_loading_patch     0

#
# CORE SWITCHRES OPTIONS
#
modeline_generation       1
monitor                   vesa_1024
#monitor                   lcd
#monitor                   custom
orientation               horizontal
connector                 auto
interlace                 1
doublescan                1
cleanstretch              0
changeres                 1
powerstrip                0
lock_system_modes         0
lock_unsupported_modes    1
refresh_dont_care         0
dotclock_min              0
sync_refresh_tolerance    2.0
frame_delay               0
black_frame_insertion     0
modeline                  auto
ps_timing                 auto
# Samsung:
lcd_range                 56.00-75.00
crt_range0                30000.00-81000.00,56.00-75.00,0.696,1.044,1.740,0.013,0.040,0.510,0,1,200,1200,0,0
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

#
# DEBUGGING OPTIONS
#
oslog                     0
watchdog                  0

#
# PERFORMANCE OPTIONS
#
multithreading            1
numprocessors             auto
sdlvideofps               0
bench                     0

#
# VIDEO OPTIONS
#
video                     opengl
numscreens                1
window                    0
maximize                  1
keepaspect                0
unevenstretch             0
centerh                   1
centerv                   1
waitvsync                 1
scalemode                 none

#
# OpenGL-SPECIFIC OPTIONS
#
filter                    0
prescale                  1
gl_forcepow2texture       0
gl_notexturerect          0
gl_vbo                    1
gl_pbo                    1
gl_glsl                   0
#gl_glsl                   1
gl_glsl_filter            1
glsl_shader_mame0         none
glsl_shader_mame1         none
#glsl_shader_mame0         /home/arcade/.mame/CRT/shader/glsl_plain
#glsl_shader_mame1         /home/arcade/.mame/CRT/CRT-geom
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
gl_glsl_vid_attr          1

#
# 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
#
switchres                 1
useallheads               0

#
# SOUND OPTIONS
#
audio_latency             2

#
# SDL KEYBOARD MAPPING
#
keymap                    0
keymap_file               keymap.dat
uimodekey                 SCRLOCK

#
# SDL JOYSTICK MAPPING
#
joy_idx1                  auto
joy_idx2                  auto
joy_idx3                  auto
joy_idx4                  auto
joy_idx5                  auto
joy_idx6                  auto
joy_idx7                  auto
joy_idx8                  auto
sixaxis                   0

#
# SDL LOWLEVEL DRIVER OPTIONS
#
videodriver               auto
audiodriver               auto
gl_lib                    auto


I tryed using "monitor custom" and adding the modeline it makes up when using the lcd preset in "crt_range0                30000.00-81000.00,56.00-75.00,0.696,1.044,1.740,0.013,0.040,0.510,0,1,200,1200,0,0" but I get a 640x480@75Hz with this output:
Code: [Select]
SwitchRes: Monitor range 30000.00-81000.00,56.00-75.00,0.696,1.044,1.740,0.013,0.040,0.510,0,1,200,1200,0,0
SwitchRes: Monitor: custom Orientation: horizontal Modeline generation: enabled
SwitchRes: Found output connector 'VGA-0'

SwitchRes: Entering switchres_modeline_setup
SwitchRes: v0.015:[rtype] Calculating best video mode for 384x256@55.017605 orientation: normal

SwitchRes: (   1)x(   1)_(60=0.0000Hz)
   rng(0):  384 x 256_56.000p 30.016 [integ] scale(1, 1, 1) diff(0.00, 0.00, 0.9824) ratio(1.000, 1.000)

SwitchRes: [rtype] (1) horizontal (384x256@55.02)->(384x256@56.00)
   rng(0):  384 x 256_56.000p 30.016 [integ] scale(1, 1, 1) diff(0.00, 0.00, 0.9824) ratio(1.000, 1.000)
SwitchRes: Modeline "384x256_60 30.02KHz 56.00Hz" 13.21 384 400 416 440 256 388 389 536   -hsync +vsync
SwitchRes: Running 'xrandr  --newmode "384x256_56.00" 13.21 384 400 416 440 256 388 389 536   -hsync +vsync'
SwitchRes: Running 'xrandr  --addmode VGA-0 "384x256_56.00"'
SwitchRes: Setting option -rotate
SwitchRes: Setting option -noror
SwitchRes: Setting option -autoror
SwitchRes: Setting option -norol
SwitchRes: Setting option -noautorol
SwitchRes: Setting option -noblack_frame_insertion
SwitchRes: Setting option -multithreading
SwitchRes: Setting option -syncrefresh
SwitchRes: Setting option -waitvsync
SwitchRes: Setting option -keepaspect
SwitchRes: Setting option -nounevenstretch
SwitchRes: Setting option -nofilter
SwitchRes: Setting option -prescale 1
Build version:      0.152ex1 (Jan 15 2014)
Build architecure:  SDLMAME_ARCH=
Build defines 1:    SDLMAME_UNIX=1 SDLMAME_X11=1 SDLMAME_LINUX=1
Build defines 1:    LSB_FIRST=1 PTR64=1 DISTRO=generic SYNC_IMPLEMENTATION=tc
SDL/OpenGL defines: SDL_COMPILEDVERSION=1215 USE_OPENGL=1 USE_DISPATCH_GL=1
Compiler defines A: __GNUC__=4 __GNUC_MINOR__=8 __GNUC_PATCHLEVEL__=2 __VERSION__="4.8.2 20131219 (prerelease)"
Compiler defines B: __amd64__=1 __x86_64__=1 __unix__=1
Compiler defines C: __USE_FORTIFY_LEVEL=0
SDL Device Driver     : x11
SDL Monitor Dimensions: 1600 x 1200
Enter sdlwindow_init
Using SDL single-window OpenGL driver (SDL 1.2)
Leave sdlwindow_init
Loaded opengl shared library: <default>
OpenGL: X.Org
OpenGL: Gallium 0.4 on AMD CEDAR
OpenGL: 3.0 Mesa 10.1.0
OpenGL: texture rectangle supported
OpenGL: non-power-of-2 textures supported (new method)
OpenGL: vertex buffer supported
OpenGL: pixel buffers supported
OpenGL: framebuffer object supported
OpenGL: GLSL supported, but disabled
OpenGL: max texture size 16384 x 16384
Keyboard: Start initialization
Input: Adding Kbd #0: System keyboard
Keyboard: Registered System keyboard
Keyboard: End initialization
Mouse: Start initialization
Input: Adding Mouse #0: System mouse
Mouse: Registered System mouse
Mouse: End initialization
Joystick: Start initialization
Joystick: End initialization
Audio: Start initialization
Audio: Driver is pulse
Audio: frequency: 48000, channels: 2, samples: 256
sdl_create_buffers: creating stream buffer of 76800 bytes
Audio: End initialization
output: unable to open output notifier file /tmp/sdlmame_out
Region ':maincpu' created
Region ':gfx1' created
Region ':gfx2' created
Region ':gfx3' created
Searching font Liberation Sans in -fontpath
Matching font: /usr/share/fonts/truetype/liberation/LiberationSans-Regular.ttf
Starting R-Type (World) ':'
Optional device 'dac' not found
Optional device 'mcu' not found
Optional shared pointer 'spriteram2' not found
Optional shared pointer 'majtitle_rowscr' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
  (missing dependencies; rescheduling)
Starting V30 ':maincpu'
Starting Z80 ':soundcpu'
Starting Video Screen ':screen'
Starting Speaker ':lspeaker'
  (missing dependencies; rescheduling)
Starting Speaker ':rspeaker'
  (missing dependencies; rescheduling)
Starting M72 Custom ':m72'
Starting YM2151 ':ymsnd'
Starting R-Type (World) ':'
Optional device 'dac' not found
Optional device 'mcu' not found
Optional shared pointer 'spriteram2' not found
Optional shared pointer 'majtitle_rowscr' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
  (missing dependencies; rescheduling)
Starting Speaker ':lspeaker'
Starting Speaker ':rspeaker'
Starting R-Type (World) ':'
Optional device 'dac' not found
Optional device 'mcu' not found
Optional shared pointer 'spriteram2' not found
Optional shared pointer 'majtitle_rowscr' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
Optional shared pointer 'paletteram2' not found
Optional shared pointer 'paletteram' not found
OpenGL: VBO supported
OpenGL: PBO supported
OpenGL: FBO supported
OpenGL: using vid filter: 0
GL texture: copy 1, shader 0, dynamic 1, 384x256 384x256 [PALETTE16, Equal: 0, Palette: 1,
            scale 1x1, border 0, pitch 512,384/16384], colors: 512, bytes/pix 4
GL texture: copy 1, shader 0, dynamic 1, 384x256 384x256 [PALETTE16, Equal: 0, Palette: 1,
            scale 1x1, border 0, pitch 512,384/16384], colors: 512, bytes/pix 4
Average speed: 136.33% (43 seconds)
sdl_kill: closing audio
Joystick: Start deinitialization
Joystick: End deinitialization
Enter sdlwindow_exit
Leave sdlwindow_exit
SwitchRes: Restoring desktop resolution: 1600x1200
SwitchRes: Running 'xrandr --output VGA-0 --mode 1600x1200'
SwitchRes: Running 'xrandr  --delmode VGA-0 "384x256_56.00"'
SwitchRes: Running 'xrandr  --rmmode "384x256_56.00"'

eldiau

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 39
  • Last login:June 12, 2023, 06:01:40 pm
Re: Getting the right refresh rate on multisync LCD screen
« Reply #6 on: April 08, 2014, 03:35:49 am »
Just to add more informations, GM does add the mode to the list but it simply doesn't switch to it.
Here is the output of xrandr launched while GM is running rtype:
Code: [Select]
emu@cab:~$ xrandr
Screen 0: minimum 320 x 200, current 1600 x 1200, maximum 8192 x 8192
HDMI-0 disconnected (normal left inverted right x axis y axis)
DVI-0 connected 1600x1200+0+0 (normal left inverted right x axis y axis) 432mm x 324mm
   1600x1200      60.0*+
   1280x1024      75.0     60.0 
   1280x960       60.0 
   1152x864       75.0 
   1024x768       75.1     70.1     60.0 
   832x624        74.6 
   800x600        72.2     75.0     60.3     56.2 
   640x480        75.0     72.8     66.7     60.0 
   720x400        70.1 
   1600x1200_56.00   56.0 
VGA-0 disconnected (normal left inverted right x axis y axis)

1600x1200_56.00 is in the list but non activated





For now I "solved"  :dunno the problem writing a quick a dirty wrapper script, it basically run GM for 1 second, capture the xrandr commands, parse them, and use them with the addition of the "--output" command to really switch resolution before running GM again with the correct resolution already switched:
Code: [Select]
#!/bin/bash

# Get xrandr commands running groovymame for one second
echo $HOME/bin/groovymame64_0152ex1.015 -verbose -seconds_to_run 1 $*
XRANDR=`$HOME/bin/groovymame64_0152ex1.015 -inipath .groovymame -verbose -seconds_to_run 1 $* | grep "xrandr"`

# Parse xrandr commands
XRANDR_NEWMODE=`echo $XRANDR | sed "s/^.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*$/\1/" | sed 's/"//g'`
XRANDR_ADDMODE=`echo $XRANDR | sed "s/^.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*$/\2/" | sed 's/"//g'`
NEWMODE_NAME=`echo $XRANDR_ADDMODE | awk '{ print $4}'`
OUTPUT_PORT=`echo $XRANDR_ADDMODE | awk '{ print $3}'`
XRANDR_OUTPUT="xrandr --output $OUTPUT_PORT --mode $NEWMODE_NAME"
XRANDR_RESET_OUTPUT=`echo $XRANDR | sed "s/^.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*$/\3/" | sed 's/"//g'`
XRANDR_DELMODE=`echo $XRANDR | sed "s/^.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*$/\4/" | sed 's/"//g'`
XRANDR_RMMODE=`echo $XRANDR | sed "s/^.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*'\(.*\)'.*$/\5/" | sed 's/"//g'`

# Create new mode
$XRANDR_NEWMODE
# Add created mode to current output port
$XRANDR_ADDMODE
# Switch to new to mode
$XRANDR_OUTPUT

$HOME/bin/groovymame64_0152ex1.015  $*

# Restore normal output mode
$XRANDR_RESET_OUTPUT
# Delete mode from output list
$XRANDR_DELMODE
# Delete mode
$XRANDR_RMMODE



Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7414
  • Last login:April 10, 2024, 02:02:31 pm
  • Quote me with care
Re: Getting the right refresh rate on multisync LCD screen
« Reply #7 on: April 08, 2014, 04:15:47 am »
For now I "solved"  :dunno the problem writing a quick a dirty wrapper script, it basically run GM for 1 second, capture the xrandr commands, parse them, and use them with the addition of the "--output" command to really switch resolution before running GM again with the correct resolution already switched:

Although you call it quick and dirty I think it is a very clever solution you came up with.  :)

Thanks to this I think I now know what's going on. GM switches resolutions by using the SDL "resize" function IIRC. So first it calculates the modeline, adds it through xrandr, then switches to it with the "resize" function. Unlike in Windows, where we destroy the full D3D interface and recreate it, this is not necessary in Linux because SDL internally switches resolutions when asked for a resize while in full screen mode. The problem is, as you may have guessed, that when dealing with LCD monitors, this "resize" is not an actual resize! We're just changing the refresh rate. So probably the mode switch is not triggered. In the CRT realm it's much more unusual to see this case where we only need to switch the refresh rate. Maybe the solution is to force switching to the new mode via xrandr inside the code.
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

eldiau

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 39
  • Last login:June 12, 2023, 06:01:40 pm
Re: Getting the right refresh rate on multisync LCD screen
« Reply #8 on: April 09, 2014, 04:27:09 pm »
Thanks for looking into it Calamity!

I added the appropriate xrandr call to add_custom_video_mode() recompiled GM.. .and it works  ;D, I couldn't add it to switchres_resolution_change() because I miss a couple of variables in there and I'm not into GM code enough. I didn't test it on a 15khz monitor (I'm recapping mine just now) nor on windows (I don't have a windows machine at home)...

The diff is attached to this message...
« Last Edit: April 09, 2014, 04:51:16 pm by eldiau »

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7414
  • Last login:April 10, 2024, 02:02:31 pm
  • Quote me with care
Re: Getting the right refresh rate on multisync LCD screen
« Reply #9 on: April 09, 2014, 04:54:47 pm »
Hi eldiau,

This is great! I'll add your fix to the new release. And that is the exact place to put the xrandr call because switchres_resolution_change() indirectly ends in add_custom_video_mode() too.

BTW is video really smooth at 56 Hz? I mean is actually the Samsung outputting 56 Hz?
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

cools

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 645
  • Last login:March 11, 2024, 02:59:06 pm
  • Arcade Otaku Sysadmin
    • Arcade Otaku
Re: Getting the right refresh rate on multisync LCD screen
« Reply #10 on: April 10, 2014, 04:25:23 am »
Cool workaround, reminds me of having to telnet in to grab FBdev details from AdvanceCFG :D

Ansa89

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 377
  • Last login:December 09, 2016, 10:40:11 am
Re: Getting the right refresh rate on multisync LCD screen
« Reply #11 on: April 10, 2014, 06:55:07 am »
I merged the changes into latest groovymame patch.
Here you will find more information.
Earth could be the hell of another world

eldiau

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 39
  • Last login:June 12, 2023, 06:01:40 pm
Re: Getting the right refresh rate on multisync LCD screen
« Reply #12 on: April 10, 2014, 05:36:53 pm »
BTW is video really smooth at 56 Hz? I mean is actually the Samsung outputting 56 Hz?

At first I was optimistic, I mean, the name of the monitor is syncMASTER after all! I did my testing with rtype (horizontal scrolling), donpachi (for vertical scrolling) a btime (for older games) and despite some tearing they seemed ok, the monitor OSD said the refresh rate was the right one for the game.
But after trying with wboy I realized the monitor is really working at 60Hz and using doing an internal frame rate conversion bringing up really ugly motion artifacts :badmood:

eldiau

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 39
  • Last login:June 12, 2023, 06:01:40 pm
Re: Getting the right refresh rate on multisync LCD screen
« Reply #13 on: April 10, 2014, 05:37:38 pm »
I merged the changes into latest groovymame patch.
Here you will find more information.

Thanks Ansa!  :cheers:

ozfalcon

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 156
  • Last login:April 07, 2022, 04:55:03 am
  • ZSystem
Re: Getting the right refresh rate on multisync LCD screen
« Reply #14 on: April 18, 2014, 02:42:48 pm »
BTW is video really smooth at 56 Hz? I mean is actually the Samsung outputting 56 Hz?

At first I was optimistic, I mean, the name of the monitor is syncMASTER after all! I did my testing with rtype (horizontal scrolling), donpachi (for vertical scrolling) a btime (for older games) and despite some tearing they seemed ok, the monitor OSD said the refresh rate was the right one for the game.
But after trying with wboy I realized the monitor is really working at 60Hz and using doing an internal frame rate conversion bringing up really ugly motion artifacts :badmood:


I also run variable refresh rate on my LCD system but with a fixed resolution.
One LCD monitor displays correct (No ugly tears etc), The other (A HP monitor) does not.

« Last Edit: May 14, 2014, 08:51:00 pm by ozfalcon »

ozfalcon

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 156
  • Last login:April 07, 2022, 04:55:03 am
  • ZSystem
Re: Getting the right refresh rate on multisync LCD screen
« Reply #15 on: April 18, 2014, 03:34:24 pm »
Hi eldiau,

This is great! I'll add your fix to the new release. And that is the exact place to put the xrandr call because switchres_resolution_change() indirectly ends in add_custom_video_mode() too.

BTW is video really smooth at 56 Hz? I mean is actually the Samsung outputting 56 Hz?

When I was experimenting with GroovyMame/Arcade I could never get it to switch refresh rates with a fixed resolution.
I take it this fixes that problem, But just for curiosities sake - Can you explain what was it doing before and what this fix now does?


Ansa89

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 377
  • Last login:December 09, 2016, 10:40:11 am
Re: Getting the right refresh rate on multisync LCD screen
« Reply #16 on: April 19, 2014, 05:58:34 am »
Before the modeline was generated, then added, but not switched to (it was mame itself to pick the best modeline from those available in the system).
This leaded to wrong behavior when the new modeline has the same resolution as the modeline in use, but different frequency: in this particular case mame didn't change modeline, keeping the one with wrong frequency.

Now the modeline is generated, then added and immediately switched to.
Earth could be the hell of another world

ozfalcon

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 156
  • Last login:April 07, 2022, 04:55:03 am
  • ZSystem
Re: Getting the right refresh rate on multisync LCD screen
« Reply #17 on: April 19, 2014, 09:45:29 pm »
OK, Got it. Thanks Ansa.

For fixed resolution operation,
My first attempt at getting dynamic refresh rate was in a similar fashion - And failed just the same :-)
ie. I created/added a new mode then called Mame with -resolution options hoping switchres would select my
new mode based on the -resolution passed. But as it was already at the same res, It didn't change the mode.

Now I create/add/activate the new mode and disable switchres when I run Mame (No resolution options passed).

« Last Edit: April 21, 2014, 01:47:47 am by ozfalcon »

ozfalcon

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 156
  • Last login:April 07, 2022, 04:55:03 am
  • ZSystem
Re: Getting the right refresh rate on multisync LCD screen
« Reply #18 on: April 19, 2014, 10:22:32 pm »
Before the modeline was generated, then added, but not switched to (it was mame itself to pick the best modeline from those available in the system).
This leaded to wrong behavior when the new modeline has the same resolution as the modeline in use, but different frequency: in this particular case mame didn't change modeline, keeping the one with wrong frequency.

Now the modeline is generated, then added and immediately switched to.

Just a heads up!!!

I thought I'd do some quick tests on my uptodate Arch system.....

Seems something has changed. I can now create and switch resolutions freely while in X.
Possibly some sort of function like the SDL patch has been incorporated in the video system.

Perhaps the SDL patch is no longer required.

I'm going to noodle around with it today, I'll post any extra info to this thread.

ozfalcon

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 156
  • Last login:April 07, 2022, 04:55:03 am
  • ZSystem
Re: Getting the right refresh rate on multisync LCD screen
« Reply #19 on: April 19, 2014, 10:42:36 pm »
More info uncovered!

My min resolution reported by xrandr is now 8x8 where previously is was 320x240 for the OS intel video drivers.

So perhaps also the video driver patch is no longer required...

ozfalcon

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 156
  • Last login:April 07, 2022, 04:55:03 am
  • ZSystem
Re: Getting the right refresh rate on multisync LCD screen
« Reply #20 on: April 19, 2014, 11:07:14 pm »
The possibilities of this could be:

1. The xorg.conf file is not needed at all, The default desktop (menu) mode can be created from .xinitrc
2. GroovyMame can be run from custom/personal Arch Linux installs without any patches (for operation).
3. You don't have to patch the OS, So it's easier to make newer uptodate builds of GroovyArcade.

It's been awhile since I looked at GroovyArcade, So I'm not sure GA (with sdl patch) needed xorg.conf anyway.
« Last Edit: April 21, 2014, 08:35:46 am by ozfalcon »

ozfalcon

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 156
  • Last login:April 07, 2022, 04:55:03 am
  • ZSystem
Re: Getting the right refresh rate on multisync LCD screen
« Reply #21 on: April 20, 2014, 01:35:56 am »
Some other observations:

On my system, occasionally there is some sort of bootup initialization issue which effects:
1. X takes about 30 seconds to start up instead of the usual 2~3 seconds.
2. The system hangs when you try to shut it down or reboot it.

I'm not sure if it's a quirk with my rig or Arch Linux that is causing the occasional fault.
Just something to be aware of.
« Last Edit: May 14, 2014, 08:52:32 pm by ozfalcon »

cools

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 645
  • Last login:March 11, 2024, 02:59:06 pm
  • Arcade Otaku Sysadmin
    • Arcade Otaku
Re: Getting the right refresh rate on multisync LCD screen
« Reply #22 on: April 20, 2014, 05:11:42 am »
Nice. Not needing to patch things makes life a heck of a lot easier. Wonder who commuted those changes.

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7414
  • Last login:April 10, 2024, 02:02:31 pm
  • Quote me with care
Re: Getting the right refresh rate on multisync LCD screen
« Reply #23 on: April 21, 2014, 04:39:16 am »
Hi ozfalcon,

1. The xorg.conf file is not needed at all, The default desktop (menu) mode can be created from .xinitrc

I gather that you still need to place it somewhere, anyway it's good to know.

Quote
2. GroovyMame can be run from custom/personal Arch Linux installs without any patches (for operation).

3. You don't have to patch the OS, So it's easier to make newer uptodate builds of GroovyArcade.

Yes, it can run fine for the most part but that's not entirely true.

The need to path SDL comes from the fact that some games switch resolutions several times. SDL caches the mode table on its initialization so it can't switch to a mode that's been created after the start a MAME session. A typical test case is ga2. If you use an LCD you may not notice this.

Then you have the video drivers, without specific patches they usually won't go any lower than 320x240. But there's also an issue related to DPMS in current ATI drivers that prevents v-sync from working during a few seconds after a mode change.

Regarding the kernel itself, paching is required if you want 15 kHz outside X. I think you can achieve this by different means but this one is rather effort-less.

You need to patch the kernel too if you want to use an AVGA 3000, it won't work properly otherwise. It seems this is no longer required with the AVGA 5000.
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

ozfalcon

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 156
  • Last login:April 07, 2022, 04:55:03 am
  • ZSystem
Re: Getting the right refresh rate on multisync LCD screen
« Reply #24 on: April 21, 2014, 07:50:27 am »
Though still, The situation has changed/improved.
Previously standard Mame would not run correctly in sync mode if the res was created after X was started. And now it does.

The video drivers now report a min res of 8x8 - But they still may not go below 320x240 as you mention.
That's a shame about games like ga2 and the other issues.

The kernel patch is still required for bootup 15k, But it's more an option than a requirement - which is good.