Main > Main Forum
Issue with Windows 7 and native resolutions.
<< < (2/10) > >>
tyson171:
Going to see if I can get any of the guys over at the hyperspin forums to implement this into the hyperlaunch script!  Thanks Andy, fingers crossed!
krick:
Any updates on this?  I'm running a 15KHz arcade monitor. I just purchased a new ArcadeVGA 3000 (a huge upgrade from my original AGP ArcadeVGA from 10 years ago) and  I'm getting ready to rebuild my MAME PC.  I'm trying to decide between Windows 7 64-bit and Windows XP 32-bit.

This whole situation really sucks.  *shakes fist at Microsoft*

Andy, you mention this...


--- Quote ---Of course the real fix for this lies in the hands of the Mame devs, enable support for D3D with stretch off.

--- End quote ---

Is this something that could be implemented in an alternate build like CabMAME or GroovyMAME?
bitbytebit:
Does d3d support non-stretched modes?  I am looking into how it works opposed to direct draw, seems like it'd not be some unsurmountable feat to do this *if* it supported it.  Oddly the methods they write with in d3d all use the word stretch in them, like it's built in as expected to always be done.  It's definitely sparked my interest, since using d3d would be nice since ddraw is going away eventually and seems less usable  in Windows 7 than it was before.  I wouldn't expect the Mame devs to want to deal with this, but we should be able to in an alternate mame patch/build, if it's possible.

What does running -video d3d with -prescale 0 do?  This at least seems to avoid supported the stretch_supported flag of d3d, if prescale is 0 it skips it and uses a different type of surface to draw.  Although I'm wondering if then there's something else to be done for removing stretching. Ah wait, that's not going to turn off what I'm manually turning off right now, but there does seem to be some reduction is usage of filtering/stretching possible, so I'm testing that and will see.
krick:

--- Quote from: bitbytebit on April 10, 2011, 10:06:16 am ---
What does running -video d3d with -prescale 0 do?  This at least seems to avoid supported the stretch_supported flag of d3d, if prescale is 0 it skips it and uses a different type of surface to draw.  Although I'm wondering if then there's something else to be done for removing stretching.


--- End quote ---

prescale only supports 1-8.  I think "-prescale 1" does what you're looking for.

http://mamedev.org/source/docs/newvideo.txt.html

--- Quote ---So, I recommend starting with these initial options and then tweaking
from there. One additional option you might want to try in
combination with the above is the -prescale option. -prescale takes
an integer parameter from 1 to 8, and specifies a magnification
amount by which the screen pixels are expanded before they are drawn
to the screen. Why is this useful? And how much of a performance
impact does it have? Well, that depends on the mode you are running
in.

If you are running in Category 1 (-video d3d), then -prescale will
use your video card to scale the game graphics up before rendering
them to the screen. Depending on the video card, this is usually a
small performance hit, but not too significant. The benefit is that
each prescale factor reduces the blurriness of the pixels.
-prescale 1 is the default, which does no scaling. -prescale 2 will
double each pixel, -prescale 3 will triple each pixel, etc. For my
money, -prescale 2 is sufficient, but people with super high
resolution displays claim that larger -prescale factors work even
better.

If you are running in Category 2 (-video ddraw -hwstretch), then
-prescale will cause MAME to compose the screen graphics at the
specified scale factor. This is unfortunately done in software, but
carries the benefit that artwork, fonts, and the graphics viewer can
take advantage of the additional resolution to produce nicer results.
The end effect is that you will get less blurry pixels, just like the
Category 1 case, plus higher quality artwork, fonts, and more visible
area in the graphics viewer.

If you are running in Category 3 (-video ddraw -nohwstretch), then
-prescale will cause MAME to pick a video mode that is the prescale
factor times the raw screen resolution, and then MAME will, in
software, compose the screen graphics at the specified scale factor.
This has all the advantages of the Category 2 case, except that since
there wasn't any pixel blurring to begin with, there is no additional
crispness that comes about as a result.
--- End quote ---
krick:
bitbytebit, this appears to be what you're looking for...

http://community.arcadeinfo.de/showthread.php?t=9555


--- Quote ---CleanStretch

Some may remember the "CleanStretch" option from older MAME versions.

As of today, in Direct3D the Picture gets zoomed to fullscreen with floating point precision. That actually produces quite nasty artifacts in lower resolutions.

CleanStretch ist a quite small hack, changing those floating point zoom back to integer zoom, eliminating zoom artifacts completly.

cleanstretch 0/1 - can be either 0 (Floatingpoint-Zoom) or 1 (Integer-Zoom).

--- End quote ---
Navigation
Message Index
Next page
Previous page

Go to full version