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: "AVGA MAME Resolution Tool" Betson Multisync tweak questions  (Read 3943 times)

0 Members and 1 Guest are viewing this topic.

jimj

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 116
  • Last login:July 31, 2023, 10:55:09 pm
"AVGA MAME Resolution Tool" Betson Multisync tweak questions
« on: December 15, 2004, 12:29:54 am »
This was from the “Betson Imperial Multisync problem” thread, but I was getting off topic so I started this new one.  Specifically I've got a few follow up questions to this excellent post:
http://forum.arcadecontrols.com/index.php/topic,28298.msg241777.html#msg241777

Just remember that the monitor only allows one setting per resolution it can detect (which is probably less than the number of resolutions the AVGA can output). Best thing is to adjust to games which exactly matches the resolution and refreshrate of the AVGA card.
One tip is to run a vector game (e.g. asteroids) at each of the AVGA predefined resolutions. At the start of of the game MAME will draw a rectangle marking the outer limits which you can use to adjust the monitor.

mame asteroid -resolution 240x240 -refresh 60
mame asteroid -resolution 352x288 -refresh 50

Once done both your horizontal and vertical games will display as close as possible to correct aspect ratio (assuming that the AVGA resolution tool selects the correct resolution ofcourse).

I think I'm really close to finally having this figured out, I've got just a few more questions:
1.Why use a vector game?
2.The “ArcadeVGA.txt” doesn't list the refresh rates for all of its resolutions.  How do you know which refresh rate to specify for the unlisted games?
3.Why do you manually specify a refresh rate on the command line?  I've noticed that if I run “mame asteroid -resolution 352x288 -refresh 50” my Betson OSD actually reports that its refresh rate is 60Hz.  However, if I don't specify the refresh rate on the command line (i.e. I run “mame asteroid -resolution 352x288” instead), the Betson OSD reports that Mame actually chose 51Hz by itself.  I assume that this 51Hz refresh is what you were trying to force?  Any ideas on why this seems to be working backwards for me?  I'm using Mame 0.88 on WinXP sp2.  To sum up this question, why is the refresh rate wrong when I try to force it on the command line, and why is correct when I let Mame choose the refresh rate?

Thanks wpcmame for all the great info you've already given me!

22JAN2022 I noticed that most of this post's content was missing, so I pasted it back in (from a backup copy I had)
« Last Edit: January 22, 2022, 03:07:05 pm by jimj »

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re:
« Reply #1 on: December 15, 2004, 02:21:36 am »
Quote
1.Why use a vector game?
Because a vector game is automatically scaled to the specified resolution and the startscreen therefore always matches the resolution exactly. You can do the same thing with raster games but then you also need to have the correct combination of all mame "stretch" options.
Quote
2.The

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re:
« Reply #2 on: December 15, 2004, 03:17:22 am »
I was a bit quick to reply. Saw that the refreshrates aren't available on the ultimarc website either. I assume that you just have to let mame select the refreshrate for you.

jimj

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 116
  • Last login:July 31, 2023, 10:55:09 pm
Re:
« Reply #3 on: December 15, 2004, 08:32:06 am »
Thanks for the help, I look forward to tweaking my resolutions tonight.  I've got one last stupid question.  Why would you want to use the res tool's option to "remove non-60Hz resolutions"?

Minwah

  • Trade Count: (+3)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 7662
  • Last login:January 18, 2019, 05:03:20 am
    • MAMEWAH
Re:
« Reply #4 on: December 15, 2004, 09:44:11 am »
Here's my findings on the subject...

The main problem I have with the AVGA is that after picking a suitable resolution (close to native), sometimes the refresh rate of that mode does not match the fps of the game.  For example I know one mode is ~58hz, and so running a 60fps game at this refresh rate causes some frames to be dropped (ie 58fps) (usually noticable by bad sound).

I have been told before that using MAME's 'refresh' option forces the specified refresh rate to be used.  But in my testing this does not work - in fact I can't think how it could work since the horizontal refresh must stay at ~15khz, and the resolution must stay as specified.  Again to use the above example, I tried 'refresh 60' for this 60fps game and it still only made 58fps.

