You don't actually needs to know coding to create a theme. You just need to change in layout.nut:
0. Find where you change resolution of the theme and try some values to much the size you want.
Also change in code the resolution not to what resolution is your monitor but what resolution display the theme as big as you like.
For example a theme had in layout.nut
fe.layout.width = 1920
fe.layout.height = 1080
(1920%1080 = 1,77)
My screen resolution is 2160x1440 (2160%1440=1.5)
If i change the resolution to mine, theme is ok, go fullscreen but with black bars and is to small everything (for my 12 inch screen). So everything looks bigger and use all monitor without black bars by setting resolution
fe.layout.width = 1900
fe.layout.height = 1260
Notice i keep aspect retio the same. (1900%1260=1.5)
This is useful for every theme to change it display as we want for the monitor we use. But of course it is not a universal methodology. It will work only for our monitor.
1. Use a theme which looks like the one you want to create.
2. Take a photo you want to use in your theme. Use any photo editing program and make transparent where the screen is.
3. Learn the 4 basic values in the code which represent width, hight, start x position, start y position of the videosnap.
It will be something like this:
// Snap
flxc = flx*0.5645;
flyc = fly*0.2214;
flwc = flw*0.2813;
flhc = flh*0.2807;
5. Change those 4 values until the videosnap go where the transparent screen is.
It will be become like this:
// Snap
flxc = flx*0.5645+35; // By + it moves videosnap to the right
flyc = fly*0.2214-170; // By + moves the videosnap Down
flwc = flw*0.2813+190; // By + it increases width of videosnap
flhc = flh*0.2807+215; // By + it increases the hight of videosnap
You can use + or - to the default values of the theme to change it . Try many values ,start stop attractmode to see the changes untill videosnap go to the transparent place of the backgound image (usually where the screen is)
Other theme may have those values this way:
local t = fe.add_artwork( "snap", 348, 152, 262, 262 );
for example i modified this values to my theme to this:
local t = fe.add_artwork( "snap", 348+240, 152-60, 262+550, 262+380 );
Those are enough.
At future you may learn the values of moving game list etc.
I may create a thread with directions of doing this and a sample script. Probably a YouTube video also, if and when i found the time if it helps.
I am actually newbie, I don't have the knowledge of others here. But i have created many themes i wanted this way.
Those 2 themes have been modified by me this way. Ok the amiga theme looks exactly the same but I have actually downloaded the same photo (I could have used other but I liked this) , make transparent the screen so to have the part of the picture i wanted because i use the theme in a tablet 12 inch screen and wanted bigger screen. I actually did a bad job if you notice the transparent screen haven't been cut good.
I also changed resolution to have the result you see in the video in a tablet with 12 inch screen and the resolution i wrote above.
In Amstrad theme, notice in cassette, every time i change game, it display on the cassette the game name. And in keyboard you see eg 51/150. I moved those values to go where i wanted.
https://youtu.be/oIwWmuo_gtMhttps://youtu.be/uSb-QaIhoeoI hope those helps.