My Realistic Arcade Bezels

In that case you need the png image files within each zip. Put the ones you want in any Retroarch folder you create. Now make sure each png you use has it’s own cfg file. Then add the overlay you want from within Retroarch

So let’s say you name a png file, ArcadeBezel

The contents within the cfg would look like this…

overlays = 1

overlay0_overlay = ArcadeBezel.png

overlay0_full_screen = true

overlay0_descs = 0

So if I get it correct, the only way is adding an overlay to the core using RetroArch’s menu and the *.png files contained in the zip files?

What if I put the *.zip files in the folder that the MAME core expects? Would they be ignored?

That’s a good question. Try it out.

Tilted Screen Bezel Test on Retroarch with Mame Core (Ms. Pac-Man / Galaga Arcade Game)

3 Likes

@Orionsangel i do like this new tilted bezel theme you have going. Whats the technique to actually tilt the screen?

1 Like

Here is a realistic Arcade bezel for the game Dig Dug for use on Mame.

You can download it here - https://bit.ly/2klLFCn

4 Likes

In this video I test Frogger on Retroarch with a much smaller and more tilted screen using the Mame Core

I second @Thatman84’s curiosity:

How could you get a tilted screen overlay with the MAME core?

@Thatman84 & @Tarrasque:
The tilted screen is feasible with shaders. E.g. crt-geom has the option to tilt the screen vertical and horizontal.

@Tarrasque:
The current mame core supports artworks. Put the artwork and ini folder in your retroarch system folder (i think they must be renamed to all lower case in unix systems)

retroarch
    └──  system
            └── artwork
            └── ini

Unfortunately, if used as mame artwork instead as overlay, the shader is applied after the artwork, so it affects the artwork too. :frowning:

@ImnoTapLumber

That’s what I suspected.

Could a shader be set in order to apply only to a portion of the screen? In this case I probably woudln’t be able to use the tilted screen cool feature, but at least I couls use any of the other great vertical bezels here AND a crt scanline shader over the game screen.

Am I correct?

@Tarrasque
You can use the bezel image as overlay, so you can use every shader you like.
Needless to say, that you have to use the custom aspect ratio settings in the video options and adjust the settings, so that the game fits into the bezel.
And you need to create a *.cfg file with the same name as the bezel.
[EDIT] the *.cfg file is also found in the *.zip.
You find more info about overlays here: https://docs.libretro.com/guides/libretro-overlays/

1 Like

Here is a realistic Arcade bezel for the game Kick for use on Mame.

You can download it here - https://bit.ly/2mHk9jw

2 Likes

Here is a realistic Arcade bezel for the game Circus for use on Mame.

You can download it here - https://bit.ly/2mIOv5b

3 Likes

@Orionsangel:
Is there a specific reason to use a *.cfg file with the mame hoffset, hstretch, voffset, vstretch settings instead of adjusting the x, y, width, height settings in the *.lay file?

I mean you could do it without a second *.cfg file :slight_smile:

Currently i try to write a bash script to convert mame *.lay files to mame2003-plus *.art files and rotate/crop/extend the images accordingly.
To convert the offst and stretch values too will require additional calculations, so without those it would be much more easier.
You can see the result in this thread: MAME artworks for MAME 2003-Plus (atm i am using a spreadsheet and make the conversion manually)

Also i try to write a script to convert them to regular RetroArch overlays inclusive the corresponding game overwrite *.cfg for the custom aspect ratio.
Unfortunately i am not so skilled in scripting :wink: and it takes some time.
(spreadsheet and manual work is done)

1 Like

Because the cfg file maintains the size of the screen so it fits in the bezel. When you remove the cfg file from mame the screen reverts back to it’s large size and you’d have to resize the screen again which is a hassle. When it comes to the whole process I taught myself and it became routine. I welcome the help.

I understand.
With the right values in the *.lay file you can skip the hassle of using a separate config file. I will look into it and post my findings later.

Meanwhile thanks for your work :slight_smile:


@Orionsangel [UPDATE]
I figured out how to translate the hoffset, hstretch, voffset and vstretch values, so that they can be used in the *.lay file.

new_width  = old_width*vstretch
new_height = old_height*hstretch
new_x      = ((old_width-new_width)/2)-(old_width*voffset)+old_x
new_y      = ((old_height-new_height)/2)+(old_height*hoffset)

…hope i haven’t forgotten something…

This has also the benefit of a better image (at least on my display the hstretch and vstretch gives worse results -> see screenshots)

4 Likes

Great finding :slight_smile:

Can that translation be scripted? Or a way to automate the process of rebuilding the lay files with this new information?

Sure, the mame game.cfg is a xml file and the game.lay file has also some kind of xml syntax.

Unfortunately atm it is beyond my scripting skills :frowning:
I dont know how to adress the individual xml elements/attributes.
I can do this with a mix of bash arithmetic, sed, cat, grep and a lot of other unnecessary stuff but this will certainty not be the right way.

Understood. I’ll check on my end as well and see if it can be done.

Thank you. Can you do a curved screen? This sounds interesting. Send me the lay file [email protected]