I think the only way around it is to use modes with the correct refresh rates.  I actually intend to improve my Res. Tool to compare the refresh rate of the AVGA modes, with the refresh rate of the original game and only pick modes which match - actually only a week or two I asked Andy (Ultimarc) for a list of refresh rates for each mode.  It will be a while before Andy can give me this (he's working on some issues with the new AVGA drivers) and a bigger while until I make this change...

Why would you want to use the res tool's option to "remove non-60Hz resolutions"?

Some people use SmoothMAME, which makes (pretty much) all games run @ 60fps.  So, you only want to use 60hz modes for these games, for the same reason as described above.  This is basically just another way around it - personally I don't like running all games at 60fps tho as it changes the speed / timing of some games.

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re:
« Reply #5 on: December 15, 2004, 10:52:30 am »
Quote
I have been told before that using MAME's 'refresh' option forces the specified refresh rate to be used.

jimj

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 116
  • Last login:July 31, 2023, 10:55:09 pm
Re: "AVGA MAME Resolution Tool" Betson Multisync tweak questions
« Reply #6 on: December 16, 2004, 12:10:23 am »
Why is it that the more I learn about this the more questions I have? :)

I've taken the ArcadeVGA.txt file, added some info to it, renamed it “resolutions.txt” and attached it to this post.  The info I added are the three columns “KHz”, “Hz” and “OSDgrp”.  “KHz” and “Hz” are what the Betson's On Screen Display shows as the horizontal and vertical refresh rates for each AVGA resolution.

While tweaking the Betson's OSD settings I've found that it does not save the settings per resolution.  Instead it appears that many resolutions share the same group of OSD settings.  I've documented which resolutions use which group of settings and created the “OSDgrp” column (short for On Screen Display group).  I found that the Betson saves five different groups of settings documented as A-E in my text file.

The problem with the shared OSD settings is that once you tweak the OSD for one game, it may ruin the settings for another game which uses a different resolution, but shares the same OSD group.  For example, per wpcmame's advice I set up my 240x240 resolution by running “mame asteroid -resolution 240x240” and then tweaking the OSD settings.  If I then play “Mr. Do” (which the AVGA res tool sets to run at 240x240) I'm missing about a centimeter off the top and bottom of the screen.

That wasn't so bad, I could live with that.  However, I then fire up “Warlords” which runs at 256x240 (a different resolution that uses the same OSDgrp as Mr Do's 240x240).  When it comes up it looks terrible.  It's too wide and far off the left side of the screen.  I use the Betson's OSD to get the display looking good for “Warlords”, but now when I go back to “Mr. Do” he looks fat!  I.e. the game is displayed much wider than it should be.

I'm sure that everyone who has a multisync monitor must run into this same problem, how do others solve this?  One piece of advice I remember seeing is that you simply have to compromise and find a middle ground setting that lets you see all the games even if they don't look the best.  For example you may have blank borders on all your games, but at least you can see them all.  If I were to take this route I think I would lose a lot of my screen to blank borders, assuming I could find this magic setting without destroying my aspect ratios.

I've also see the use of hwstretch mentioned.  I don't know how much this would help, or good this would look.  When I started out on my quest to get best Mame cabinet with the minimum hassle I got the Betson 27” multisync monitor and AVGA because I believed that I could just magically play almost all the arcade games at their native resolutions without any problems.  I thought this would work because I thought a multisync arcade monitor could switch to almost any of the old arcade resolutions therefore get a very authentic (and easy) reproduction of the classic arcade games.

I now believe that I was just young and ignorant before.  I now believe that there is no easy Mame arcade monitor solution even with a multisync monitor.  Have I finally seen the light, or is there a simple solution to this that I missed?  Does anyone have the patience to help me get my multisync monitor displaying all my games correctly?  Basically I'd like to get the OSD settings set once correctly, and then never touch them again.  Is this possible?  I can live with minor imperfections, like loosing a little of the screen or some screen space to blank borders.  I just don't want to lose half my screen or have to manually tweak the OSD settings for each game.

Thanks to all who have helped me get this far,
Jim

22JAN2022 I noticed that most of this post's content was missing, so I pasted it back in (from a backup copy I had).  If you want a more complete listing of the Betson OSD groups see 8BitMonk's post from 02DEC2014.

