Scanlines in Libretro AdvMAME and FBA
-
@Riverstorm Solar Quest and Star Castle are both vector games, so I use AdvanceMAME (can specify full resolution for nice, crisp vector lines). Xenophobe I have running AdvanceMAME too. I was running into issues with it in lr emulators.
As for ARCADE, think of it as a conglomerate space to hold and launch "Arcade" games, regardless of what emulator you use. Basically, if you can keep it straight (I use a spreadsheet) you put all of your arcade ROMs into the arcade folder, then use the runcommand at launch to specify the default emulator (2003 for me) and when applicable, use runcommand to specify an alternate. The beauty here is that you can choose any of the arcade ROM emulators. All versions of MAME and FBA are available in the runcommand menu! So, in Emulation Station, you have ONE "emulator" choice generically called Arcade, and from that list of ROMs you are actually launching lr-mame2003, advmame, lr-fba-next and so on. For me, this is key with guest players who don't need to know or care that you need to use a different MAME to play Centipede because your default doesn't have trackball support. One oddball is that Daphne, which technically plays Arcade games, isn't in the list. Perhaps it should be.
-
@Riverstorm said in Scanlines in Libretro AdvMAME and FBA:
The other thing is you don't use
video_scale_integer = true
then as an option so as to not waste screen real estate?I don't use it because I value the whole screen more than the artifacts I might get from scanline inconsistency, which don't really bother me since curvature is already pushing the lines around. I would think at your resolution it would not matter either. The exception is vertical games rotated on a horizontal display. These don't fill the screen, and in fact, end up with a low enough resolution that the scanline issues become distracting. Integer scaling might help, but I suspect DaveJ's shader tweak will make me happy at fractional scaling. I haven't tried it yet. I need to download it. I see he posted something today about it. Curvature is also an issue for these downsized vertical games. I get more pronounced moire patterns.
-
@caver01 said in Scanlines in Libretro AdvMAME and FBA:
@Riverstorm Solar Quest and Star Castle are both vector games, so I use AdvanceMAME (can specify full resolution for nice, crisp vector lines). Xenophobe I have running AdvanceMAME too. I was running into issues with it in lr emulators.
That's funny I have just a few games in AdvMAME and those where the main ones that crash in mame4all that are on the must have list of classics. :)
As for ARCADE, think of it as a conglomerate space to hold and launch "Arcade" games, regardless of what emulator you use.
That sounds pretty cool. I need to take a closer look at that. The wife has no interest in how it works. She just wants to sit down and play a few arcade games she remembers and also Super Mario on NES and some SNES games. That sounds perfect!
One oddball is that Daphne, which technically plays Arcade games, isn't in the list. Perhaps it should be.
Yes I hope Daphne continues development and support. I also tried adding scanlines to Daphne (created a retroarch.cfg) but it was a no go.
-
@caver01 said in [Scanlines in Libretro AdvMAME and FBA](/topic/834/scanlines-in-libretro
I suspect DaveJ's shader tweak will make me happy at fractional scaling. I haven't tried it yet.
Sorry I got to ask, I know integer scaling now but what is fractional scaling? ;)
-
@Riverstorm said in Scanlines in Libretro AdvMAME and FBA:
Yes I hope Daphne continues development and support. I also tried adding scanlines to Daphne (created a retroarch.cfg) but it was a no go.
That's because Daphne isn't a Libretro core. It's a standalone emu like AdvaceMAME. I don't really mind that it doesn't have scanlines. It's playing a video after all, so obscuring pixels edges with simulated CRT RGB triads isn't a big deal for me. Arcade unites arcade emulators under one list whether stand-alone or lr cores, but it doesn't combine settings.
-
@Riverstorm said in Scanlines in Libretro AdvMAME and FBA:
Sorry I got to ask, I know integer scaling now but what is fractional scaling? ;)
It's just what I called not using integer scaling. When you don't bother to specify integer scaling, you are letting it scale to fill your display dimensions, and that is very likely some fractional magnification. It might be 1.5x, 3.2x--whatever.
My point was that I haven't yet tried DaveJ's update to the shader to improve vertical games on horizontal displays. If it looks OK, it may allow me to avoid using integer scaling (which I don't, but might need to if I want to improve the look of scanlines--but maybe the new shader works either way).
-
@caver01 said in Scanlines in Libretro AdvMAME and FBA:
My point was that I haven't yet tried DaveJ's update to the shader to improve vertical games on horizontal displays. If it looks OK, it may allow me to avoid using integer scaling (which I don't, but might need to if I want to improve the look of scanlines--but maybe the new shader works either way).
Ah ok, that makes sense, a fitting terminology. I popped over there to say thanks for his work and asked if it will make it to the RetroPie Repo at some point. I can wait if it does unless of course it's doing something very different that I should grab it.
Dank asked if he could break out the shaders which I think I prefer vs. tweaking the files.
I don't really mind that it doesn't have scanlines. It's playing a video after all, so obscuring pixels edges with simulated CRT RGB triads isn't a big deal for me.
That's true...
-
@caver01 said in [Scanlines in Libretro AdvMAME and FBA](/topic/834/scanlines-in-libretro-
Solar Quest and Star Castle are both vector games, so I use AdvanceMAME (can specify full resolution for nice, crisp vector lines).
One more question for you if that's ok. You're a fountain of knowledge my good sir! ;) How do you get full resolution for these vector games? I am using the overlay which I think was just part of the glass or background and not a generated image which looks really nice but I was just wondering what you tweak to make sure it's full resolution.
-
@Riverstorm said in Scanlines in Libretro AdvMAME and FBA:
One more question for you if that's ok. You're a fountain of knowledge my good sir! ;) How do you get full resolution for these vector games?
You need to look for these lines in your .rc file for the version of advancemame you are using. Edit both if you might use each, but let's say you are using 1.4. So edit advmame-1.4.rc and look for the lines that look like:
display_width 1280 display_height 1024 display_flicker 15 display_intensity 1.5 display_antialias yes display_translucency yes display_beam 1.2
These settings only affect vector games. I like them this way on my screen. The flicker is a nice effect and it's set light here. The beam seems to enlarge in one dimension only, so if you want thick beams, you can't really get them, but I like a little larger than 1 pixel. Intensity can go up to 3 which I like, but if you back it down a bit, the flicker is more visible as is the translucency.
If you haven't already done it, also set
sound_latency 0.05
. The default is ridiculously high and you can see/hear the delay, so set this to the minimum of 0.05.Finally, make sure when you launch using the runcommand that you are using the full resolution of your display.
-
Hi all,
I tried add the crt shader by using Floob's script. It shader then works on SNES, Sega, NeoGeo but not on any Mame emulator. Is there any trick to enable it on MAME?
-
@jretropie said in Scanlines in Libretro AdvMAME and FBA:
Hi all,
I tried add the crt shader by using Floob's script. It shader then works on SNES, Sega, NeoGeo but not on any Mame emulator. Is there any trick to enable it on MAME?
you have to be using a libretro mame emulator. use https://github.com/RetroPie/RetroPie-Setup/wiki/Runcommand to find out what you're using.
-
@dankcushions Hi, I have tried Ir-fba-next, Ir-fba, Ir-mame2003. But none of them shows the shader.
-
@jretropie said in Scanlines in Libretro AdvMAME and FBA:
@dankcushions Hi, I have tried Ir-fba-next, Ir-fba, Ir-mame2003. But none of them shows the shader.
are they in the arcade folder? might be that the script hasn't been updated to use the new(ish) arcade or mame-libretro file paths. not sure. you could instead use the https://github.com/retropie/retropie-setup/wiki/Configuration-Editor
anyway, the shaders have been updated to the latest versions. here's some pretty screenshots:
crt-pi
crt-pi-curvature
crt-pi-vertical
crt-pi-curvature-vertical
reinstall retroarch via retropie-setup to get the new ones
-
@dankcushions You are right. Placing ROMs in arcade folder. Shader does not work.
-
@jretropie said in Scanlines in Libretro AdvMAME and FBA:
@dankcushions You are right. Placing ROMs in arcade folder. Shader does not work.
hmm, one for @Floob i think!
-
@jretropie If you are using shaders (as opposed to overlays) when you install them via my tool you would need to add
video_shader = /opt/retropie/emulators/retroarch/shader/crt-pi.glslp video_shader_enable = true
to the top of the file /opt/retropie/configs/arcade/retroarch.cfg
That would apply the shader to all games in the arcade folder.
-
Does anyone knows why the shader has vertical color line when I connect to 32" 720p TV?
The shader works fine with smaller 22" 1080p computer LCD.
-
@jretropie said in Scanlines in Libretro AdvMAME and FBA:
Does anyone knows why the shader has vertical color line when I connect to 32" 720p TV?
The shader works fine with smaller 22" 1080p computer LCD.
It looks like the shadow mask simulation in the shader is interfering with the dot pitch of your TV - TVs do image processing on input signals which might be making this worse as well. Try turning this off by changing the value of MASK_TYPE in the version of the crt-pi.glsl file you are using to be 0. You can try 2 as well but that is likely to give you red/green/blue colour bands instead of green/magenta ones.
It's worth me pointing out that the shader really needs about 4 vertical pixels to do even scan lines so you might get moire patterns on your 720p screen.
-
I am looking at the file and can't find any variable call mask_type
shaders = "1"
shader0 = "shaders/crt-pi.glsl"
filter_linear0 = "true"
wrap_mode0 = "clamp_to_border"
mipmap_input0 = "false"
alias0 = ""
float_framebuffer0 = "false"
srgb_framebuffer0 = "false" -
@jretropie Try
sudo nano /opt/retropie/emulators/retroarch/shader/shaders/crt-pi.glsl
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.