Build Your Own Arcade Controls Forum
Main => Software Forum => Topic started by: EssexMame on November 04, 2013, 08:21:07 am
-
Hi,
I have hlsl enabled which gives me an attractive scanline look. However, on the PC I am now using it slows considerably. Galaga can't run better than 80% with frame skipping.
The H/ware isn't great - Intel 965 chipset so it's pretty much as low as you can go I think to have Direct X9.0c required for HLSL.
Are there any basic settings that would give scanlines with HLSL without such a drastic slowing?
-
I'm just now digging into the details of setting up HLSL. Still learning, but one important thing that I learned recently is that PREscale is scaling that is done by the cpu before it is sent to the graphics card. So raising the prescale makes a lot more work for the processor, not the gpu.
Most of the classics ran fine on my system with the prescale set really high (which makes it sharper), but Popeye, Galaga, & Frogger slowed to a crawl.
I looked them up and it turns out that they all have discrete audio filters emulated which makes them more demanding on the processor than other games from the same era.
Not sure what your prescale is set to now, but lower it until the game runs at 100%.
If it's already at 0, then you just don't have enough oomph to run hlsl on those games.
You can make an individual ini file for those particular gameswith hlsl turned off.
(or make the individual ini files with a lower prescale, so other games are still sharp)
That way you can still have it in other games.
EDIT: to further elaborate, say the original game ran at 320x240 and you are running your monitor at 640x480.
There is no point in having prescale set to anymore than 2. Likewise for higher resolutions.
No point in scaling it larger than your monitor can display.
-
You can use "effect" (in mame.ini) to overlay a png file for a simple scanline effect. You won't get all the fancy HLSL effects, but it won't slow your system to a crawl.
Ctrl+F for "effect" in http://www.mamedev.org/source/docs/config.txt.html (http://www.mamedev.org/source/docs/config.txt.html) .
The following pngs worked pretty well for me: http://arcadereplay.santoro.com/2012/04/02/388/ (http://arcadereplay.santoro.com/2012/04/02/388/)
-
Thanks both!
My monitor is 1600x1200 so I think I could use a hefty prescale for that. I'll look at my prescale settings though - perhaps I can do something there. For a 320x240 game that could use a prescale of 5 and would be (slightly at least) blurry with lower settings?
Does anyone know which other HLSL settings are hefty on CPU and/or GPU? Perhaps I just need to not use these, or lower the settings, for it to work - it is the old classics I'm running after all (up to Street Fighter).
I also have the audio sampling high - perhaps lowering this makes a big difference alongside HLSL? I think I've seen the audio sampling makes a big difference particularly in later mame versions (0.148 (or am I 149?)) - as you mention for Galaga.
I probably need to go back to defaults for all mame.ini settings (and remove the config .ini files too) and start again! Setting the prescale at least to 5 (max) or less depending on the game resolution in each individual case. I'm only running 50 games or so - not too arduous to tweak each separately as needed.
-
You can also use a reasonably cheap hardware solution: the mini-SLG scan lines generator (http://forum.arcadecontrols.com/index.php/topic,128970.0.html (http://forum.arcadecontrols.com/index.php/topic,128970.0.html)). Its the black thingy in the picture below. I only had a DVI output so I first had to convert that to VGA.
(https://dl.dropboxusercontent.com/u/82432150/Retrocade/mini-slg.jpg)
The appearance is a bit hard to capture with a camera but it gives an impression:
(https://dl.dropboxusercontent.com/u/82432150/Retrocade/slg-dkong.jpg) (https://dl.dropboxusercontent.com/u/82432150/Retrocade/slg-sf3.jpg)
(https://dl.dropboxusercontent.com/u/82432150/Retrocade/slg-neogeo.jpg) (https://dl.dropboxusercontent.com/u/82432150/Retrocade/slg-mslug.jpg)
-
My monitor is 1600x1200 so I think I could use a hefty prescale for that. I'll look at my prescale settings though - perhaps I can do something there. For a 320x240 game that could use a prescale of 5 and would be (slightly at least) blurry with lower settings?
Ond's settings for his 1600x1200 monitor (and Ond does stuff right): http://forum.arcadecontrols.com/index.php/topic,133382.msg1373492.html#msg1373492 (http://forum.arcadecontrols.com/index.php/topic,133382.msg1373492.html#msg1373492)
I personally don't like the phosphor blur, so I have it turned down to .05 which is probably not much different than having it set to zero.
I was originally upset because I thought my LCD was a blurry mess, but it was the HLSL settings.
-
I've recreated mame.ini to default (-cc) and removed all files from ini directory. With OND's settings - Pacman looks great but it is running 16% (with no autoskip). My original settings didn't differ much but these also run at around 16% for PacMan.
My PC does have dual CPU. Only 1.6Ghz each but there is probably some settings to improve this - but not sure I'll get to 100% for anything slightly more strenuous than PacMan! It's fine without HLSL on.
So, probably a H/W solution (as above) or the "effect" solution which I'll experiment with now. Shame really, I liked HLSL but I guess that's for my next version!
-
HLSL effects are 100% done on the video card, the CPU doesn't matter (except if you use the sw prescale as mentioned, but afaik the HLSL prescale is video card too, but obviously doubling the resolution == 4x the pixel work for the card)
if pacman is 16% with HLSL and 4000% without it, then the problem is your video card, or lack of ;-)
-
Thanks Haze,
Yeah I always understood it to be the video card. It's not great - onboard 965 (GMA 3000?) so cr4p. However, it does run it (does have direct x 9.0c) and what I was trying to get to was the settings less intensive on the GPU.
Do you know what settings will bring me crashing down to 16% and which will see me closer to 100%? I just want a simple scanline look.
-
Thanks Haze,
Yeah I always understood it to be the video card. It's not great - onboard 965 (GMA 3000?) so cr4p. However, it does run it (does have direct x 9.0c) and what I was trying to get to was the settings less intensive on the GPU.
Do you know what settings will bring me crashing down to 16% and which will see me closer to 100%? I just want a simple scanline look.
Disable HLSL and use effect=scanlines or one of the other overlays...
-
Thanks Haze,
Yeah I always understood it to be the video card. It's not great - onboard 965 (GMA 3000?) so cr4p. However, it does run it (does have direct x 9.0c) and what I was trying to get to was the settings less intensive on the GPU.
Do you know what settings will bring me crashing down to 16% and which will see me closer to 100%? I just want a simple scanline look.
Did you even read my post?
You can use "effect" (in mame.ini) to overlay a png file for a simple scanline effect. You won't get all the fancy HLSL effects, but it won't slow your system to a crawl.
Ctrl+F for "effect" in http://www.mamedev.org/source/docs/config.txt.html (http://www.mamedev.org/source/docs/config.txt.html) .
The following pngs worked pretty well for me: http://arcadereplay.santoro.com/2012/04/02/388/ (http://arcadereplay.santoro.com/2012/04/02/388/)
-
Yes, thanks Haze, that is what I will be trying (or a hardware option)
I just think HLSL looks better and if I could reduce the slowdown by having just a few less-intensive options I thought it might still work - hence "Do you know what settings will bring me crashing down to 16% and which will see me closer to 100%?"
-
Yes, thanks Haze, that is what I will be trying (or a hardware option)
I just think HLSL looks better and if I could reduce the slowdown by having just a few less-intensive options I thought it might still work - hence "Do you know what settings will bring me crashing down to 16% and which will see me closer to 100%?"
When I had a computer with a less than stellar Geforce 6100 onboard, I found that playing in a smaller -window helped speed. Lower resolutions/switchres works as well, but you do have a trade off on quality. If you are reluctant to spend some money on a video card upgrade, that's the best you are going to do and still play games at decent speeds with HLSL.
-
I've set it up using effect rgb_kb.png and I'm happy enough with how it looks. It's not as good as HLSL though it does soften the image to make it look better on an LCD screen (IMHO) and is slightly more subtle than HLSL for scanlines - I like it enough to keep it on (and where I can't have HLSL anyway!)
Thanks for your help Haze.