11AUG2022 update: more Betson OSD group info shared in these posts:
http://forum.arcadecontrols.com/index.php/topic,117489.msg1757620.html#msg1757620
http://forum.arcadecontrols.com/index.php/topic,117489.msg1757832.html#msg1757832
« Last Edit: August 11, 2022, 10:26:49 pm by jimj »

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re:
« Reply #7 on: December 16, 2004, 05:16:27 am »
While tweaking the Betson's OSD settings I've found that it does not save the settings per resolution.
Se my earlier reply. The monitor has no clue about what resolution it is displaying. The only thing it knows is the sync pulse frequencis.
If you look at your table you will see that the monitor got one setting per line frequency (i.e. one for 15Khz, one for 31KHz) and within each line freuquency it groups them according to refreshrate (probably <55, 55-57, >57).
That isn't to bad and is definetly better than standard arcade monitors which only got one setting for all refreshrates.

Let me also explain a few things about how the picture size is determined.
The vertical size of the picture is entirely controlled by the monitor. Nothing the graphics card does will alter the distance between the lines. In your case it means that you only need to adjust the vertical size for one 240 line mode, one 256 line mode and one 288 line mode.

The horizontal size is more tricky. In 15KHz mode each line is 64us where ~12us is the time the monitor needs to move the beam back to the left edge. This leaves 52us which is the usable part of the line. On your monitor you can adjust how much of these 52us that should be visible (remember: monitor knows nothing about pixels)
The graphics card then send color information during these 52us based on an image in the computer memory. To convert from computer pixels, the graphics card uses what is called a pixel-clock. with a 7MHz pixelclock, 364 pixels fits within 52us and with a 14MHz 728 pixels. What you see here is that you can fully control the width (i.e. aspect ratio) of the game image by altering the pixel clock. This is how advancemame works.

With the AVGA card you can't change the pixelclock since you are using predefined displaymodes. I always thought that the modes on the AVGA card were adjusted so that they all used the same amount of each line (e.g. 45us). What surprices me is that you get so different results for 256x240 vs 240x240. From your results I would say that these two modes don't use the same amount of the line, e.g. 240x240 uses 45us and 256x240 uses 50us. Maybe this is related to the arcadevga driver problems I read about on the ultimarc forum. Only Andy from Ultimarc can answer that but if the modes do use different amount of the line the only thing you can do is to check which mode uses most and asjust the monitor from that.

Quote
I now believe that I was just young and ignorant before.

AndyWarne

  • Trade Count: (+18)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1938
  • Last login:April 11, 2021, 03:37:09 am
    • Ultimarc
Re:
« Reply #8 on: December 16, 2004, 05:50:17 am »
I would guess that the Betson monitor stores settings for each horizontal frequency. This is how PC monitors do it and I would think the Betson simply extends the possible range downwards, to 15Khz.
So all 15Khz modes will probably use the same setting.
The strange thing is, why is the monitor displaying some resolutions off-center? This should not happen. On all the monitors I have tested, all the resolutions defined in the ArcadeVGA card fit the screen excatly without adjustment. Even though monitors vary in their display when presented with varying horizontal and vertical  frequencies, because the ArcadeVGAs modes are all locked to the same frequency, the picture size and position has proved to be remarkably consistent across monitors, (once the monitor has been adjusted initially of course). So this monitor seems to be behaving rather strangely.
Andy

Minwah

  • Trade Count: (+3)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 7662
  • Last login:January 18, 2019, 05:03:20 am
    • MAMEWAH
Re:
« Reply #9 on: December 16, 2004, 06:41:35 am »
My guess is that it works the other way around. You force the refreshrate of the game (i.e. running the game slower or faster than original), not the monitor.

I see what you mean - so for a normally 60fps game running in a 58hz mode, I should set 'refresh 58'...I'll give it a try.  Thanks :)

Minwah

  • Trade Count: (+3)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 7662
  • Last login:January 18, 2019, 05:03:20 am
    • MAMEWAH
Re:
« Reply #10 on: December 16, 2004, 06:51:21 am »
I've also see the use of hwstretch mentioned.  I don't know how much this would help, or good this would look.  When I started out on my quest to get best Mame cabinet with the minimum hassle I got the Betson 27

