Been continuing to do some work on this (more for myself than anything…I want to become a better programmer and this gives me something to work on), and I’m pretty proud of it so far :).
First, it should be noted that this little program isn’t intended to replace the built-in Lakka playlist generation system. Instead, it is “plan B” if Lakka doesn’t crank out a playlist for you for whatever reason.
What it won’t do:
This program will NOT do all the work for you, like the Lakka playlist generator does (such as select the appropriate core automatically). You’ll have to select most of it manually.
What it will do:
It’s a Windows program! I’m sure many are like me where Linux is a very foreign environment and most (or all) of our roms are stored on Windows machines before we migrate them to Lakka. This program will let Windows users generate playlists.
You can select if you want to use the zip file itself or files within the zip file. Never tried delving into a zip file via code before. Was a new experience for me :). It should be noted that this program will create a separate entry for whatever it finds in a zip file. It doesn’t know the difference (yet) for what is a valid rom and what isn’t.
You can select a folder and the program will create a playlist based on everything it finds in there. So if you have a folder full Atari rom files, it’ll make a playlist entry for each one. Again, it doesn’t know what is a valid rom file or not, so that part will be up to you to keep your folder “clean” LOL.
You will enter the path where you plan to store the rom files within Lakka. This will be applied to every entry within the playlist.
You will enter or select the name of the core that you’ll use. This will be applied to every entry within the playlist.
You will enter or select the name of the LPL file that you’ll generate.
Some new functionality I’ve added, you can check your file names against a DAT file and it will try to match up the name of your rom file with the associated game title name. (This isn’t done very well and is only about 95% accurate…could be done better! Just don’t know how at the moment) If you don’t do this, the program will simply use the file name for each playlist entry.
It creates a report on the generated playlist.
You can also crank out a playlist preview. This is VERY slow, but it works.
You can also check your directory of roms against an existing playlist file and it will list all the rom files from that directory that aren’t in the playlist. This is useful if you perhaps have manually tweaked a playlist and don’t want to generate a fresh one and undo all of your work. This will show you what else you can add manually.
Checking md5sums! Inspired by another post, I decided to figure out how to code this myself (was surprisingly easy). Now there is a small feature to quickly check the md5sum of a file that you browse to :).
This small little program already does WAY more than I initially intended. First, it was fun. Second, like I said, I want to become a better programmer. So adding new features worked in both areas.
Future ideas:
I’d like to figure out how to work with DAT files better. As of right now, I am most likely (actually, I am almost certain LOL) going through a DAT file very inefficiently. I check a given rom file name from a directory against a DAT file. If I find the file name text within the DAT file, I manually extract the line 15 lines above the file name. Most of the time (the 95% I mentioned earlier), the game title for that file is on that line. I parse the line and extract the game’s title and use it in the playlist.
I would also like to work with the md5sum capabilities, that way the generated playlist will be more accurate. As of right now, the names picked from the DAT file rely soley on the rom’s file name being correct.
I’d like some advice…what would be the right way (or “a” right way) to go about grabbing the information I need from a DAT file? I know I could take a file, get the md5sum from it, and run it against a DAT file and do some of the trickery I mentioned above to get a file name. But I don’t like doing that. The DAT files I’ve seen so far look like HTML. I’m thinking there has to be a better way to go about getting the information from these files than what I’ve been doing. So being very new to this, I’m out of ideas at the moment. Any advice would be welcome :).
So that is my blurb on my little program that I thought I’d share. I’d love some ideas and critiquing so I can continue to work on it and get some practice.
And here’s a pic of the program and its somewhat cluttered controls :).
EDIT: The forum wouldn’t let me upload a larger image, so it is pretty small.