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: Powerstrip Timing feature not working in GM 0.169 fix 3  (Read 4176 times)

0 Members and 1 Guest are viewing this topic.

sean_sk

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 144
  • Last login:August 06, 2019, 10:27:48 am
  • If quizzes are quizzical, then what are tests?
Powerstrip Timing feature not working in GM 0.169 fix 3
« on: January 07, 2016, 11:44:52 pm »
Hi Calamity,

I updated from GM 0.160 to GM 0.169 and have generated a new mame.ini. Running in Windows 7 with an ArcadeVGA 3000.

I use ps_timing feature to obtain correct timings for a few vertical games on a 15kHz horizontal monitor.

When I run 1942 in GM 0.169 I get the following error:  SwitchRes: missing parameter in user modeline 400,10,40,69,256,0,3,16,8564,534

GM 0.160 normally selects 400x256 and ps_timing string sets the game to run at 60 Hz vertical and 16.500 kHz horizontal.

I have attached a log and my ini files as well. From what I can tell, my ps_timing string is being ignored and GM is selecting 640x480 and ps_timing is based on that. Has the Powerstrip functionality changed since 0.160 and did I miss something in the release notes along the way?

Thanks for your help.




Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7463
  • Last login:July 19, 2025, 04:03:33 am
  • Quote me with care
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #1 on: January 08, 2016, 04:59:49 am »
I suspected this could happen. All the different video apis are now managed by a wrapper and the Powerstrip one had not been tested. I'm working on a fix.
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

sean_sk

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 144
  • Last login:August 06, 2019, 10:27:48 am
  • If quizzes are quizzical, then what are tests?
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #2 on: January 08, 2016, 05:04:33 am »
Thanks heaps for that! It's very much appreciated.

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7463
  • Last login:July 19, 2025, 04:03:33 am
  • Quote me with care
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #3 on: January 08, 2016, 08:33:25 am »
Uploaded new binaries "fix5", please check if it works there.
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

sean_sk

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 144
  • Last login:August 06, 2019, 10:27:48 am
  • If quizzes are quizzical, then what are tests?
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #4 on: January 08, 2016, 10:38:52 am »
Thanks Calamity. Yes it does work, thank you very much!

Just a minor thing. If I launch GM directly from Windows Explorer or Desktop and run any game, where I have specified Powerstrip setting in the games ini, and then exit the game, the desktop won't go back to 640x480 resolution. It stays at games resolution, ie 400x256. The exception to this is if I have specified the game resolution in the ini, ie added the resolution command.

If I launch game from Hyperspin and then exit back then all is fine and HS returns back to 640x480, mainly because I have that specified in HS settings.

As I mentioned this only occurs where I have specified ps_timing for the game.

The problem does not occur in GM 0.160. Is it possible to get desktop to return back to 640x480 upon game exit?

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7463
  • Last login:July 19, 2025, 04:03:33 am
  • Quote me with care
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #5 on: January 08, 2016, 11:05:57 am »
I don't seem to be able to reproduce the issue here. I'm double clicking on mame64.exe, and navigating the rom's menu to launch 1942. I have defined 1942.ini with a ps_string inside. Everything works as expected, on exit it goes back to the menu, then back to desktop at 640 x 480.
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

sean_sk

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 144
  • Last login:August 06, 2019, 10:27:48 am
  • If quizzes are quizzical, then what are tests?
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #6 on: January 08, 2016, 11:09:32 am »
OK. I'll have a look at my setup and see what my issue might be then. Thanks for letting me know.

sean_sk

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 144
  • Last login:August 06, 2019, 10:27:48 am
  • If quizzes are quizzical, then what are tests?
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #7 on: January 09, 2016, 08:04:12 am »
I don't seem to be able to reproduce the issue here. I'm double clicking on mame64.exe, and navigating the rom's menu to launch 1942. I have defined 1942.ini with a ps_string inside. Everything works as expected, on exit it goes back to the menu, then back to desktop at 640 x 480.

I've had some time to test things.

If I do the same as you and exit back to desktop it's stuck at 400x256. If I run mame.exe from commandline and exit back, then desktop goes back to 640x480. I noticed if I set desktop to highest possible resolution available, i.e. 800x600 and then double click mame.exe, select and launch 1942, then go back to desktop it will actually change back to 800x600. If I set desktop to any other resolution run mame and go back then it won't return back to the previously set desktop res.

If I use GM 0.160 then I don't have any of these problems. Could there be an issue with GM and my AVGA? Could it have something to do with the drivers?


On another note: I have noticed that switchres in GM 0.169 is reporting wrong horizontal frequency (and sometimes vfreq), mainly in vertical games where I have set ps_timing string, although it does in some horizontal games as well.

For example: 1942

Default timing string for 400x256 is 400,22,40,57,256,12,3,26,8071,534  based on what is set by AVGA. This should be Vfreq 52.360 Hz X 297 lines = Hfreq 15.551 kHz
If used in GM 0.160, switchres reports correctly. If used in GM 0.169, switchres reports Vfreq 60.000 Hz and Hfreq 16.620 kHz. Both are wrong. Powerstrip OSD reports correct refresh rates.

EDIT: I forgot to mention here that even though GM 0.169 is saying game is runnng at 60 Hz it is actually running at 52 Hz. Game is very slow :)

Custom timing string for 400x256, based on my own settings, is 400,10,40,69,256,0,3,16,8564,534. This should be Vfreq 60.000 Hz X 275 lines = Hfreq 16.500 kHz
If used in GM 0.160, switchres reports correctly. If used in GM 0.169, switchres reports Vfreq 60.000 Hz and Hfreq 16.620 kHz. Horizontal freq is wrong. Powerstrip OSD reports correct horizontal freq.

I have attached a log for each of the 4 scenarios. What do you think might be the problem?

As regards my first issue of desktop not changing back, is there any further info I can give you? Thanks for all your hard work.
« Last Edit: January 09, 2016, 08:20:32 am by sean_skroht »

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7463
  • Last login:July 19, 2025, 04:03:33 am
  • Quote me with care
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #8 on: January 09, 2016, 08:30:05 am »
Ok, I see the problem, we'll fix it when I have some time.

Could you please post a log of the situation where it gets stuck at 400x256? This one is going to be hard to fix.
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

sean_sk

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 144
  • Last login:August 06, 2019, 10:27:48 am
  • If quizzes are quizzical, then what are tests?
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #9 on: January 09, 2016, 05:15:29 pm »
Could you please post a log of the situation where it gets stuck at 400x256?

Yeah this is gonna be a tough one to do. :)

The problem doesn't manifest itself when Mame is run from commandline or even from a batch file.
If I run Mame executable directly or from a shortcut then the problem shows, but as soon as I add rom name and logging arguments to the shortcut the problem doesn't show itself when I exit.
I turned on verbose and logging in mame.ini, so I could run executable directly but the output in the log file was different to normal.

My sincere apologies for this dumbest of dumb questions, but is there something in the ini file I can set to output a log for 1942 so I can run .exe directly?

sean_sk

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 144
  • Last login:August 06, 2019, 10:27:48 am
  • If quizzes are quizzical, then what are tests?
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #10 on: January 24, 2016, 05:31:59 am »
My apologies for bringing bad news. I tried the final fix for GM 0.169 but the inaccurate refresh reporting still exists.

I'll try to provide as much info as I can, in case I'm doing something wrong and I'm not aware of it.

First off though, a little background information:
When I first set up Powerstrip, I created default profiles for all my resolutions (about 29 I think for the AVGA) but took the opportunity to center them horizontally and vertically and then saved them. Didn't alter timings or amount of lines and pixels. I've attached 400x256.txt to show the default for that res. When switching to 400x256 Powerstrip shows Vfreq 52.360 Hz and HFreq 15.551 kHz.

Anyway the same problem persists as mentioned in my previous post. I have attached logs for both the forced default timings and custom timings.

One new thing I have noticed is that if I remove the Powerstrip settings BUT have a custom crt_range then the problem is still there. So in the case of 1942 I still see (V) 60.000 Hz and (H) 16.200 kHz. I am unsure where switchres is getting that horizontal value from since AVGA default for 400x256 consists of 297 lines and my custom pstrip profile is 275 lines and neither correspond to that value. I would have to have 270 lines to get that horizontal refresh rate. Attached log with no pstrip settings. EDIT: I dont believe the game was running at 60 Hz. I think it was running slower but will have to check tomorrow. Forgot to do it.

If I change crt_range to arcade_15 then I get (V) 58.484 Hz and (H) 16.200 kHz, again both values don't seem to correspond from what I can tell, although I will admit my knowledge is limited. I have attached log for this as well with no pstrip settings.

It appears that refresh rates are changing as they should, it's just the reporting of them....I think. I rely alot on the information switchres provides in "Machine Information" as it lets me know whats going on.

Some good news: the problem I had with the desktop not returning to its original resolution upon Mame quit is fixed.
« Last Edit: January 24, 2016, 08:25:06 am by sean_skroht »

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7463
  • Last login:July 19, 2025, 04:03:33 am
  • Quote me with care
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #11 on: January 24, 2016, 03:05:47 pm »
Ok, I'm clearly seeing the issue. Don't worry because it's actually using your custom timings, it's only that the internal modeline generator is calculating its own modeline that's what you see on the Switchres caption but that's not actually used. I'll fix this problem.
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

sean_sk

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 144
  • Last login:August 06, 2019, 10:27:48 am
  • If quizzes are quizzical, then what are tests?
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #12 on: January 24, 2016, 11:15:24 pm »
Can't say thank you enough for all your hard work on Groovymame. This amazing piece of software brings a lot of joy to a lot of people. My cabinet wouldn't be what it is without GM.

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7463
  • Last login:July 19, 2025, 04:03:33 am
  • Quote me with care
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #13 on: January 27, 2016, 02:35:24 pm »
Hi sean_skroht,

Could you confirm if you're using the -refresh_dont_care option? From what I'm seeing in your log, this option is no longer required and is probably the cause of the issue.
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

sean_sk

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 144
  • Last login:August 06, 2019, 10:27:48 am
  • If quizzes are quizzical, then what are tests?
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #14 on: January 27, 2016, 05:14:38 pm »
Hi sean_skroht,

Could you confirm if you're using the -refresh_dont_care option? From what I'm seeing in your log, this option is no longer required and is probably the cause of the issue.

Yeah I am using it, as a throwback from ages ago. I didn't realize I didn't need to use it anymore. Thank you for letting me know. I will try with it off.

sean_sk

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 144
  • Last login:August 06, 2019, 10:27:48 am
  • If quizzes are quizzical, then what are tests?
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #15 on: January 27, 2016, 06:11:07 pm »
this option is no longer required and is probably the cause of the issue.

Well I can confirm this is the case.  :)  Once again, thank you very much Calamity.

Because I love knowing the technical side of this, why was refresh_dont_care originally needed for the ArcadeVGA and what changed in GM that no long required the use of this setting?
« Last Edit: January 28, 2016, 02:29:06 am by sean_skroht »

sean_sk

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 144
  • Last login:August 06, 2019, 10:27:48 am
  • If quizzes are quizzical, then what are tests?
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #16 on: January 28, 2016, 02:28:11 am »
Ok, so it seems that I need to disable refresh_dont_care for any games where I have specified pstrip values. Any games where I have not set any pstrip options (mainly horizontal games) then I need to enable it. Does that sound about right to you Calamity?

For example if I run "simpsons" with refresh_dont_care disabled then switchres reports (V) 61.000 Hz and (H) 0.000 kHz, whereas it should be (V) 59.186 and (H) 15.625 kHz. Attached log to confirm this. So basically I should enable Refresh_dont_care for anything where I haven't specified pstrip settings.
« Last Edit: January 28, 2016, 07:39:14 am by sean_skroht »

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7463
  • Last login:July 19, 2025, 04:03:33 am
  • Quote me with care
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #17 on: January 28, 2016, 08:07:54 am »
Yes, I'm seeing the problem, and I know what's happening. Hopefully I'll have a final fix for it soon.

The background of all this... the refresh_dont_care option was required with the ArcadeVGA at some point because all modes where reported as 60 Hz. This caused a problem with Switchres mode validation, because for instance 256p at 60 Hz is beyond the limits of most arcade monitors, so what the refresh_dont_care option basically does is telling GroovyMAME the the refresh is editable, so Switchres goes on an calculates a modeline within the limits of your monitor range, although it's never applied, but it allows for the calculation of the rest of scaling options, etc. So it's sort of a hack of Switchres' own rules to be able to accommodate ArcadeVGA's quirks. Now it looks like the new ArcadeVGA no longer reports 60 Hz for all modes, so the refresh_dont_care option is no longer needed. Besides, when you specify a ps_timing string, refresh must be considered non-editable (you're already providing it in your modeline), so forcing refresh_dont_care forces Switchres to calculate its own modeline, the one you see reported on the UI, even if (again) it's not finally applied.

As for Powerstrip not working when no ps_string is force and refresh_dont_care isn't used, this is a separate issue: all modes should be marked as refresh-editable when -ps is enabled, except when you specify a ps_timing string. Currently this is not done, and that's the issue. I've refactored the custom modes code to be api independent, and this (unavoidably) has caused issues which I'm still ironing out. Before, ATI and Powerstrip had different code paths. This is something I wanted to fix since long. Now, because we have a new api (ADL), I've finally separated the main Switchres code from its different API implementations, currently ATI legacy, AMD ADL, and Powerstrip. There's still a separate API for Linux, Xrandr, which I want to join in the same way, but that's going to break all imaginable things so I'll do it when I'm morally ready.

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

sean_sk

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 144
  • Last login:August 06, 2019, 10:27:48 am
  • If quizzes are quizzical, then what are tests?
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #18 on: January 28, 2016, 08:39:56 am »
Thank you very much for the explanation and for looking into it further. As for the fix, there's certainly no hurry as the current implementation is certainly easy to work with, until a fix is available. Thanks to your explanation, all I need to do is disable refresh_dont_care for pstrip defined game ini's that I've created, and globally enable it for all my horizontal games and that way every game reports its correct refresh rate. That'll certainly get me by in the meantime.

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7463
  • Last login:July 19, 2025, 04:03:33 am
  • Quote me with care
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #19 on: February 19, 2016, 08:11:52 am »
The other day I tried to fix this once and for all, but surprinsingly I couldn't replicate your results. Then I looked more carefully at your last simpsons logs, and it turns out you weren't actually using the -ps option. So the issue was actually solved already :)

(anyway I believe you've moved to CRT Emudriver since then)
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

sean_sk

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 144
  • Last login:August 06, 2019, 10:27:48 am
  • If quizzes are quizzical, then what are tests?
Re: Powerstrip Timing feature not working in GM 0.169 fix 3
« Reply #20 on: February 19, 2016, 08:49:16 am »
 Thanks for looking into that. :D

The simpsons log was just me complicating the situation further unfortunately. Just wanted to show what happened when -refresh_dont_care was disabled for a game that didnt have a PS timing string specified, since we established that -refresh_dont_care being enabled was causing issues for games that DID have PS timing string. Phew!! Sorry about that.

Yeah Im currently testing CRT Emudriver and swapping between three video cards including AVGA testing various options. Gets mentally draining after awhile.
« Last Edit: February 19, 2016, 09:01:40 am by sean_skroht »