Build Your Own Arcade Controls Forum

Software Support => GroovyMAME => Topic started by: ahofle on October 24, 2012, 12:08:52 am

Title: GroovyUME help - a2600 and a5200
Post by: ahofle on October 24, 2012, 12:08:52 am
Hi Calamity.  I'm finally getting around to trying out the GroovyUME and for some reason, both atari 2600 and 5200 give me a blank screen (I can hear sounds as if it's running fine though).  MAME, coleco, and even a7800 work fine.  Any ideas?  I've attached verbose output.
Title: Re: GroovyUME help - a2600 and a5200
Post by: Calamity on October 24, 2012, 04:03:04 am
Hi ahofle,

For HD 4xxx & magic resolutions, switch to -video d3d, that should fix this problem.
Title: Re: GroovyUME help - a2600 and a5200
Post by: ahofle on October 24, 2012, 08:29:06 pm
THanks Calamity, I did have video set to d3d in the main ume.ini, but for some reason there was an a5200.ini and a2600.ini in the ini folder with ddraw set.  :cheers:
Title: Re: GroovyUME help - a2600 and a5200
Post by: wolfsoft on February 05, 2013, 02:06:59 am
Hi Folks,

I am currently testing a2600 games (eg. PAC MAN USA). I found two modlines for the "real" native resolutions of a2600

modeline 'a2600-ntsc-160x192-15,72kHz-60,0Hz' 3,144 160 168 184 200 192 222 230 262 -hsync -vsync
modeline 'a2600-pal-160x228-15,72kHz-50,064Hz' 3,144 160 168 184 200 228 266 275 314 -hsync -vsync

But after using groovymame 0147u3 I take a look into gameinformation of mess and saw Video is: 176x223 @59,92
What is the correct resolution for a2600 games?

when I force it with resolution parameter at commandline with -resolution 160x192@60 it looks "bad" on a CRT its scaled and pixels a looking "blury"...



cheers
Title: Re: GroovyUME help - a2600 and a5200
Post by: Calamity on February 05, 2013, 06:42:18 am
MESS/UME only reports one resolution per system, too bad. So multi-res systems can't be figured out through XML. Fortunately the -changeres feature allows GM to switch resolutions on demand, so when the 160x192 or whatever resolution is required, it will be automatically selected, provided it's available. So you need to make it available beforehand by adding it to ReslList.txt and creating the modes again through VMMaker.

Anyway, as long as you have a 320x224 resolution available, this one could be used by GM to produce a 160x192 resolution that is PERFECT (=no stretching, pixel perfect).

A convenient approach for GroovyUME is to use magic resolutions, this way you make sure that any virtually possible resolution required by UME systems can be created at real time.

If forcing 160x192 looks "bad" it's probably due to the fact that you don't have this resolution available and the default desktop res is picked instead. Read the logs, they usually speak by themselves.
Title: Re: GroovyUME help - a2600 and a5200
Post by: crispux3 on December 23, 2014, 06:22:41 pm
I'm wondering how 320x224 will create a perfect image of 160x192? Could you explain some of the technicalities of why this is so?

(And yes, I know I'm replying to a post that is nearly 2 years old, but it's still relevant to me, and possibly others).
Title: Re: GroovyUME help - a2600 and a5200
Post by: Calamity on December 25, 2014, 02:30:09 pm
I'm wondering how 320x224 will create a perfect image of 160x192? Could you explain some of the technicalities of why this is so?

(And yes, I know I'm replying to a post that is nearly 2 years old, but it's still relevant to me, and possibly others).

(The position against refloating old posts is just a ridiculous policy of some forums that I don't share).

We consider the image to be perfect as long as the resulting outputs from 320x224 and 160x192 can't be told apart.

160 x 2 = 320.

2 is an integer. Scaling horizontally by an integer factor results in a picture that is 100% identical to what you'd get by using the native resolution. Here we could use a horizontal resolution 480, 640, etc., applying the required factors and the result would be the same.

As for the vertical part, we need to realize that 192 is not the actual total number of lines. When you have a video mode with Hfreq = 15.72 kHz, and Vfreq = 60.00 Hz, the total number of lines per frame is:

15720 / 60 = 262 lines

So any arcade PCB, console, DVD player, etc. that outputs 15.72 kHz/60Hz is actually drawing 262 lines per frame. From those, 22 lines are required for blanking so they can't be used for drawing anything. This leaves you with a total resolution of 240 lines, even if you don't want so many lines. If you only want to use 192 of them because you're designing a PCB with low video memory, then you just leave black borders up and down. When you're using an emulator, you can either create a "real" 192p resolution, and leave the video driver fill the borders for you, or tell your emulator to pick any 224p or 240p existing resolution and fill the borders "by software" using black lines. The result from a harware point of view will be the same, a 240p active resolution/262p total resolution. The video signal will be identical.