Will

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 281
  • Last login:April 08, 2012, 03:32:27 am
  • Finished Lurking.....
Re:
« Reply #11 on: December 16, 2004, 11:53:35 pm »
So if I'm understanding this correctly minwah if i have horizontal games dialed in perfect and I switch to a game like pac-man for instance the high score at the top will be partially blocked?It kinda sucks but it at least will stop me from continuing tweaking the monitor.Maybe someday someone will produce a true arcade monitor made for a mame set up.

krick

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2006
  • Last login:February 08, 2023, 08:30:27 pm
  • Gotta have blue hair.
Re:
« Reply #12 on: December 17, 2004, 12:30:12 am »
I was a bit quick to reply. Saw that the refreshrates aren't available on the ultimarc website either. I assume that you just have to let mame select the refreshrate for you.


There's a list of ArcadeVGA resolutions in Kevin Steele's ArcadeVGA review on RetroBlast. Unfortunately, only 60Hz is ever listed for a refresh rate and only on certain resolutions.
http://www.retroblast.com/reviews/avga.html



Here is a list of all of the custom arcade resolutions supported by the ArcadeVGA card (note that some of these resolutions listed are used for vertical games being displayed on a horizontal monitor):

HVVertical Refresh
24024060Hz
25624060Hz
256256
256264
28824060Hz
29624060Hz
30424060Hz
32020060Hz (321 X 200 in Windows)
32024060Hz (321 X 240 in Windows)
320256
33624060Hz
352256Vert on Horiz Mon
352264Vert on Horiz Mon
352288Vert on Horiz Mon
36824060Hz
39224060Hz
384288
40025653Hz, Mortal Kombat, etc.
44824060Hz
51224060Hz
512288
512448Vert on Horiz Mon
512512
632264
64024060Hz
640400
64048060Hz
800600

In addition, the ArcadeVGA can support the following standard PC resolutions:

HV
640288Non-Interlaced
640480Interlaced
800600Interlaced
1024768XP and 2000 Auto-Pan only
Hantarex Polo 15KHz
Sapphire Radeon HD 7750 2GB (GCN)
GroovyMAME 0.197.017h_d3d9ex
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
Windows 7 Home Premium 64-bit
Intel Core i7-4790K @ 4.8GHz
ASUS Z87M-PLUS Motherboard

krick

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2006
  • Last login:February 08, 2023, 08:30:27 pm
  • Gotta have blue hair.
Re:
« Reply #13 on: December 17, 2004, 12:33:26 am »
So if I'm understanding this correctly minwah if i have horizontal games dialed in perfect and I switch to a game like pac-man for instance the high score at the top will be partially blocked?It kinda sucks but it at least will stop me from continuing tweaking the monitor.Maybe someday someone will produce a true arcade monitor made for a mame set up.

On my cab, I run the horizontal games (like SF2) a little squashed so that vertical games (like pac-man) aren't cut off.  I don't even notice the difference on the horizontal games.  It looks a bit like letterboxing on DVD movies.
Hantarex Polo 15KHz
Sapphire Radeon HD 7750 2GB (GCN)
GroovyMAME 0.197.017h_d3d9ex
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
Windows 7 Home Premium 64-bit
Intel Core i7-4790K @ 4.8GHz
ASUS Z87M-PLUS Motherboard

Will

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 281
  • Last login:April 08, 2012, 03:32:27 am
  • Finished Lurking.....
Re:
« Reply #14 on: December 17, 2004, 01:33:41 pm »
Letterbox street fighter ;D I will test that but I wish that I could have it both ways.Finally understanding the true reason for a rotating monitor or having two cabs one for vertical games and the other for horizontal games.At least this gives me an excuse to build another cabinet down the road.It seems like almost every day since I started this "little" arcade project in September that I learn something new.This thread may be worthy of adding to the monitor Faq for new arcade monitor users.
« Last Edit: December 17, 2004, 10:47:11 pm by Will »

krick

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2006
  • Last login:February 08, 2023, 08:30:27 pm
  • Gotta have blue hair.
