Build Your Own Arcade Controls Forum
Software Support => GroovyMAME => Topic started by: chris2922 on December 21, 2014, 05:55:37 am
-
Hi, I've got GroovyMAME 0.156 and Switchres v0.015d running on my Windows XP64 powered cab. The display is a Hantarex Polo 20" 15khz CRT.
It's working pretty well and it's displaying games in a way only my PCBs were able to before which is amazing. I've done plenty of reading first, but I have some questions about resolution switching and need some expert advice!
For some games like the Neo-Geo roms Switchres tells me at boot-up it matches the resolution exactly. For others it does not, and I get some odd behaviour. I'll explain below with examples:
CPS games like Final Fight output at 384 x 224 and Switchres gives me 384 x 240p. This looks great but it's not quite right.
Midway games like Mortal Kombat and NBA Hangtime are also slightly off. They should be 400 x 254 but I get 400 x 256p. Still looks good though.
Capcom game Rival Schools is where it gets strange though. According to JammaPlay this game should output 255 x 255. At run time GroovyMAME says it should be 640 x 480 and Switchres gives me 640 x 480i. This can't be right though. While the game is running if I TAB and view Game Information it tells me it's 512 x 480 switched to 512 x 480i.
Street Fighter EX2P runs on the same hardware as Rival Schools I think, and this runs great. GroovyMAME looks for 512 x 240 and Switchres gives me 512 x 240p which is spot on!
My old CRT does not like 640 x 480i or 512 x 480i so Rival Schhols and Tekken 3 flicker and wobble. Any res with a 480i axis give it trouble sadly. It's a shame because I wanted them on the game list. The TEST MODE and boot info screens work fine so must be outputting a different, lower resolution. I suppose more advanced games switched resolutions during play.
My questions are:
1) Can i get the older games to output the correct resolutions? Should I move to SuperResolutions or should I leave well alone and be happy with 'almost perfect'?
2) Is there anything I can do about the higher resolution games flickering on my CRT? I expect I'm going to have to drop them but it would be a real shame. Why does JammaPlay say Rival Schools and Street Fighter EX2P should run at 255 x 255 but GroovyMAME thinks differently?
-
This is intended.
Does not make sense make resolution like 384x224 since you get exactly the same results with 384x240 but with black bars on sides.
400x254 it's technically possible to get on PC but does not make sense as 400x256 on TV/arcade CRT will look the same. In both cases just regulate your monitor.
As for Rival Schools and other games from PSX gamed drivers this is expected (and You now it already) because those games are changing resolutions during game/ title screen. Good example is Strider where title screen is 512x480 but game is 320x240.
Super resolution won't help here because you still need 480i so using 2560 x 480i or 512x480i will get flickering.
Other option (that will not look good) is use 2560x240 on force but this will force groovymame to shrink game on y axis (noticable) and stretch game on x axis (barely noticable)
-
i can try to answer some of the questions:
CPS games like Final Fight output at 384 x 224 and Switchres gives me 384 x 240p. This looks great but it's not quite right.
i would assume in this case that although groovymame picks a 240p resolution, it simply uses 16 empty/black lines at the top and bottom to fill the screen. this is normal and should not be classed as any kind of problem (as long as groovymame is not applying any scaling, it's easy to spot if it is). you are still running the game in 224p so to speak.
Midway games like Mortal Kombat and NBA Hangtime are also slightly off. They should be 400 x 254 but I get 400 x 256p. Still looks good though.
these are part of the 'odd bunch' of games, see this post: http://forum.arcadecontrols.com/index.php/topic,136645.msg1411188.html#msg1411188 (http://forum.arcadecontrols.com/index.php/topic,136645.msg1411188.html#msg1411188)
so assuming groovymame is not applying any kind of stretching when u run these games, everything is normal here, it doesnt matter that groovymame is saying it is running a 256p resolution. groovymame will automatically alter when necessary
My old CRT does not like 640 x 480i or 512 x 480i so Rival Schhols and Tekken 3 flicker and wobble. Any res with a 480i axis give it trouble sadly. It's a shame because I wanted them on the game list. The TEST MODE and boot info screens work fine so must be outputting a different, lower resolution. I suppose more advanced games switched resolutions during play.
perhaps the TEST MODE looks ok as there is not much gfx on screen, particularly no horizontal lines for example (which really makes interlace modes flicker).. one idea for games which are 480i, consider trying to force them to run in 240p mode instead. i did this with rampage, and it looks excellent in 240p (no flicker etc).. it doesnt look like gfx are missing by running it in 240p. i havnt tried other 480i games but try the 240p mode for rival schools/tekken etc and see how it looks..
My questions are:
1) Can i get the older games to output the correct resolutions? Should I move to SuperResolutions or should I leave well alone and be happy with 'almost perfect'?
dont necessarily worry about if groovymame reports the exact correct resolution or not, the important factor is to ensure groovymame is not applying scaling (you can just use your eyes.. look closely to see if any lines on the screen are 'blurry' or look scaled etc). i dont think switching to super resolutions would make any difference as i believe groovymame is working as normal
-
Thanks for the replies that makes sense.
I suppose if my CRT displayed 480i the problems with Rival Schools wouldn't exist. Interestingly Strider 2 flickers in the menus but not during the game just as you said.
Maybe if I upgrade to a nicer cab one day ill be able to play the higher res (within 15khz) but for now I guess ill stick with the games that work.
Just out of interest how do you force a resolution on a game?
-
for example for Strider 2:
changeres 0
resolution0 640x240
This will force game to stretch menu from 512x480 to 640x240 but in game graphics will be scaled 2x horizontally nicely.
But sometimes there games that changing resolution from low to low resolution for example all games in qix.c and thief.c. In thief.c there is game called Nato Defense that is changing resolution not also upon start or when switching from title to in game resolution but also during game in very bad fashion. Developers created "nice" shaking effect when you are loose like. Instead of moving graphics in code they wrote code that instantly switching resolution. In normal mame this will not affect gameplay but in groovymame this will force program to switch resolutions many times during shaking effect making whole sequence lasts instead 3 seconds a couple of minutes !!!
for this options will be
modeline_generation 0
switchres 0
resolution0 256x248@57
Naturally 256x248@57 must be created by VMMaker.
-
I think most has already been answered above, anyway...
1) Can i get the older games to output the correct resolutions? Should I move to SuperResolutions or should I leave well alone and be happy with 'almost perfect'?
GM is already using perfect resolutions for those games, not almost perfect. This has been explained hundreds of times: 224p-logical inside 240p-physical is the same as 224p-physical, borders will need to be added either way. PCBs did. So we just don't waste space in the mode table. Similar goes for MK, here VMMaker rounds the height to the nearest multiple, to keep the mode list reasonable. You can configure it for 1 line granularity if you like. GM just picks these modes because it understands how video timings work and knows there's no quality penalty. It is the only software out there that is capable of this. GM never does fractional stretching unless it's the only reasonable option.
2) Is there anything I can do about the higher resolution games flickering on my CRT? I expect I'm going to have to drop them but it would be a real shame. Why does JammaPlay say Rival Schools and Street Fighter EX2P should run at 255 x 255 but GroovyMAME thinks differently?
If you want to disable interlaced modes go into mame.ini and disable the interlace option, that's all. GM will then pick the best available mode from your progressive ones.
Get used to the fact that many games switch resolutions during game play. No information about resolutions on the internet is reliable because of this. GM knows what resolution is being requested by the emulated hardware at any time, so you can trust it.
Constant resolution switching on some emulated systems can slow down emulation dramatically, due to inefficient mode setting routines in today's video drivers and OSes. In those cases you can force a static resolution, usually the one used during the game itself rather than its initialization, etc.