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: Differnt resolutions cause squishing  (Read 2509 times)

0 Members and 1 Guest are viewing this topic.

bernieberg

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 13
  • Last login:November 11, 2020, 04:28:11 pm
Differnt resolutions cause squishing
« on: June 29, 2019, 12:16:05 pm »
Hello,

I have a 25k7191 monitor, and am using groovy arcade installed on my hard drive.  If I adjust the monitor for horizontal games (and advmenu) it looks good, but then bottom part of vertical games is cut off (you can't see the credits or fruit in pacman).  Or, if I adjust the monitor so I can see everything in vertical games, then horizontal games are squished.  Is there a way around this?  Attached are a couple pictures with the monitor adjusted for vertical games.

Thanks!

bernieberg

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 13
  • Last login:November 11, 2020, 04:28:11 pm
Re: Differnt resolutions cause squishing
« Reply #1 on: June 29, 2019, 12:35:56 pm »
I tried adjusting the monitor for horizontal games, and then using the groovymame adjustment sliders in the vertical game.  I can get it to fit, but it skips lines and looks pretty bad.

Sledge

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 495
  • Last login:September 25, 2022, 05:22:55 am
Re: Differnt resolutions cause squishing
« Reply #2 on: June 29, 2019, 07:22:26 pm »
you can make it so the games like pacman use an interlaced resolution, or adjust the V-size pot each time to suit.
I have a small screw driver going through a hole in my bezel that site in the pot for this reason.. really easy to adjust
« Last Edit: June 30, 2019, 08:40:40 pm by Sledge »

bernieberg

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 13
  • Last login:November 11, 2020, 04:28:11 pm
Re: Differnt resolutions cause squishing
« Reply #3 on: June 30, 2019, 09:26:30 am »
How do I adjust the resolution for just a specific type of game?

Thanks,

krick

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2006
  • Last login:February 08, 2023, 08:30:27 pm
  • Gotta have blue hair.
Re: Differnt resolutions cause squishing
« Reply #4 on: June 30, 2019, 08:24:48 pm »
When trying to run vertical games on a horizontal monitor, there is no magic setting in software that will do what you want other than possibly forcing all vertical games in a higher fixed interlaced resolution using a custom vertical.ini file.  But that comes with its own set of problems.

What you're experiencing is a hardware problem and the only way to fix it is with a hardware solution.  Adjusting the vertical size pot on the monitor for each game is the only solution.

However, that said, I've thought about trying to build a small circuit with a toggle switch that I can use to replace the vertical size pot.  The idea is that when the switch is in one position, the pot acts as normal (horizontal games) and in the other position, it adds an additional resistor into the circuit that adjusts the vertical size for horizontal games.

I think it could work but I haven't actually tried it yet.  Also, I'm not sure if the vertical setting needs more resistance or less resistance than the horizontal setting, so I may have the design reversed.

Anyway, the end goal would be to have a single toggle switch to go between horizontal and vertical.

It's probably not going to be a one-size-fits-all solution, but It could be pretty close.

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

bernieberg

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 13
  • Last login:November 11, 2020, 04:28:11 pm
Re: Differnt resolutions cause squishing
« Reply #5 on: June 30, 2019, 11:17:34 pm »
When trying to run vertical games on a horizontal monitor, there is no magic setting in software that will do what you want other than possibly forcing all vertical games in a higher fixed interlaced resolution using a custom vertical.ini file.  But that comes with its own set of problems.

Thanks Krick and Sledge.  That makes a lot of sense.  I have worked a lot with mame over the years, but not much with arcade monitors, so this is a little bit of a learning process.

I figured out how to set the interlaced resolution.  I ran "groovymame -verbose pacman > pacman.txt" to get the resolution.  Which was something like 288x224@60.  I then created a pacman.ini in the same directory as the vector.ini and added:

resolution 576x448@60

which is x2 the native resolutions.  This seems to have forced groovymame to interlace the video, and it now fits fine when I have the monitor adjusted for the horizontal games.  It is not pixel perfect and is kinda fuzzy, but I think it will work for my purposes.

Thanks again for your help.

--
bernie

krick

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2006
  • Last login:February 08, 2023, 08:30:27 pm
  • Gotta have blue hair.
Re: Differnt resolutions cause squishing
« Reply #6 on: July 01, 2019, 01:24:11 am »
There's probably a better, more automatic way of doing what you're doing with pacman.

I think there's a way to change a custom GroovyMAME definition for your monitor so that it limits the number of vertical lines in non-interlaced resolutions, that will force GroovyMAME to automatically pick an appropriate interlaced resolution for all vertical games without you needing to create custom ini files for every vertical game.

I'm sure I've seen a post explaining how to do that before but I can't find it at the moment.  I'll keep looking.

The whole point of GroovyMAME is to avoid having to create custom per-game ini files.  Don't fight it.  :)
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

PL1

  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Online Online
  • Posts: 9402
  • Last login:Today at 06:10:14 pm
  • Designated spam hunter
Re: Differnt resolutions cause squishing
« Reply #7 on: July 01, 2019, 03:59:31 pm »
I've thought about trying to build a small circuit with a toggle switch that I can use to replace the vertical size pot.  The idea is that when the switch is in one position, the pot acts as normal (horizontal games) and in the other position, it adds an additional resistor into the circuit that adjusts the vertical size for horizontal games.

I think it could work but I haven't actually tried it yet.  Also, I'm not sure if the vertical setting needs more resistance or less resistance than the horizontal setting, so I may have the design reversed.

Anyway, the end goal would be to have a single toggle switch to go between horizontal and vertical.
It might be easier to wire Vcc and ground for two (or more) pots in parallel and switch between the wipers using a toggle or rotary switch.
- Adjusting one pot won't change the output of the other pot(s).   ;D
- Each pot you add in parallel will increase the current draw of the circuit by the same amount as the original pot.
-- Calculate the current draw of the original pot using Ohm's Law (I = E / R) ==> Amps = Volts / Ohms
- Check with the monitor experts to verify if the additional current draw will cause problems with the vertical size circuit.   :dunno
- Using a "make before break" switch will avoid a momentary 0v spike while switching.
-- 3v to 3.2v with a standard "break before make" switch will output 3v (first pot), 0v (no connection while switching), then 3.2v (second pot)
-- 3v to 3.2v with a "make before break" switch will output 3v (first pot), 3v or 3.1v (don't remember if it's the lowest or average value of the two pots in parallel while switching), then 3.2v (second pot)

If you want to get fancy, maybe use an arduino and relay board to automatically switch to the desired pot when the game is launched via front end.


Scott

krick

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2006
  • Last login:February 08, 2023, 08:30:27 pm
  • Gotta have blue hair.
Re: Differnt resolutions cause squishing
« Reply #8 on: July 01, 2019, 06:51:20 pm »
If you want to get fancy, maybe use an arduino and relay board to automatically switch to the desired pot when the game is launched via front end.

How about an all-hardware solution where it "sniffs" the video signal and detects that you're trying to output something over/under a certain number of lines and triggeres the relay appropriately.

I don't know what "sniff the video signal" actually entails but I assume it could be done similar to the way that the JPAC detects out-of-range signals.
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: Differnt resolutions cause squishing
« Reply #9 on: July 01, 2019, 06:55:15 pm »
EDIT:  The link I had posted here was talking about a different issue so I removed it.  I'll keep looking for a better link on how to modify the monitor settings to force vertical games to use an interlaced mode.
« Last Edit: July 02, 2019, 09:49:16 am by krick »
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

PL1

  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Online Online
  • Posts: 9402
  • Last login:Today at 06:10:14 pm
  • Designated spam hunter
Re: Differnt resolutions cause squishing
« Reply #10 on: July 01, 2019, 09:10:09 pm »
How about an all-hardware solution where it "sniffs" the video signal and detects that you're trying to output something over/under a certain number of lines and triggeres the relay appropriately.
Designing a video sniffing circuit for this application is massive overkill IMHO.   :o

Even the Arduino + relay board option is at the outer edge of suitability, depending on whether or not the relay switching time 0v spikes could damage your monitor.  The relays I've seen are all "break before make".

If that isn't an issue, I was thinking more of using the front end to launch a .bat file containing two commands when a vertical game is launched -- the first to energize the desired vertical relay and the second to energize the horizontal relay.
- The horizontal relay should be wired with COM going to the VSize circuit, NC connected to the Horizontal 1 pot wiper, and NO connected to COM on the three vertical pots.
- The vertical relays would have the related pot's wiper connected to NO.
- When booting up, the horizontal relay won't be energized, so the wiper from the Horizontal 1 pot on NC goes through COM to the VSize circuit.

When you exit the game, have the FE send a command to de-energize all relays and you're back to Horizontal 1 pot for VSize.
-----------------
4-pot setup:
- Horizontal 1
- Vertical 1 (adjust for shortest game -- max vertical stretch)
- Vertical 2 (adjust for a "happy medium")
- Vertical 3 (adjust for tallest game -- min vertical stretch)
-----------------
It would be a whole lot easier to use a 4-position "make before break" rotary switch.   ;D
- Launch vertical game.
- Swich from Horizontal 1 to Vertical 1.
- If the picture is too clipped, switch to Vertical 2.
- If the picture is still too clipped, switch to Vertical 3.


Scott

krick

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2006
  • Last login:February 08, 2023, 08:30:27 pm
  • Gotta have blue hair.
Re: Differnt resolutions cause squishing
« Reply #11 on: July 01, 2019, 10:24:53 pm »
It would be a whole lot easier to use a 4-position "make before break" rotary switch.   ;D
- Launch vertical game.
- Swich from Horizontal 1 to Vertical 1.
- If the picture is too clipped, switch to Vertical 2.
- If the picture is still too clipped, switch to Vertical 3.

That's a pretty good solution and probably a lot more useful than my two-position toggle.  Hook each position up to a trim pot so that you could dial in the perfect settings for that position.

Speaking of the whole make-before-break thing...  can't you add capacitors into the circuit to smooth out the spikes?  It's been a looooooonnnnng time since my electronics classes back in community college.
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

PL1

  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Online Online
  • Posts: 9402
  • Last login:Today at 06:10:14 pm
  • Designated spam hunter
Re: Differnt resolutions cause squishing
« Reply #12 on: July 02, 2019, 01:54:19 am »
can't you add capacitors into the circuit to smooth out the spikes?
Yes, and your chassis' VSize circuit may already have one.  I leave that determination to the monitor gurus.

I'm just recommending the simplest hardware that's most likely to avoid a worst case outcome for the largest number of configurations.   :angel:


Scott

bjt42

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 39
  • Last login:February 03, 2022, 06:24:37 am
  • I want to build my own arcade controls!
Re: Differnt resolutions cause squishing
« Reply #13 on: July 02, 2019, 05:00:02 am »
No need for any mechanical relays, use a digital potentiometer.

To be honest though, vertical games on a horizonal monitor will never be great, not least because the dot pitch will struggle to resolve 288 vertical lines. I found the best solution was to alter the monitor definition in mame.ini to force all games over 255 lines to run interlaced. I set the vertical size so that 240 height games fill the screen, 256 height games (IREM) are slightly overscanned and 224 height games (Capcom) are slightly underscanned. You can see it in operation here: