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 writeup  (Read 124966 times)

0 Members and 1 Guest are viewing this topic.

menace

  • Trade Count: (+5)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2564
  • Last login:September 18, 2023, 10:57:06 am
Powerstrip writeup
« on: September 29, 2005, 08:51:08 am »
Do you guys think it would be a valuable addition tot he FAQ to have a writeup on how to setup and configure powerstrip or is this considering a niche process?  If we think it would be a good idea--is anyone willing to take this on?  I have never worked with it so I wouldn't do it justice I'm sure.

thoughts?
its better to not post and be thought a fool, then to whip out your keyboard and remove all doubt...

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #1 on: September 29, 2005, 11:22:38 am »
Here is a start

1. Windows XP on arcade monitor.

The aim om this guide is to setup an environment where applications running under Windows XP (including the desktop) works together with a low-res arcade monitor. It should be noted that even if applications such as word processing, internet surfing etc can be run on a low-res monitor, the picture quality (i.e. interlace flicker) is not suitable for longer periods of time. Games and movies does not suffer from this and works fine.

The guide only deals with the software involved. I use Ultimarc's J-PAC to connect my monitor to the graphics card but that is not necessary.

2. Software used.

In theory, no special software is required to run windows on an arcade monitor. The normal graphic card driver is fully cabable of outputting the correct signals for the monitor. However, the graphic card driver doesn't normally include a user interface for setting up resolutions outside the standard 640x480, 800x600 etc. To avoid messing with windows registry settings this guide uses a tool "powerstrip" from EntechTaiwan.com. There are other tools available but I have not tested them.

PowerStrip got 2 functions that we will use here:
1. It allows you to create custom resolutions and tweak existing resolutions via a graphical user interface.
2. It can automatically change the timing of the display whenever it changes. E.g. when a game asks for a VGA resolution (640x480), powerstrip will automatically convert it into a resolution that works with the arcade monitor (640x480 interlaced).

3. Step-by-step guide

3.1 Install PowerStrip
Just download the trial version from www.entechtaiwan.com and run. The trial
version is fully functional but got a time limit (365 days) and a nag screen.

3.2 Verify that your graphic card driver works with an arcade monitor.
Obviously you need a VGA monitor to perform these actions.
(If any of the items mentioned below isn't available, your graphcs card/driver doesn't support custom resolutions. Not much to do but get another graphic card)
1. Right-click on the powerstrip icon in the taskbar and select Display Properties/Change
2. Click on advanced settings
3. Click on "Custom Resolutions".
4. Go all the way down in the list of resolutions to the one that is labelled "640x480i (arcade)".
5. Select it and click on "add new resolution".
6. Powerstrip will now ask for confirmation and then switch to the new
« Last Edit: October 02, 2005, 01:35:31 pm by wpcmame »

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #2 on: September 29, 2005, 05:21:14 pm »
Here are the values for the AVGA resolutions (with doubled horizontal resolution)