Re:
« Reply #15 on: December 18, 2004, 04:35:15 pm »
I was thinking about eventually building a second cabinet just for vertical games but for the time being, I'm totally pleased with how I have it set up.
Hantarex Polo 15KHz
Sapphire Radeon HD 7750 2GB (GCN)
GroovyMAME 0.197.017h_d3d9ex
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
Windows 7 Home Premium 64-bit
Intel Core i7-4790K @ 4.8GHz
ASUS Z87M-PLUS Motherboard

chris2922

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 138
  • Last login:March 26, 2023, 01:09:41 pm
  • Silverline Jamma Cab
Re:
« Reply #16 on: December 22, 2004, 05:45:39 pm »
I

krick

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2006
  • Last login:February 08, 2023, 08:30:27 pm
  • Gotta have blue hair.
Re:
« Reply #17 on: December 30, 2004, 10:56:33 am »
I like horizontal games personally, but if 640x480 with stretching allows a close enough representation of vert games id be very happy - especially if horizontal games were displayed nicely.
Hantarex Polo 15KHz
Sapphire Radeon HD 7750 2GB (GCN)
GroovyMAME 0.197.017h_d3d9ex
CRT Emudriver & CRT Tools 2.0 beta 13 (Crimson 16.2.1 for GCN cards)
Windows 7 Home Premium 64-bit
Intel Core i7-4790K @ 4.8GHz
ASUS Z87M-PLUS Motherboard

jimj

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 116
  • Last login:July 31, 2023, 10:55:09 pm
Re:
« Reply #18 on: January 05, 2005, 11:40:29 pm »
Thanks to all who've helped me so far.  I got back from Christmas vacation and have finally had time to try tweaking my monitor again.  It actually wasn't that hard to find a compromise OSD setting that causes most of my games to have black borders, but allows me to see all the games in pretty much their correct aspect ratio.  Since the Betson is a big monitor, loosing some of the screen doesn't bother me much.  I think my original problem is that I'd get one game to fill the whole screen which would really throw off some other games.  So life is good for the most part, but I've got one more question.

The AVGA res tool did a good job of picking most resolutions.  However, for some games with weird vertical resolutions in the 300-400 range the res tool selected 800x600 for the resolution.  This made these games look way too small.  Some of these games looked good when I use 640x480 instead.  For others though, the only way to get them to a large enough size was to use hwstretch.  So my final (hopefully) question is, if I'm going to use hwstretch is it better to use as low a res as possible (in this case 640x480 is the lowest AVGA res that wouldn't lose vertical lines for these games) or as high a res as possible (i.e. 800x600) with hwstrech?  Or doesn't it matter?

Thanks again for all the great posts.

desmatic

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 216
  • Last login:June 25, 2006, 02:25:53 pm
    • Easy MameCab
Re:
« Reply #19 on: January 06, 2005, 07:22:29 am »
Thanks to all who've helped me so far.  I got back from Christmas vacation and have finally had time to try tweaking my monitor again.  It actually wasn't that hard to find a compromise OSD setting that causes most of my games to have black borders, but allows me to see all the games in pretty much their correct aspect ratio.  Since the Betson is a big monitor, loosing some of the screen doesn't bother me much.  I think my original problem is that I'd get one game to fill the whole screen which would really throw off some other games.  So life is good for the most part, but I've got one more question.

The AVGA res tool did a good job of picking most resolutions.  However, for some games with weird vertical resolutions in the 300-400 range the res tool selected 800x600 for the resolution.  This made these games look way too small.  Some of these games looked good when I use 640x480 instead.  For others though, the only way to get them to a large enough size was to use hwstretch.  So my final (hopefully) question is, if I'm going to use hwstretch is it better to use as low a res as possible (in this case 640x480 is the lowest AVGA res that wouldn't lose vertical lines for these games) or as high a res as possible (i.e. 800x600) with hwstrech?  Or doesn't it matter?

Thanks again for all the great posts.

Higher is better, assuming both modes are using the same stretch factors.  You want to use the mode that has the best factor first.  If you have two modes with the same stretch factor, then the higher will be less lossy (though the scanline size will be less accurate).

But unless you want to tinker with a lot of math formula's, just pick the mode that looks best to you.