Vectrex Overlay Config File Creation Tedium

Vectrex
Posted by  on April 18, 2021

A less time consuming way of creating Vectrex Overlay config files for RetroArch

It turns out Vectrex overlay Config creation pisses me off. I’ve been setting up IAGL (Internet Archive Games Launcher) on my computer (see previous post) and decided I’d like it set up on my Windows installation also.

I installed KODI, installed and configured the RetroArch basics then added IAGL into the mix all without much fuss. Painstakingly, I went through all of the emulators making sure everything worked and, for the most part, everything worked great. I have a couple of issues with the Atari 800/5200 emulator still to work out but otherwise it’s all good. Then eventually I got to the Vectrex.

KODI Windows 10 Vectrex Overlay config

Now, the Vectrex uses a graphical overlay on the screen to provide some attractive imagery to the games. A few clever people have recreated PNG versions of these which they have made available on the Libretro and Hyperspin forums. While these are great pieces of artwork you still need to configure them to work in RetroArch, which means creating config files for each game. This is where the tediousness comes in. You can do this by going through menus in RetroArch itself or you can create them manually by copying one and then editing each file to change the names of the corresponding files to match.

I spent about 10 minutes in the RetroArch menu system before thinking there must be a way to script this, so I did. They’re quick and dirty just to serve the purpose of this task but, as a result, they’ll give you your Vectrex overlay config files.

Here’s what I came up with

First of all you need the overlay images. The ones on the Libretro or Hyperspin forums are the best I’ve come across in terms of quality. Download these into your RetroArch Vectrex overlays folder. The default path is RetroArch installation \overlays\VecX\. You may need to create the VecX folder if it doesn’t exist.

You may need to rename the images to match those of your ROM files if you have them stored locally. If you’re using IAGL to launch Vectrex titles you can skip to Launching from IAGL.

Locally stored ROM images

Creating the overlays configs

Copy the script below into a new text file and call it “OverlayCFGFromPNG.vbs”. Save it in a New Folder

Set fso = CreateObject(“Scripting.FileSystemObject”)
Dim OverlayPath

‘Overlay Path. Change this to match your own
OverlayPath = “C:\RetroArch-Win64\overlays\VecX\”

Set folder = fso.GetFolder(OverlayPath)

Set files = folder.Files

For Each file in files

Set CFGFile = fso.CreateTextFile(Left(file.name, Len(file.name)-4)&”.cfg”, True)
CFGFile.WriteLine(“overlays = 1”)
CFGFile.WriteLine(“overlay0_overlay = ” & chr(34) & file.name & chr(34))
CFGFile.WriteLine(“overlay0_full_screen = false”)
CFGFile.WriteLine(“overlay0_descs = 0”)
CFGFile.Close

Next

Don’t forget to change the value of OverlayPath to that of your own Vectrex Overlays path.

When you double click the script it will scan the Vectrex overlays folder for the PNG overlay images you downloaded earlier. It will then create the necessary config files needed by RetroArch. Move the created config files into the overlays\VecX folder alongside the PNG files.

Creating the Config configs

RetroArch also needs a second set of config files in RetroArch Installation \configs\VecX. These config files actually point to the other set we created earlier.

Copy the script below into a new text file and call it “ConfigCFGFromPNG.vbs”. Save it in the New Folder you created earlier along with the other VB Script.

Set fso = CreateObject(“Scripting.FileSystemObject”)
Dim OverlayPath

‘Overlay Path. Change this to match your own
OverlayPath = “C:\RetroArch-Win64\overlays\VecX\”

Set folder = fso.GetFolder(OverlayPath)

Set files = folder.Files

For Each file in files

If LCase(fso.GetExtensionName(file.name)) = “png” ThenSet CFGFile = fso.CreateTextFile(Left(file.name, Len(file.name)-4)&”.cfg”, True)

CFGFile.WriteLine(“input_overlay = ” & chr(34) & “:\overlays\VecX\” & (Left(file.name, Len(file.name)-4)&”.cfg”) & chr(34))
CFGFile.Close

End If

Next

Don’t forget to change the value of OverlayPath to that of your own Vectrex overlays path.

When you double click the script it will scan the Vectrex overlays folder for the PNG overlay images you downloaded earlier. It will then create the necessary config files needed by RetroArch. Move the created config files into the configs\VecX folder, consequently you may need to create the VecX folder if it doesn’t exist.

Now when you launch a Vectrex title RetroArch should load the relevant overlay for that game.

Launching from IAGL

I’ve done the hard work for you. Here’s a zip file containing all the relevant config files for the available PNG overlay images. The overlay images have been downloaded from the Libretro link to GitHub by raphkoster. All I’ve done is rename them to match the Internet Archive ROM filenames.

Vectrex Overlays Zip

You may find you’ll need to play with scaling to make them fit the display properly but I’m afraid that’s going to be down to you to figure out for your specific setup.

I could’ve combined the scripts, having them save into the relevant folders automatically, but I didn’t want to risk having files dumped into the live folders just in case. Obviously, if you’re happy with the scripts and want to do that yourself you’re free to do so.