If you would rather work offline you can download a zipped version of this guide, including all the files you need: Download theme guide.

A YAFL theme contains a background, selector, font and a theme file. This guide explains how to make these and briefly covers icons as well. Before you start creating your themes, download the template images. These are already in the right size and palette and will make it easier to get started.

Background
For the background you need a 320x240 gif image in the standard GP32 palette. There are several ways you can convert your image to the GP32 palette:
-Open an image with the GP32 palette in MS Paint and paste your image into it. This will automaticly convert it's colors to the GP32 palette but doesn't always give the best results.
-If you have a better graphics editor on your computer use it to save your image as a gif file. Open an image with the GP32 palette in MS Paint and paste the gif file into it. This gives better results than the direct conversion in MS Paint.
-If you have Photoshop, Paint Shop Pro or any other good image editor you can import palette files and work with those. All these programs work differently and I'm not going to explain them all, just read the manual. You can download a package with a Photoshop, Paint Shop Pro and Windows palette file here.
The default folder for background images is GPMM\YAFL\BG.

Selector
The selector is the shape surrounding the icon you select on your GP32. It is a 60x40 gif image using the standard GP32 palette. It can be any image you want, convert it to the GP32 palette in the same way as the background image. If you want parts of your selector to be transparent you should give those the exact same color as the template selector file. Selectors are stored in GPMM\YAFL\ICONHL.

Selector
Icons
A YAFL icon is a gif image in the standard GP32 palette, maximum size is 32x32 pixels. The color of the template icon file is the color that is used for transparency. After conversion to the GP32 palette make sure any parts that should be transparent match this color exactly.
Icons should have the name of the program you want to use them for and the file extension has to be changed from .gif to .ico: An icon for bor.fxe should be named bor.ico. Icons are stored in GPMM\YAFL\ICONS

Font
YAFL comes with 108 fonts pre-installed, just pick the one that looks right to you. In the YAFL settings section load your background and selector and try all fonts until you find the one you want to use. Don't worry about the colors, you can change those in the theme file. The fonts are stored in GPMM\YAFL\FONTS.

Theme file
The theme file is a text file that describes what background image, selector image, font and color-settings are being used. When you open the knolls.thm file in Notepad it will look like this:


That looks mighty complicated but with a bit of text formatting and a short explanation this is what you get:
gp:\gpmm\yafl\bg\knolls.gif
gp:\gpmm\yafl\iconhl\knolls_h.gif
255
432
1
1
1
256
256
1
155
255
1
gp:\gpmm\yafl\fonts\amb.fnt
END
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
path to background image
path to selector image
background color
titlebar color
titlebar text color
icon text color
icon text highlight color
icon highlight color
icon text background color
popup box border color
popup box fill color
popup box text color
alternative popup box text color
path to font
END
You can see there are a lot of color settings you can change, this image explains what they are:
Color settings
The numbers in the theme file are colors from the GP32 palette. Pick the colors you want to use from the color table, use 256 for transparency.
Palette
Palette
The easiest way to build your theme file is by loading your background, selector and font in YAFL. After you have done this copy yaflthm.cfg from GPETC on your GP32 to your computer. If you open it with Notepad you will see it has the same structure as a theme file.
Now all you have to do is change the numbers to the numbers of the colors you want to use, save the file as mytheme.thm, store it in the YAFL folder and you can load it like any other theme file.

If you find any errors in this guide or think information is missing please let me know.