Jump to content
LaunchBox Community Forums

BezelLauncher 2.1.2

   (9 reviews)

2 Screenshots

About This File

What is it?
Use this plugin to display bezels for emulators that don't natively support them.

What does it do?
It displays a bezel and resizes the emulator window to fit within the bezels transparent area.

What's required to make this plugin work?
LaunchBox v13.3 (or newer), the plugin file, bezel images and some minor setup.  No more. No less. (See Setting up)

Do I need to provide my own bezel images?
Yes. (See Setting up for where to place them)

Will it work with game specific bezels?
Yes.

Will this work with all emulators?
Yes, with exception. RetroArch and MAME emulators will not show in the list of emulators and cannot be used with this plugin. 

The emulators that have been tested so far all work. Some adjustments may be necessary. (see Emulator Settings)

Will this work with storefront games or Windows games?
No.

Can I use my existing RocketLauncher bezel configuration files?You can use the existing platform.png and platform.ini files from RL.  These existing files should be located under:
   
/RocketLauncher/Media/Bezels/platform_name/_default/something.ini (and something.png) 
(See Setting up [step #3])

What are the .ini files for?
The .ini (configuration) files tell the plugin how to resize and move the emulator window to fit within the bezel.  (See .ini (configuration) Files for more info and Testing for creating and saving them)

Can this plugin add shaders as well?
No.  Yes. See Using Shaders  (new v2.1.0)

 

Disclaimer

This works on my test PC.  I didn’t test it on my cab because I didn’t want to change my emulator settings to not use fullscreen (see Emulator Settings).  Outside of RetroArch and MAME, I don’t use bezels, so didn’t want to mess-up-a-good-thing.

There are no guarantees, express or implied… blah blah blah blah blah blah blah.

There is no risk. This plugin makes no changes to LaunchBox or your emulators.  If you decide this isn’t for you, simply undo any fullscreen changes you made and (with LB/BB not running) delete the BezelLauncher folder.

 

Special Thanks
Special thanks to @MadK9 for the idea, direction and help with testing!  Without him, I would have never contemplated starting this project. :D  Also a big thanks to @Sbaby for testing un-tested emulators with the plugin.

 

Installing

With LaunchBox/BigBox not running...

  1. Download the plugin .zip file
  2. "Unblock" the file
    1. Right-click the file, select Properties, check the box "Unblock", click OK.
    2. Or better yet, just use 7-zip to open the file
  3. Copy the contents (a folder called "BezelLauncher") into your \LaunchBox\Plugins\ folder
  4. Start LaunchBox

 

Setting up

  1. Start BezelLauncher Setup from the LaunchBox Tools menu, then click Close
    • This will create the \Plugins\BezelLauncher\Bezels\platform_name\ subfolders
  2. Copy your bezel images into their respective platform_name subfolders
    • See Bezel Images for more information
  3. (optional) If you have existing RL platform_name.ini files, copy those alongside the image files
    • See .ini (configuration) Files for more information
  4. Restart BezelLauncher Setup
  5. Select a platform
  6. Choose an emulator you wish to use for that platform.
  7. Check Disabled to enable it
    1. Click Test
    2. Adjust (Move/resize) the orange frame to fit within the view area of the bezel (See Testing)
    3. Click Shaders to enable, adjust and change shader (see Using Shaders)  (new v2.1.0)
    4. Click Save [to save the .ini file]
    5. Click Save on the main setup screen to add the emulator to the list of Enabled platform emulators
  8. Repeat for other platforms and emulators you wish to add
  9. You must click "Save" for each emulator you've enabled, separately.

image.thumb.png.c97c031560f6d11d832627f112c7d1b2.png

 

Maintenance
After adding/removing platforms or emulators

  1. Run BezelLauncher Setup
  2. Click Refresh
  3. Continue with Setting up, step #5

 

Testing
To configure the placement of the emulator window within the bezel (Requires an existing bezel image):

  1. Run BezelLauncher Setup
  2. Select a platform and an emulator
  3. Enable it (if it's not already)
  4. Click Test

image.thumb.png.ceb55f1ed0005e34f820e0d6caf0e08f.png

Move and resize the frame

  • Click [and hold] the left or right side of the frame to move it around
  • Click [and hold] the bottom right corner to resize image.png.c72de1ad9780af93759750bd7818c070.png
  • Use the on-screen buttons to fine-tune the adjustments

The on-screen display will show information about the emulator window.
(You can click and drag the OSD to move it around as needed)

  • x, y = upper left monitor-coordinates of the emulator window
  • w, h = width and height of the emulator window
  • x, y = lower right monitor-coordinates of the emulator window

image.thumb.png.df3e2713204f043555ce2afd9ba6f25a.png

  • If any of the values are red, they are off the screen
  • The OUTSIDE edge of the frame is the emulator window extents

After adjusting, click Save.  This will overwrite any existing configuration file.
 

Using Shaders  (new v2.1.0)

  • First you need some shaders.  Place the .png images in the /Bezels/Shaders/ folder
  •     (Scanline.png 'shader' is included)
  • Start BezelLauncher Setup
  • Select your platform and emulator and click Test
  • Click Shaders
  • Check the box to turn shader on
  • Use the slider to adjust the shader
  • Adjust the opacity down to lighten the shader
  • Use the drop-down box to select a different shader
  • Click Save to save your settings

 

Parameters
Depending on the emulator and the bezel, you may need to check 1 or more of the following parameters:

(h) hideStuff

Check this if you see the desktop behind bezel while the game is loading.  This adds a black background during the startup process.

(s) startupSleeper

“Hide stuff” for a little longer during startup (3 seconds)

(l) longerSleep

Same as above (4 seconds)

(g) hideGameStartup

Check this if LB Game Startup screen is showing behind the bezel at game startup

When selecting a platform, if the plugin detects an emulator that has been tested, “suggested” parameters will be shown.  Your mileage may vary.

 

Emulator Settings

For the plugin to move/resize the emulators’ window, you will need to disable fullscreen in the emulator(s).  This may be as easy as removing "-f" or "-fullscreen" from the Default Command-line Parameters (depending on the emulator).

Beyond that, of the emulators I've tested, the only one that needs to have its Default Command-line Parameters altered is SuperModel.  You will need to manually set the resolution.

  1. Start BezelLauncher Setup
  2. Select your Super Model 3 platform and Enable it
  3. Click Test and after adjusting the frame to where you want it, make note of the W(idth) and H(eight) #'s shown in the OSD.
  4. Save and Close.  (Be sure to click Save on the main Setup screen to save Enabled as well.)
  5. Edit your SuperModel emulator (in LaunchBox) and set the Default Command-line Parameters to "-res=W,H"  (no quotes, no spaces and replacing W & H with the #'s noted above)
    1. Example:       -res=1420,1076

 

Bezel Images

When you run BezelLauncher Setup for the 1st time, the plugin creates subfolders for each of your eligible platforms. They are created in:
                \LaunchBox\Plugins\BezelLauncher\Bezels\[platform_name]\

The platform image file needs to be in the [platform_name] folder and must be named the exact same as the platform.
                \BezelLauncher\Bezels\Sony PSP\Sony PSP.png

 

Game-specific bezel files

Game-specific bezel folders (or files) can be named after the games ROM filename or the games Title.

Using the games Title:
If the Title has 'invalid file name characters', those characters will need to be replaced with _ (underscore).  The exact same way LaunchBox does with its image files (but without the -01 suffix).
      Example:  Title = Disney-Pixar's Toy Story 2: Buzz Lightyear to the Rescue!
                      Bezel = Disney-Pixar_s Toy Story 2_ Buzz Lightyear to the Rescue!.png

NOTE: Additional Apps game Titles are (i.e.) "Play USA Version...".  So the bezel would be "Play USA Version....png".  Same rules apply with 'invalid file name characters'.

Invalid characters are:  

<  (less than)
>  (greater than)
:  (colon)
"  (double quote)
/  (forward slash)
\  (backslash)
|  (vertical bar or pipe)
?  (question mark)
*  (asterisk)
'  (single quote) Not technically invalid (post-DOS), but consistent with LaunchBox character replacement


 

Storing game-specific bezels:

 Option 1:

  • Place your game bezel images directly inside their respective \[platform_name]\ folder.

Game-specific image files must be named the exact same as the games ROM file or the games Title (accounting for invalid characters).

example:

  • \BezelLauncher\Bezels\Sony PSP\After Burner - Black Falcon (USA) (En,Fr,Es,It,Nl) (PSP) (PSN).png

 

Option 2:

  • Place your game-specific bezel image folders under the \[platform_name]\ folder.
  • The subfolder must be named the exact same as the games ROM file or Title (barring invalid characters).
  • The .png and .ini files in the subfolder can be any filename.

 example:    

  • \BezelLauncher\Bezels\Sony PSP\After Burner - Black Falcon (USA) (En,Fr,Es,It,Nl) (PSP) (PSN)\thisIsAnyFileName.png

 See Launching different game versions for information about bezel requirements for games that are combined as Additional Apps.

 

ScummVM

Setting up ScummVM for use with this plugin:
In LaunchBox, Edit games using ScummVM.  In the ScummVM section, have both checkboxes un-checked.  (Fullscreen and Aspect Correction).  This cannot be done using the Bulk Edit Wizard, so will need to be done on a per-game basis. One-at-a-time.

If it's not displaying correctly with just the above, try the (optional) following:

  • Navigate to /LaunchBox/Third Party/SummVM/ and start ScummVM.exe.
  • On the Graphics tab, set Graphics Mode to opengl.  Leave the other 2 as default and the check box's un-checked.  Click OK and Exit.

ScummVM Bezel Files:
To use bezels with games using LB's integrated ScummVM, you will need to set them up manually.  It will not appear in BezelLauncher Setup.

  1. Navigate to the plugins Bezels subfolder and add your platform folder.
    • i.e.    \LaunchBox\Plugins\BezelLauncher\Bezels\ScummVM\
  2. Add your platform default png and ini files to this folder.
    • i.e.    ScummVM.png   ScummVM.ini

Game specific bezels for ScummVM must be named the same as the Game Data Folder.
    i.e.    D:\LaunchBox\Games\ScummVM\King's Quest 1 - Quest for the Crown\[game files]
             use:     "King's Quest 1 - Quest for the Crown.png"
 

DOSBox
The integrated version of DOSBox is NOT supported by this plugin.  I couldn’t get it to cooperate 100% of the time.  So going with plan “B”.

To use DOSBox with this plugin, you will need to install and set up DOSBox-X.

Setting up DOSBox for use with this plugin:
Note: BezelLauncher Setup will NOT show your DOSBox platform ('MS-DOS') as an available platform.  So don't bother looking for it.

Download DOSBox-X
DOSBox-X releases can be found here:  https://github.com/joncampbell123/dosbox-x/releases

  1. Download the vsbuild-win64 version. (direct link for the download file)
  2. Create a new folder under \LaunchBox\ThirdParty\ and name it DOSBox-X
  3. Extract the contents of the downloads "\bin\x64\Release\" folder into the new folder
    • Be sure to unblock the zip file before extracting (unless you’re using 7-Zip)

Configuring DOSBox-X

  1. In Windows Explorer, navigate to \LaunchBox\ThirdParty\DOSBox-X\.  
  2. Make a copy of dosbox-x.conf.  
  3. Rename the copy to [something like] "BL-dosbox-x.conf"
  4. Right-click the new 'BL-dosbox-x.conf' file and select edit (Notepad++ works great for this. But any text editor (Notepad) will work)
  5. Look for the following keys and change their Values as shown:

(starting on approximately line 78)
fullresolution          = 1400x1080
windowresolution  = 1400x1080
windowposition      = 260,0
output                      = ttf
showmenu              = false

"1400x1080" (2 locations) is the dimension of the transparent area of your bezel.  Adjust as necessary.
    From your MS-DOS.ini file, use [Right X]-[Left X] for the 1st value (1400) and [Right Y]-[Left Y] for the 2nd (1080)

"260,0" is the upper-left coordinate of the transparent area.  Use the Left-X value for the 1st number and Left-Y for the 2nd.

Save the changes and close the editor.


Configure games to use DOSBox-X
The following assumes your MS-DOS platform games are already setup to use the integrated version of DOSBox.

  1. In LaunchBox, select all your DOSBox games and press Ctrl+E to start the Bulk Edit Wizard.
    • (Select 1 game in the MS-DOS platform, then press Ctrl+A to select all)
  2. On the 2nd screen
    1. select the Field Custom DOSBox Version EXE Path
    2. for Value, Browse to and select dosbox-x.exe
  3. Click Next, Next
  4. Click “Yes, I would like to make more changes
  5. select the Field DOSBox Configuration File 
    1. for Value, Browse to and select the new file you created (BL-dosbox-x.conf)
    2. Click Next. Next (again). 
    3. Click "No, I would not like to make more changes"

 

MS-DOS Bezel Files:
This assumes your DOSBox platform is called "MS-DOS".

  • In the Bezels subfolder under the plugin folder, create a new folder called 'MS-DOS'.  
  • In \LaunchBox\Plugins\BezelLauncher\Bezels\MS-DOS\, add your bezel files (MS-DOS.png and MS-DOS.ini).

Game specific bezels for DOSBox need to be named the same as the Game Data Folder
    i.e.    D:\LaunchBox\Games\MS-DOS\Cosmos Cosmic Adventure\COSMO1.EXE
            use     "Cosmos Cosmic Adventure.png"    
 

 

.ini (configuration) Files

The .ini files contain the monitors' coordinates for placing the emulator window.
The Upper Left x,y coordinate and the Lower Right x,y coordinate

Example:
Upper Left X Coordinate=240
Upper Left Y Coordinate=100
Lower Right X Coordinate=1680
Lower Right Y Coordinate=1080

The platform ini file must be named the exact same as the platform.  If copied from RocketLauncher, you may need to rename it (removing any under_scores).

i.e.   \BezelLauncher\Bezels\Sony PSP\Sony PSP.ini  

For game-specific ini files, if they are located in a subfolder below /[platform_name]/ (see Bezel Images, Option 2, above), they can have any filename.  If they are inside the /[platform_name]/ folder (Option 1), then they must be named the exact same as the games ROM file or Title.

If a game-specific .ini file doesn’t exist, the plugin will use the games platform.ini file.

 

 

Launching different game versions

Also known as Additional Apps, when right-clicking a game and selecting Play Version, the Additional App is not required to have its own bezel files.  If the Additional App doesn't have its own bezel, the plugin will look for the Default Games' bezel.  If neither of those exist, it will use the platforms’ bezel.

This eliminates the need to have a separate set of bezel files for each version of the game. Useful since they most likely all use the same image.  This only works for games that are Additional Apps.

 

 

Plugin Folder Structure

Spoiler

Main plugin files

 D:\LaunchBox\Plugins\BezelLauncher\
            BezelLauncher.dll
            BLSetup.xml

 

(default) Platform Bezel

D:\LaunchBox\Plugins\BezelLauncher\Bezels\platform_name\
            platform_name.ini
            platform_name.png

 

Game-specific Bezels

Option 1:

D:\LaunchBox\Plugins\BezelLauncher\Bezels\platform_name\
            game-1-ROM_name.png / game-1-ROM_name.ini
            game-2-ROM_name.png / game-2-ROM_name.ini
            game-3-ROM_name.png / game-3-ROM_name.ini

 

Option 2:

D:\LaunchBox\Plugins\BezelLauncher\Bezels\platform_name\ game-1-ROM_name_name\
            anyNameYouWant.png  /  anyOtherOrSameNameYouWant.ini
D:\LaunchBox\Plugins\BezelLauncher\Bezels\platform_name\ game-2-ROM_name_name\
            anyNameYouWant.png  /  anyOtherOrSameNameYouWant.ini
D:\LaunchBox\Plugins\BezelLauncher\Bezels\platform_name\ game-3-ROM_name_name\
            anyNameYouWant.png  /  anyOtherOrSameNameYouWant.ini

 

Log files

D:\LaunchBox\Plugins\BezelLauncher\Logs\
            log [date/time].txt        (Up to 5 files max)
            SetupLog [date/time].txt    (Up to 5 files max)

 

As always, any thoughts, views, opinions, [constructive] criticism, comments and suggestions are welcome.


What's New in Version 1.2.0   See changelog

Released

Updates to BezelLauncher Setup

Fixed:       Clicking Refresh in BezelLauncher Setup wasn't always updating after changing a platforms default emulator
Change:    /Bezel/[platform name]/ folders that were created and are no longer being used will not be deleted when clicking Refresh

  • Like 14
  • Thanks 2
  • Haha 1
  • Unusual Gem 5

User Feedback

You may only provide a review once you have downloaded the file.


SatorSquare

   2 of 2 members found this review helpful 2 / 2 members

This single plugin lets me finally remove RocketLauncher from my setup. It is also very easy to set up, you can even just drag and drop all of the PNGs LaunchBox generates for RetroArch's bezels and be up in minutes for certain consoles. 

It would be nice to see it integrated with the bezel project and the system in LaunchBox that autogenerates these for RetroArch, but that might just be a fever dream.

  • Like 1
  • Thanks 1
Link to review
Krakerman

   2 of 2 members found this review helpful 2 / 2 members

Please add support for RetroArch and MAME!! Awesome plugin :) 

Good work as always Joe!

  • Thanks 1
Link to review
MadK9

   2 of 2 members found this review helpful 2 / 2 members

As always @JoeViking245 releases another great addition to LB.

Works perfectly fine, and real easy to setup. RL no more.....

  • Thanks 1
Link to review
ci2own

   1 of 1 member found this review helpful 1 / 1 member

Wow! Incredible aportation to LB, and great job as with all other released plugins.

As this plugin seems to be done to use RocketLauncher Bezels, i would keep name structure inside file.ini, so no need to modify inside all .ini files. Only the filename name.

The other wish, would be to be able to have more than one Bezel for each Platform, Game, etc. and be able to change it with a key combo for example (As RL does). I think this would be very hard to code, but if you are bored anytime.... :P

  

  • Thanks 1
Link to review
bundangdon

   1 of 1 member found this review helpful 1 / 1 member

Excellent work once again @JoeViking245! This is a great alternative in comparison to other utilities like RL and makes things a lot easier. Thanks a lot for providing this plugin for emulators which don't have built-in bezel functionality!

  • Thanks 1
Link to review
Drodrik

   1 of 2 members found this review helpful 1 / 2 members

lot of crashes and not working with obscure emulators, the interface is very Friedly to customize size, I will keep still using RL for now hoping further updates for these fixes, nice work

Response from the author:

Thanks for your feedback.  Please feel free to post a comment on the Support Channel for this plugin and let me know specifically which obscure emulators are causing crashes.  This way they can be looked into and hopefully resolved in future updates.

  • Thanks 1
Link to review
Galaxy_1

  

Excellent way to add bezels and it's pretty straight forward too.

  • Thanks 1
Link to review
EarthsDefect

· Edited by EarthsDefect

  

This is awesome, super easy to use. For PCSX2 -full screen needs to be disabled for it to work.

 

please add support for retroarch and MAME that would be amazing.

 

Great work, thanks for sharing!

Response from the author:

That's a good reminder that "you will need to disable fullscreen".

RetroArch and MAME are purposely blacklisted as they can handle their own bezels.  And TBH, probably better that the plugin could. ;) Plus, they innately have more flexibility to include shaders.

  • Like 1
  • Thanks 1
Link to review
Sbaby

  

I am thrilled with this plugin and, above all, with the extraordinary professionalism of its creator.

The plugin has exceeded my expectations and has become stable and lightweight in just a few releases.

Highly recommend 😎

  • Thanks 1
Link to review
×
×
  • Create New...