How to use them:
1. Close powerstrip
2. Open the file powerstrip.ini
3. Add the following lines under the [Custom Resolutions] heading.
(If the heading doesn't exist, just create it at the end of the file)

[Custom Resolutions]
480x240=480,16,48,32,240,4,3,15,9072,7
512x240=512,16,48,40,240,4,3,15,9702,7
512x256=512,16,48,40,256,4,3,17,9702,7
512x264=512,16,48,40,264,5,3,17,9702,7
576x240=576,8,56,48,240,4,3,15,10836,7
592x240=592,16,56,48,240,4,3,15,11214,7
608x240=608,16,64,40,240,4,3,15,11466,7
768x240=768,16,80,56,240,4,3,15,14490,7
640x240=640,16,64,48,240,4,3,15,12096,7
640x256=640,16,64,48,256,4,3,17,12096,7
672x240=672,16,64,56,240,4,3,15,12726,7
704x256=704,24,72,48,256,4,3,17,13356,7
704x264=704,24,72,48,264,5,3,17,13356,7
704x288=704,24,72,48,288,5,3,19,13356,7
736x240=736,16,72,56,240,4,3,15,13860,7
784x240=784,24,80,56,240,4,3,15,14868,7
768x288=768,16,80,56,288,5,3,19,14490,7
424x272=424,16,40,32,272,4,3,18,8064,7
448x240=448,8,48,32,240,4,3,15,8442,7
512x240=512,16,48,40,240,4,3,15,9702,7
512x288=512,16,48,40,288,5,3,19,9702,7
632x264=632,16,64,48,264,5,3,17,11970,7
640x288=640,16,64,48,288,5,3,19,12096,7
800x288=800,24,80,56,288,5,3,19,15120,7

4. Save the file and start powerstrip
5. Go to to the "Custom resolutions" window.
6. Select "user defined" resolutions.
7. Mark all resolutions in the window
8. Click "add resolution" and restart windows if necessary.

All resolutions should now be available. To test them:
mame gauntlet -resolution 672x240

To change the windows desktop to one of these resolutions use the right slider in powerstrip. (The resolution will not be available in Windows' display properties)

This procedure worked for me with both a Radeon9200SE and a GeForce2.

Silver

  • Wiki Contributor
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1668
  • Last login:February 17, 2024, 10:29:00 am
  • Cunning like the Fox.
    • Mods'n'Mods
Re: Powerstrip writeup
« Reply #3 on: September 30, 2005, 09:57:31 am »
First off - Excellent write up and very informative.... I've finally mastered the quirky art of powerstrip, but there lots of stuff I didn't know - such as the minlines= option. Very helpful.

I was starting to build up some resolutions for testing (I have an odd monitor I'm tresting the limits of), based on MonitorGuru's excellent list of used Mame resolutions:

http://forum.arcadecontrols.com/index.php?topic=42485.0

Although you could have saved a lot of work here. I'm also assuming that once this is setup you need to tell mame which resolution to use for which game - I believe there are a couple of utils available to do this....

Quote
3. A mame game displayed at 672x240 instead of 336x240 makes no difference in the pixture. The images will look exactly the same (yes, exactly).

Can't test at the moment, but how does this work exactly? Are you not streching the screen size out? Does mame only use some of the screen? (What stretching settings are you using?)

MonitorGuru

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 774
  • Last login:October 05, 2005, 11:29:43 pm
Re: Powerstrip writeup
« Reply #4 on: September 30, 2005, 10:11:16 am »
Excellent write up.  I havn't used windows to run mame or powerstrip but this is very helpful for those that do.  Thanks for the effort.

Silver

  • Wiki Contributor
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1668
  • Last login:February 17, 2024, 10:29:00 am
  • Cunning like the Fox.
    • Mods'n'Mods
Re: Powerstrip writeup
« Reply #5 on: September 30, 2005, 11:29:16 am »
In fact this should go into some kind of FAQ - there always loads of "help me with powerstrip" questions around.

The only thing I could suggest is advice for getting out of the situation where you can't see the picture. Ctrl-Alt-S for some reason does not always work on my machine, I have no idea why. I've got out of the problem my using VNC - just logging in from another machine, and changing the settings that way.

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #6 on: October 01, 2005, 03:50:18 am »
Although you could have saved a lot of work here. I'm also assuming that once this is setup you need to tell mame which resolution to use for which game - I believe there are a couple of utils available to do this....
For most games you don't need to specify anything. A resolution with double horizontal resolution is preferred as second best choise by mame (after the one with exact resolution). The AVGA resolution tool might work as well if it can read resolutions from a configuration file. The good thing with the powerstrip solution (compared to AVGA) is that it is easy to add a new resolution if needed.

I choosed a different approach and modified the mame source so that it reads a resolution based ini file at startup, e.g. 336x240H.ini. That way I can set options (resolution, syncrefresh, stretch etc) for each resolution instead of for each game. I did submit the patch to mame a long time ago but I guess they didn't see the need.

Quote
3. A mame game displayed at 672x240 instead of 336x240 makes no difference in the pixture. The images will look exactly the same (yes, exactly).
Quote
Can't test at the moment, but how does this work exactly? Are you not streching the screen size out? Does mame only use some of the screen? (What stretching settings are you using?)
The theory is the following: the monitor is an analog device which knows nothing about pixels. It only gets information from the graphic card saying that this area should be blue. If the signal from the graphic card comes from a single wide blue pixel or two thinner consecutive blue pixels doesn't matter.

MAME will automaticly stretch the image by doubling each pixel. By default there are probably some filtering made which might distort the image slightly (haven't checked). You can turn the filtering of by either turning hardwarestrecth off "-nohws" or use direct3d.

desmatic

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 216
  • Last login:June 25, 2006, 02:25:53 pm
    • Easy MameCab
Re: Powerstrip writeup
« Reply #7 on: October 01, 2005, 05:04:22 am »
hey wpcmame, what the heck does the 7 stand for at the end of each modeline entry. 

If you post the complete syntax for a powerstrip entry, I'll add it to lrmc so that you don't have to manually edit the output. 

There's also a new feature in the version I'm currently debugging that will calculate all mame modelines using the mame --listxml option, so given the right syntax and the right configuration, you can calculate all mame modelines using one simple command like

lrmc mamelist.xml -cga --highpclock > modelinelist

« Last Edit: October 01, 2005, 05:07:35 am by desmatic »

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #8 on: October 01, 2005, 02:42:52 pm »
hey wpcmame, what the heck does the 7 stand for at the end of each modeline entry.

desmatic

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 216
  • Last login:June 25, 2006, 02:25:53 pm
    • Easy MameCab
Re: Powerstrip writeup
« Reply #9 on: October 02, 2005, 12:26:32 pm »
Thanks.  I'll add it to the next revision, which will hopefully be up by the end of the week.

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #10 on: October 02, 2005, 01:45:48 pm »
Has anyone tried the procedure above and can confirm that it works for others? Anything that needs better description?

Maybe a quick guide could be added like:
1. install powerstrip
2. Edit inifile and add resolutions
3. Add custom resolutions
4. run mame.

If it works it shouldn't take anyone more than 10 minutes to have something that works like the AVGA (except the boot screen of course).

What I didn't mention above is that if you choose a custom resolution as desktop (e.g. 640x288, 768x576) you don't need powerstrip at all once everything is working  Windows will automaticly use the custom resolution timing on startup. This is specially useful if you use the trial version with the nagscreen.

Silver

  • Wiki Contributor
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1668
  • Last login:February 17, 2024, 10:29:00 am
  • Cunning like the Fox.
    • Mods'n'Mods
Re: Powerstrip writeup
« Reply #11 on: October 06, 2005, 08:56:19 pm »
Yes I was going to ask - once powerstrip adds resolutions to the registry, is it required at all or can windows just go off the reg settings?

In terms of a setupguide, I imagine the abilities of the monitor used may have an impact.... What horizontal/vertical scan frequencies do those doubled modes generate?

Afraid I've had to pack up my mulitsync and am back on a flatscreen so can absolutely no testing otherwise I'd be on it.

dabone

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 898
  • Last login:October 31, 2023, 12:03:37 pm
  • Time to work...
Re: Powerstrip writeup
« Reply #12 on: October 06, 2005, 10:21:56 pm »
Tried this a couple of nights ago, and couldn't get any games looking great.

The modes were added correctly, but the hwstretch function made everything blurry.
(think of turning the focus on the monitor just a hair off)
It's not that easy to see, but if you have a arcadevga card system next to a powerstrip system, the difference is VERY noticable.
You can tell the cards are doing some AA to the pic and it blurs them out.

Turning hwstretch off gave a sharp pic, but is was shrunken horziontaly.
Also, nohws (No hardware stretch) is incredibly slow.


This was tested with a radeon 9600 pro and a Geforce 5200, both 128 meg agp cards.

The motherboard was a biostar ideq system (linky http://www.biostar-usa.com/ideqdetails.asp?model=ideq+210p

With a semperon 3100 cpu and a gig of ram, windows xp pro.


I cheated and have been doing my testing on a d9200, so I have the full range 15/25/31.5 to play with.
The modes are well and good, but without a way to fill the screen WITHOUT AA on the image, it's not going to look like a avga.

The avga looks so good because to use it correctly, you DISABLE hws in mame.


Later,
dabone




wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #13 on: October 07, 2005, 03:45:43 am »
The modes were added correctly, but the hwstretch function made everything blurry.
(think of turning the focus on the monitor just a hair off)
It's not that easy to see, but if you have a arcadevga card system next to a powerstrip system, the difference is VERY noticable.
You can tell the cards are doing some AA to the pic and it blurs them out.
That is known problem with directdraw. Mame added the option to use d3d just beacuse of that.

Don't remember the options right now but I think it is
-d3d -flt 0
(could be that you need -d3dprescale  as well)

Quote
Turning hwstretch off gave a sharp pic, but is was shrunken horziontaly.
Strange, mame should use software stretch then.
Quote

Also, nohws (No hardware stretch) is incredibly slow.
Even more strange. Why would it be slower if the image isn't stretched at all?

dabone

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 898
  • Last login:October 31, 2023, 12:03:37 pm
  • Time to work...
Re: Powerstrip writeup
« Reply #14 on: October 07, 2005, 10:00:30 am »
I'll give those options a try this weekend and report back on how it looks.


Later,
dabone


P.S. I've got access to alot of different cards/chipsets.

Currently in stock,
ATI X300, X550, 9200, 9600 Pro, 9550, 7000.
Nvidia Geforce MX4000, 5200, 6600,

Anyone have a particular one that they would like tested?


Silver

  • Wiki Contributor
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1668
  • Last login:February 17, 2024, 10:29:00 am
  • Cunning like the Fox.
    • Mods'n'Mods
Re: Powerstrip writeup
« Reply #15 on: October 07, 2005, 10:02:50 am »
If you disable hws in mame to get great results with an Avga, how can it suddenly be slow with no hws with another card? Maybe there is some other setting?

Not sure what -flt option is - does not seem to exist for me, unless its abbreviated. Could be the -d3dfilter...?

relevant settings from mame.ini:

ddraw                 0
direct3d              1
hwstretch           0
cleanstretch        none
effect                  none
screen_aspect           4:3

### Windows Direct3D 2D video options ###
zoom                    1 (this defaults to 2, try 1.. should be 1:1 zooming?)
d3dtexmanage     1
d3dfilter                0  (this is filtering which will have a blur effect - try 0)
d3dfeedback             0
d3dscan                 100
d3dprescale             none (try 'none' to disable - this is for scaling up)
d3deffect               none
# d3dcustom             <NULL> (not set)
# d3dexpert             <NULL> (not set)



EDIT: d3dfilter   1 (default) has a massive effect. It's bilinear filtering, and smooths the entire screen. Great for running lo-res games at something higher, but based on what we are trying to do here, this should be 0 to make everything nice and blocky....right?

As for cards - I'm interested in the radeon 9xxx series as they are completely unviable with Advancemame and windows.
« Last Edit: October 07, 2005, 10:13:00 am by Silver »

dabone

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 898
  • Last login:October 31, 2023, 12:03:37 pm
  • Time to work...
Re: Powerstrip writeup
« Reply #16 on: October 07, 2005, 03:53:43 pm »
Quote
If you disable hws in mame to get great results with an Avga, how can it suddenly be slow with no hws with another card? Maybe there is some other setting?

I was trying to use clean stretch with hws disabled.

The avga is fast because there is no stretching going on, hardware or otherwise.


I've been playing on my desktop machine with the d3d and flt options.

These setting seem to get rid of the aa in the filter.
Quote
### Windows video options ###
autoframeskip           1
frameskip               0
waitvsync               0
triplebuffer            0
window                  0
ddraw                   0
direct3d                1
hwstretch               1
# screen                <NULL> (not set)
cleanstretch            auto
resolution              auto
refresh                 0
scanlines               0
switchres               1
switchbpp               1
maximize                1
keepaspect              1
matchrefresh            0
syncrefresh             0
throttle                1
full_screen_brightness   0.000000
frames_to_run           0
effect                  none
screen_aspect           4:3

### Windows Direct3D 2D video options ###
zoom                    2
d3dtexmanage            1
d3dfilter               0
d3dfeedback             0
d3dscan                 100
d3deffectrotate         1
d3dprescale             auto
d3deffect               none
# d3dcustom             <NULL> (not set)
# d3dexpert             <NULL> (not set)

Tomorrow, I'll try it on the 9200.

(In the office I just use a 640x240 resolution to test)


Later,
dabone

Silver

  • Wiki Contributor
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1668
  • Last login:February 17, 2024, 10:29:00 am
  • Cunning like the Fox.
    • Mods'n'Mods
Re: Powerstrip writeup
« Reply #17 on: October 07, 2005, 09:11:55 pm »
Let us know how it goes. Seeing as you have a 9200 I'd be interested to hear the results of both 320x240 and 640x240 compared.....(see if there is a noticeable difference or not).

Might be worth playing with the d3dzoom number as well (try 1 instead of 2) although this may have no effect if you are specifiying a resolution.

I don't believe cleanstretch has any effect with hardwarestretch off (clean stretch just restricts the stretching to positive integers)

desmatic

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 216
  • Last login:June 25, 2006, 02:25:53 pm
    • Easy MameCab
Re: Powerstrip writeup
« Reply #18 on: October 08, 2005, 04:54:17 pm »
hey wpcmame, what the heck does the 7 stand for at the end of each modeline entry. 
This is what it says in the powerstrip FAQ

*Timing string parameter definition:
 1 = horizontal active pixels
 2 = horizontal front porch
 3 = horizontal sync width
 4 = horizontal back porch
 5 = vertical active pixels
 6 = vertical front porch
 7 = vertical sync width
 8 = vertical back porch
 9 = pixel clock in hertz
10 = timing flags, where bit:
     1 = negative horizontal porlarity
     2 = negative vertical polarity
     3 = interlaced
     5 = composite sync
     7 = sync-on-green
     all other bits reserved

(Note that flag bit 0 is reserved and that pixel clock is expressed in Khz not hertz)





Ok, I've done some more reading.  I read the faq entry that you're referring to, searched the forums, and googled for more info, but I still haven't been able to figure out how to calculate the last column.  From my research I'm guessing it's a 12 bit number with a few bits that are configurable, however, without knowing what the first bit should be, I really can't do anything.  In some configuration files i've found on the net, it's turn on (like in yours) but in most it's turned off.  I also can't find any info on doublescan modes. 

So the big question is, and I'm not expecting any one to know the answer to this:  should I set the first bit to, 1 or 0?  Based on your config file I was going to set it to 1.  Any ideas?

I've finished writing the next version of lrmc and was hoping to post the binaries today, but I just wanted to post first in case anyone knew anything.

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #19 on: October 09, 2005, 10:54:21 am »
[quote author=desmatic link=topic=43728.msg414512#msg414512 Ok, I've done some more reading.

dabone

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 898
  • Last login:October 31, 2023, 12:03:37 pm
  • Time to work...
Re: Powerstrip writeup
« Reply #20 on: October 11, 2005, 12:07:41 pm »
I've run into a dead end with my testing.

Apparently mame DOES NOT support stretching in just one direction.

Take for example defender.

294x239

this would take a 588x239 screen to avoid any stretching artifacts.

The closest we have here is 592x240. Now mame will try to fill that entire screen, INCLUDING THE ONE MORE SCANLINE... so vertical is screwy and the horz is scaled wrong also.

It's basically like this with any game that is not exactly 2x1.

Anyone want to modify mame to allow 2:1 horz stretching while leaving the vertical alone?


Later,
dabone


Silver

  • Wiki Contributor
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1668
  • Last login:February 17, 2024, 10:29:00 am
  • Cunning like the Fox.
    • Mods'n'Mods
Re: Powerstrip writeup
« Reply #21 on: October 11, 2005, 08:07:30 pm »
this would take a 588x239 screen to avoid any stretching artifacts.

The closest we have here is 592x240. Now mame will try to fill that entire screen, INCLUDING THE ONE MORE SCANLINE... so vertical is screwy and the horz is scaled wrong also.

Surely we would not want any stretching here. A unstretched 588x239 on a 592x240 would look fine (virtually unnoticable borders...).

Of course, when I say turn off streching, I'm going on what was mentioned above that 588 horizontal produces the same output as 244. But I have a feeling you are going to tell me that if you turn the streching off it only feels half the screen horizontally?

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #22 on: October 12, 2005, 06:44:17 am »
Anyone want to modify mame to allow 2:1 horz stretching while leaving the vertical alone?
I have made such a modification.

The intention was to correct the the obviously broken aspect calculations in mame but that turned out to be more or less impossible.

The problems are:
1. MAME core is carrying around a load of old wrong data. (Thats the only explanation I can find for the "VIDEO_PIXEL_ASPECT_RATIO_1_2" flag. Almost every resolution in mame got a unique pixel aspect ratio, why does 1:2 and 2:1 need special care)

2. Misunderstandings. E.g. the windows.txt file contains the following description:
-screen_aspect

   Give a screen aspect ration in the form X:Y where X is the horizontal
   and Y the vertical part. Examples are 4:3 for most resolution settings
   on computer monitors, 5:4 for the 1280x1024 resolution or 3:4 for
   turnable LCD's in the turned position. The default is 4:3.

I wonder if the mamedevs think that your monitor magicly changes shape when you select the 1280x1024 resolution. As it is written, you should use differnt screen_aspects for every AVGA resolution.

3. The games aspect ratio is calculated differently depending on if hardware stretch is used or not. I have no idea why. It is done in several places so I assume it is intentional. (For hardware stretch the aspectx & aspecty values in the driver is used but for software stretch the aspect ratio is sizeX/SizeY)

4. Artwork uses a fixed 1:1 pixel aspect ratio so it will not display correctly on a properly setup monitor. (The "hole" in the artwork for the game display got correct proportions only if 1:1 pixels are used. You can easily see this if you look at the space invaders backdrop on an arcade monitor. The moon is shaped like an egg.)
I have been thinking of ways to convert the artwork code but my head starts spinning from all coordinate systems involved :-)

5. Automatic resolution selection only looks at the distance from the native resolution when picking. This means that doublesized resolutions are not considered since they are 100% off.

Anyway,

What I have done so far is:
- Corrected code in mame so that the game is scaled to display with the correct aspect ratio regardless of resolution. Using "-cleanstretch full" will use integer scaling to get as close to correct aspect ratio as possible.

There is a sideeffect to this which is kind of tricky to explain.
Lets take pacman as an example. Pacman uses resolution 224x288 on a 3:4 monitor. What resolution should pacman use in a window on a 640x480 desktop? 224x288 seem natural and that is what mame uses today if you have "keepaspectratio" enabled. But if you look at the aspect ratio, 224/288=7:9 which is wrong. For correct aspect ratio the resolution 216x288 should be used and this is what my code does. (using "-cleanstretch full" will revert to the old mame way)

- Corrected code so that hardware and software stretch works the same.

Problem here is that the default behaviour of mame will change unless a new parameter is added (really_keep_aspectratio ?) so I don't have much hope that the change will be included in mame. I will post a diff file here later.

(And a strange thing. When I write "aspect ratio" I often get an extra "n" at the end. Thought it was just me but now I have seen it in other places as well, e.g. windows.txt file)

Silver

  • Wiki Contributor
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1668
  • Last login:February 17, 2024, 10:29:00 am
  • Cunning like the Fox.
    • Mods'n'Mods
Re: Powerstrip writeup
« Reply #23 on: October 12, 2005, 07:02:17 am »
Blimey.


Right - did not realise that much modifcations to mame would be required. If things are broken in mame, I hope your submissions will fix them.

Does that mean all those doubled horizontal resolutions you posted earlier (640x240 etc...) are useless with vanilla mame as it can not stretch the horizontal without the vertical? Or am I missing something again...


wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #24 on: October 12, 2005, 08:10:59 am »
Does that mean all those doubled horizontal resolutions you posted earlier (640x240 etc...) are useless with vanilla mame as it can not stretch the horizontal without the vertical? Or am I missing something again...
No, they work fine. The problem only appears when you want to play a game where the resolution isn't a multiple of the game resolution.
320x240 work fine with 640x240 but 320x224 doesn't.

Silver

  • Wiki Contributor
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1668
  • Last login:February 17, 2024, 10:29:00 am
  • Cunning like the Fox.
    • Mods'n'Mods
Re: Powerstrip writeup
« Reply #25 on: October 12, 2005, 08:36:49 am »
Can you not just lose 4 lines?

Or use Powerstrip to create 640x224?

If you force mame to play a game at a set resolution with no stretching - will that not work but you just lose a couple of lines/gain a small border?

Sorry if these are stupid, but I can't test ATM.

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #26 on: October 12, 2005, 08:59:39 am »
Or use Powerstrip to create 640x224?
That is possible.
A much better solution is to use interlace resolutions (that is what I do). That way mame automaticly stretches in both directions which works fine.
Picture difference with interlace is neglectable. (see attached pictures)
Quote
If you force mame to play a game at a set resolution with no stretching - will that not work but you just lose a couple of lines/gain a small border?
Yes but since many games use less than 400 horizontal pixels you need a low pixelclock to run them without stretching and not many cards handle that.

Silver

  • Wiki Contributor
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1668
  • Last login:February 17, 2024, 10:29:00 am
  • Cunning like the Fox.
    • Mods'n'Mods
Re: Powerstrip writeup
« Reply #27 on: October 12, 2005, 08:33:43 pm »
Nice pics....

So all the doubled horizontal vs original vertical resolutions you run in interlace mode?

dabone

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 898
  • Last login:October 31, 2023, 12:03:37 pm
  • Time to work...
Re: Powerstrip writeup
« Reply #28 on: October 12, 2005, 11:13:48 pm »
4 things I have against that.

1. flicker
2. Flicker
3. FLICKER!
4. 30 fps, instead of 60.
 

(60hz screen, odd lines on the first pass, even on the second, maximum 30 fps.)

Later,
dabone

Silver

  • Wiki Contributor
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1668
  • Last login:February 17, 2024, 10:29:00 am
  • Cunning like the Fox.
    • Mods'n'Mods
Re: Powerstrip writeup
« Reply #29 on: October 13, 2005, 02:25:05 am »
I was wondering again about the possibility of creating almost all resolutions available in mame with a doubled horizontal Freq. in powerstrip.

Obviously correct the aspect ration scaling would be more preferable, but if not, this solution should work. Obviously lots of work, but once done its done and could be shared around?

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #30 on: October 13, 2005, 02:33:58 am »
4 things I have against that.

1. flicker
2. Flicker
3. FLICKER!
4. 30 fps, instead of 60.
(60hz screen, odd lines on the first pass, even on the second, maximum 30 fps.)
1.

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #31 on: October 13, 2005, 03:20:09 am »
I was wondering again about the possibility of creating almost all resolutions available in mame with a doubled horizontal Freq. in powerstrip.
That is possible. There is a limit in ATI's driver to around 20 custom resolution but later versions of powerstrip has a workaround that allows hundreds of resolutions.

But it is not necessary.

For my cabinet I made a list of all pixels aspect ratios and then grouped the games
« Last Edit: October 13, 2005, 03:35:31 am by wpcmame »

Silver

  • Wiki Contributor
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1668
  • Last login:February 17, 2024, 10:29:00 am
  • Cunning like the Fox.
    • Mods'n'Mods
Re: Powerstrip writeup
« Reply #32 on: October 13, 2005, 03:32:43 am »
RE: Interlace. Its worth noting that a windows screen always looks very flickery when interlaced.  Run a mame game and often you can't tell....

RE: Resolutions.

I've not been thinking about pixel aspect ratios enough. So you're trying to set games so they run at resolutions with the correct pixel aspect (makes sense). Does a 464x224 work on a 608x480 resolution? Scaling up would still leave  you with large borders top and bottom right?

ok a test:

aspect ratio
aspect ratio test
aspect ration

I added the n on the 3rd line. I did not intentionally add a n in my previous post....

EDIT: Hmmm no joy on the aspect ratio secret n adding.....

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #33 on: October 13, 2005, 03:44:17 am »
I've not been thinking about pixel aspect ratios enough. So you're trying to set games so they run at resolutions with the correct pixel aspect (makes sense). Does a 464x224 work on a 608x480 resolution?
Probably not until I get my new aspect correct code into mame. Tested the code last night and it works fine execpt that resizing is a little jumpy when you run the game in a window. Will look at that tonight.
Quote
Scaling up would still leave

Silver

  • Wiki Contributor
  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1668
  • Last login:February 17, 2024, 10:29:00 am
  • Cunning like the Fox.
    • Mods'n'Mods
Re: Powerstrip writeup
« Reply #34 on: October 13, 2005, 04:14:12 am »
Ok good that makes sense.... I hope your submission is accepted!

Also thanks for taking the time to answer all the quickfire resolution questions - its much appreciated.

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #35 on: October 14, 2005, 05:36:30 am »
Here is a mame 101 version with the new aspect ratio calculations (and some other things I use but you can just ignore them).

Try it out and see how it works.

http://web.telia.com/~u84606172


desmatic

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 216
  • Last login:June 25, 2006, 02:25:53 pm
    • Easy MameCab
Re: Powerstrip writeup
« Reply #36 on: October 14, 2005, 06:34:44 pm »
ok the latest version of lrmc is up at http://lrmc.sourceforge.net/

I added a new option for powerstrip, though I haven't got around to testing it.  If anyone wants to test it, please let me know how it goes.


The new version of lrmc can calculate an entire modeline list in one command.  You'll need mame installed for this to work though.  An example of how to do this is listed below.

mame -listxml > mamelist.xml
lrmc mamelist.xml --powerstrip -cga > modelines.txt
notepad modelines.txt


enjoy.

dabone

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 898
  • Last login:October 31, 2023, 12:03:37 pm
  • Time to work...
Re: Powerstrip writeup
« Reply #37 on: October 19, 2005, 11:05:35 pm »
I'm getting back to testing cards now, I hope to have some results posted this weekend.


Later,
dabone

VooD

  • Trade Count: (0)
  • Jr. Member
  • **
  • Offline Offline
  • Posts: 4
  • Last login:July 19, 2006, 07:10:39 pm
  • I want to build my own arcade controls!
Re: Powerstrip writeup
« Reply #38 on: November 05, 2005, 01:28:55 pm »
I gave it a try using my 9600 XT, and well...it kinda worked,
« Last Edit: November 05, 2005, 01:30:50 pm by VooD »

wpcmame

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 278
  • Last login:February 18, 2024, 01:27:00 pm
Re: Powerstrip writeup
« Reply #39 on: November 06, 2005, 01:39:40 pm »
I gave it a try using my 9600 XT, and well...it kinda worked,