An updated version of this script can be found later in the thread: https://libretro.com/forums/showthread.php?t=5923&p=42127&viewfull=1#post42127
That’s great! Thanks for sharing this
Removed post
Hey sammaz, I see that you edited your post to remove the question, but if you’re still needing help generating a playlist let me know. I have access to a 0.37b5 ROM set that I could probably use to help.
Thanks!
I now have 4 seperate arcade playlists
FBA (with full .38 latest romset) imame4all (with full .37 romset) mame2003 (with full .78 romset) mame (with full 1.70 romset)
All of the artwork has been renamed using your scripts and it is all working great on my mk808b plus. I am running retroarch 1.34 as an addon in Libreelec…its so kickass velcro`d to the back of my tv and modded with heatsinks and a small 40mm fan powerd from the USB.
Performance = Odroid C1+ (Quad core 1.5Ghz with Mali 450 Gpu) at half the cost
Thanks again!
[QUOTE=sammaz;41889]Thanks!
I now have 4 seperate arcade playlists
FBA (with full .38 latest romset) imame4all (with full .37 romset) mame2003 (with full .78 romset) mame (with full 1.70 romset)
All of the artwork has been renamed using your scripts and it is all working great on my mk808b plus. I am running retroarch 1.34 as an addon in Libreelec…its so kickass velcro`d to the back of my tv and modded with heatsinks and a small 40mm fan powerd from the USB.
Performance = Odroid C1+ (Quad core 1.5Ghz with Mali 450 Gpu) at half the cost
Thanks again!
[/QUOTE]
Nice! Thanks for following up and for the photo of your setup.
Edit - outdated.
MAME 2003 Playlists and Generator
[SIZE=2][SIZE=4][SIZE=3]About the ROM set[/SIZE] This script was created to be used with a Non-Merged 0.78 ROM and CHD set. The “MAME 2003 Reference Set” of Non-Merged MAME 0.78 ROMs is the recommended set for this playlist. If you don’t have a Non-Merged Set or a set designed for MAME 0.78, it is usually easier to download the correct set than to convert. If you do wish to convert your set for MAME 2003, I recommend converting using ClrMamePro software and the Progetto-SNAPS MAME 0.78 DAT file.
Please also note that the path used for the MAME ROMs in this playlist is /storage/roms/MAME 0.78/ – if you would like to use this pre-generated MAME.lpl playlist on your own system, your MAME 0.78 ROMs need to be stored in this same folder in Lakka.
Download t[SIZE=3]he Playlist [/SIZE] Download the MAME 2003 playlist [/SIZE] About the Script
This AutoHotKey script is meant to be run in Windows in order to produce a playlist that can be run in Lakka in Linux. The script began as the work of roldemort and and Tatsuya79 from this thread: http://libretro.com/forums/showthread.php?t=3599. The original scripts this is based on are meant to run in Windows and to be used by Retroarch in Windows, so they are not useful in their original form for Lakka…
If you would like to generate your own playlists, you need:[/SIZE] [ol] [li] The AutoHotKey script from this post, copied into a text file with the extension .ahk [/li][li]The AutoHotKey script interpreter. You can download it from their website [/li][li]A set of MAME ROMs that you can access from your windows machine as well as your Lakka machine. The “MAME 2003 Reference Set” of Non-Merged MAME 0.78 ROMs is the recommended set, and can be found via web search. [/li][li]A MAME DAT file with the same version as the ROM set – PLEASE NOTE: In order to produce clean, human readable names, the DAT file must include the full names of the games. Some DATs only have the file name. The Progetto-SNAPS MAME 0.78 DAT is the recommended DAT for this script. [/li][/ol]
[SIZE=3]Download the MAME 0.78 DAT [/SIZE] Download the MAME 0.78 Progetto-SNAPS DAT
[SIZE=2] [SIZE=3]SOURCE CODE: MAME 2003 Playlist Generator v3.ahk[/SIZE][/SIZE]
;### AUTOHOTKEY SCRIPT TO GENERATE MAME 2003 PLAYLIST FOR LAKKA/RETROARCH
;---------------------------------------------------------------------------------------------------------
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
;---------------------------------------------------------------------------------------------------------
playlistname = MAME.lpl
;### Local path to output the playlist file.
;### Should include the .lpl extension.
;### NOTE: THIS SCRIPT WILL DELETE ANY EXISTING FILE WITH THIS NAME
;### Using the name "MAME.lpl" results in icons and thumbnails appearing for
;### MAME and its playlist entries in Lakka.
;### Default: MAME.lpl
dat = MAME 078.dat
;### Example: C:\MAME\dats\MAME 078.dat
;### local path to a MAME ROM database file
romextension = .zip
;### Enter a . (dot/period) followed by the extension of the ROMs.
;### This should be .zip or .7z
romextensionlength := StrLen(romextension) ;### automatically calculate the length of the extension
windowsroms = C:\MAME 0.78 Non-Merged\roms
;### Example: C:\MAME 0.78 Non-Merged\roms
;### DO NOT TO INCLUDE A CLOSING SLASH AT THE END OF THE PATH
;### This path is a MAME ROMs folder accessible to THIS WINDOWS HOST. These
;### ROMs should be the same set that will be used in Lakka
;### and should be of the same MAME version as the datfile.
lakkaroms = /storage/roms/MAME 0.78
;### Example: /storage/roms/MAME 0.78
;### DO NOT TO INCLUDE A CLOSING SLASH AT THE END OF THE PATH
;### MAME ROMs folder on the destination Lakka installation
;### You do not need to have access to these files on the machine which
;### is running this script. The path must accurately point to the location
;### of a copy of the the same ROM set used in the Windows path above.
core = /tmp/cores/mame2003_libretro.so
;### Default: /tmp/cores/mame2003_libretro.so
;### full path to the MAME core which will be executing this playlist
FileDelete, %A_ScriptDir%\%playlistname% ;clear old MAME.lpl file if present in this directory
FileRead, dat, %dat%
playlistcounter = 0
Loop, %windowsroms%\*%romextension% {
if A_LoopFileName in (neogeo%romextension%,awbios%romextension%,cpzn2%romextension%)
continue ;### manually skip these bios files. you can add names of other files to skip
name := SubStr(A_LoopFileName,1,(StrLen(A_Loop_File_Name) - romextensionlength)) ;### trim the file extension from the name
needle2 = <game name=.%name%. (isbios|isdevice)
if RegExMatch(dat, needle2)
continue ;### skip if the file listed as a BIOS or device in the datfile
needle = <game name=.%name%.(?:| ismechanical=.*)(?:| sourcefile=.*)(?:| cloneof=.*)(?:| romof=.*)>\R\s*<description>(.*)</description>
RegExMatch(dat, needle, datname)
if !datname1
datname1 := name ;### the file is not matched in the dat file, use the filename instead
;### Replace characters unsafe for cross-platform filenames with underscore,
;### per No-Intro and RetroArch thumbnail/playlist convention
datname1 := StrReplace(datname1, "'", "'")
datname1 := StrReplace(datname1, "&", "_")
datname1 := StrReplace(datname1, "&", "_")
datname1 := StrReplace(datname1, "\", "_")
datname1 := StrReplace(datname1, "/", "_")
datname1 := StrReplace(datname1, "?", "_")
datname1 := StrReplace(datname1, ":", "_")
datname1 := StrReplace(datname1, "<", "_")
datname1 := StrReplace(datname1, ">", "_")
datname1 := StrReplace(datname1, "``", "_")
datname1 := StrReplace(datname1, "*", "_")
datname1 := StrReplace(datname1, "|", "_")
playlistentry =
(
%lakkaroms%/%name%%romextension%
%datname1%
%core%
DETECT
DETECT
%playlistname%
)
FileAppend, %playlistentry%`n, *%A_ScriptDir%\%playlistname% ;### the asterisk before the path invokes
;### binary mode. binary mode plus the `n
;### at the end of the line equals unix encoding
}
If anyone is interested in trying out a prototype set of Thumbnails for MAME 2003 I would appreciate any feedback. These will need to go in a folder with the same name as the playlist file. In my case, that folder/playlist name is MAME (as with this zip).
edit: outdated
I wrote a much nicer GUI-based Java application that generates Lakka playlists, though I don’t do the name sanitisation. I don’t use the thumbnail feature so it’s not something I need to worry about.
If there is enough interest I’ll release the code for my tool and people can modify it and add the features they want, like the name sanitisation (as an option - wouldn’t want to enforce it on people).
That sounds great.
We should probably get a wiki page for playlist manipulation utilities with some screenshots, etc.
Download available from:
Source code can be found here:
Being a java program, you do need a JRE installed. To compile it yourself, use NetBeans 8.1.
How to use it to generate playlist for Lakka on Raspberry Pi 3? Hope you could help me explain.
I don’t think I could possibly make the program any easier to use and certainly wouldn’t think someone would need a manual. But here goes:
To run: Install a Java JRE on your computer and double-click the jar file.
The program only has 4 fields, of which the complicated ones have already been filled out: Rom directory: Where on your computer your rom files are, just hit browse and select where your roms are. DAT file: Which Mame or FBA or other emulator’s dat file is located so it can get the real names of the games, again, just hit browse and select the xml or dat file.
And under Lakka configuration: Path to core: The path to the emulator core in Lakka, it even has all of the common Mame and FBA locations pre-populated so you don’t even need to guess this, just pick it from a list if it’s there, or change it to whatever core you need if it’s not. Path to roms: The path to the roms once you have transferred it over to the Pi.
When you save your playlist file, don’t rename it as the name is also stored in the playlist itself. Just copy it to storage/playlists.
I am stuck, maybe you can help. i generated the list, placed the roms in the “Mame 2003” Folder. After a Reboot i see the list, but only blak squares as icons. The games do not start. Whne i look under “Load Core”, i don’t see the mame core or FBA core. Could this be the problem?
Could you answer a few questions?
- Are you using Lakka?
- Which playlist script did you use to generate the playlist?
- What is the filename of the playlist?
Could you also post the first two playlist entries in your MAME playlist file? This requires opening the playlist in a text editor and copying the first twelve lines here to the forum.
edit: outdated
This is amazing and is also what I would like to have on my C1+.
Does your C1+ have multiple OS? Mine only has Lakka and i’m wondering if I need to add Linux to it too.