Making premade gamelist.xml with xtra media collections
-
Well, since I'm relatively new here I'm not sure what is or is not allowed on these forums, but feel free to drop me an email so I can get you in touch with some other people working on similar projects. It would be nice to combine all this work, and provide this material as downloads to people, and I can certainly be of assistance there. :) I can also handle conversion to other front-ends that do support some of these missing features, and help build a cross-front-end set of material this way (with matching XML and/or dat files).
-
@phulshof I'm interested. I don't want to give out my email here in the threads though, so how would we best get in touch?
-
My email is in my profile. 😀
-
@Used2BeRX said in Making premade gamelist.xml with xtra media collections:
@meleu, can you help us to______________?"
I don't know the answer to that. I don't know what UDb23 is asking you to do either.
OK. Let's try to summarize @Used2BeRX needs, check who can best support him to do what and if what we can do is worth the effort vs using or integrating with other existing metadata.
About the needs (@Used2BeRX please confirm):
A) convert the txt files to XML with specific parsing and specific items/tags generation in the xml (A1- one to one conversion txt to xml A2-generate global gamelist.xml based on all files in a folder)I wrote a windows program (MetaX) to do this; currently finalizing it to include all tags and fix minor conversion issues.
B) As @Used2BeRX wrote
When the program reads "1ST ULTIMATE SUPER MARIO BROS.TXT", I'd like to see it be able to recognize what sub folder the rom "1ST ULTIMATE SUPER MARIO BROS.ZIP" is in and add that path to the <path></path> tag, instead of just putting "./" before the file name.
For this example, using the table I had posted above, this line should read as:
<path>/home/pi/RetroPie/roms/nes/(3) Unlicensed - Homebrew/(3_10) Super Mario Bros Updates/1ST ULTIMATE SUPER MARIO BROS.ZIP</path>
(I think ./(3) Unlicensed - Homebrew/(3_10) Super Mario Bros Updates/1ST ULTIMATE SUPER MARIO BROS.ZIP would be the same thing???)
Right now this is how it's reading:
<path>./Frank's First Ultimate Super Mario Bros..zip</path>This is something I think @meleu can do with a script, that would modify the single xml files or even the global gamelist.xml (both generated by MetaX).
C) An additional nice idea would be to generate system specific gamelist.xml based on A) and B) but including only the ROMs that are actually used/installed on the Pi (avoiding to load a huge xml with tons of info related to roms that are not installed; and probably slowing down ES). @Meleu: can this be done ?
-
@UDb23 I think I got it. Will try to sketch something this evening.
-
@UDb23 @meleu Yes UDb23. That seems to be exactly what I was looking for.
Assuming the script works that will locate the rom (with an exact match for the name), I was also hoping that we could take that a step further so that instead of just creating static Media locations as it does now, it would actually find the media with the exact match for the file name, and it would A) only add media tags for existing media and B) put the exact extension of the file match.
Right now, all of the media I have will be exactly as we discussed for those static directories MetaX creates for each entry, but I'm hoping if we get this set up right that anybody at any time could upgrade media and not be concerned with what the extension is as long as the file name is an exact match. This would be important, for instance, when the videos get HD upgrades. Our old system was only SD and the videos currently are in WMV8 format. I have some people right now who claim they are beginning to create MP4 versions of much higher quality, and I was hoping this could recognize that change and create the gamelist.xml accordingly.
Also, I want to create synopsis entries for every one of my folders that point to a single picture, or possibly even a video that would be picked up by MetaX and added to the gamelist.xml (I posted that Atari 7800 example a day or two ago). But we can discuss that part later, and what I would need to do to prepare those.
-
@phulshof I know it shows up when you look at your profile, but emails are blocked to other users. I don't remember where I read that, but I'm not seeing yours.
-
@Used2BeRX said in Making premade gamelist.xml with xtra media collections:
@phulshof I know it shows up when you look at your profile, but emails are blocked to other users. I don't remember where I read that, but I'm not seeing yours.
No worries; I can always use a bit more spam. 😀
-
I've made my first step.
A) convert the txt files to XML with specific parsing and specific items/tags generation in the xml (A1- one to one conversion txt to xml A2-generate global gamelist.xml based on all files in a folder)
As far as I understood @UDb23 is taking care of item A (txt to xml). I did nothing about it.
B) As @Used2BeRX wrote
When the program reads "1ST ULTIMATE SUPER MARIO BROS.TXT", I'd like to see it be able to recognize what sub folder the rom "1ST ULTIMATE SUPER MARIO BROS.ZIP" is in and add that path to the <path></path> tag, instead of just putting "./" before the file name.
I think I completed the item B, but not with that conversion from TXT filename and looking for the ZIP. The script I've made needs a ready gamelist.xml. As far I understood this is enough for you guys. Test the script I'm talking about below and see if it works for your needs.
C) An additional nice idea would be to generate system specific gamelist.xml based on A) and B) but including only the ROMs that are actually used/installed on the Pi
I will try to take care of item C later.
the script
fullpath-gamelist.sh
Currently it only puts the full path to the ROM in the
<path>
. If the ROM is not found, the script don't change anything.You can see it here: https://github.com/meleu/share/blob/master/fullpath-gamelist.sh
And download it with this command:
wget https://raw.githubusercontent.com/meleu/share/master/fullpath-gamelist.sh
Execute it with
--help
to see the usage:$ ./fullpath-gamelist.sh --help Usage: ./fullpath-gamelist.sh [OPTIONS] gamelist.xml The OPTIONS are: -h|--help print this message and exit. -u|--update update the script and exit. -d|--directory DIRECTORY look for files in DIRECTORY (default: "/home/pi/RetroPie").
Examples
"fix"
<path>
for NES gamelist.xml:./fullpath-gamelist.sh ~/RetroPie/roms/nes/gamelist.xml
"fix"
<path>
for Mega Drive gamelist.xml searching for ROMs in a specific directory:./fullpath-gamelist.sh -d /alternative/roms/megadrive ~/RetroPie/roms/megadrive/gamelist.xml
update the script (as I'm going to implement new features, it avoids the need to download the script again using that big-and-hard-to-remember URL)
./fullpath-gamelist.sh --update
-
An example of how the gamelist.xml looks like before and after executing the script (pay atention at the
<path>
):$ cat gamelist.xml <gameList> <game> <path>./Mega Man (USA).zip</path> <name>Mega Man</name> <desc>The very first Mega Man game for NES.</desc> <publisher>Capcom</publisher> <developer>Capcom</developer> <image>./boxart/Mega Man (USA).png</image> <marquee>./wheel/Mega Man (USA).png</marquee> <video>./snap/Mega Man (USA).mp4</video> <genre>Action</genre> <players>1</players> </game> </gameList> $ ./fullpath-gamelist.sh gamelist.xml Updated entry for "Mega Man (USA).zip". $ cat gamelist.xml <?xml version="1.0"?> <gameList> <game> <path>/home/pi/RetroPie/roms/nes/Mega Man (USA).zip</path> <name>Mega Man</name> <desc>The very first Mega Man game for NES.</desc> <publisher>Capcom</publisher> <developer>Capcom</developer> <image>./boxart/Mega Man (USA).png</image> <marquee>./wheel/Mega Man (USA).png</marquee> <video>./snap/Mega Man (USA).mp4</video> <genre>Action</genre> <players>1</players> </game> </gameList>
-
@meleu said in Making premade gamelist.xml with xtra media collections:
As far as I understood @UDb23 is taking care of item A (txt to xml).
yes
An example of how the gamelist.xml looks like before and after executing the script
NIce ! thanks a lot.
-
@meleu @UDb23 Thanks for working on this guys.
I've read meleu's post a few times and I just got to admit that I don't have the coding IQ to really give any opinion on how the progress is going until I can see an updated version in action.
I'd love to be able to give more input at this stage for you guys, but I'm going to have to be able to run the program and see how it outputs things to be able to weigh in on the subject. I hope you understand.
Really looking forward to test driving the next update. :)
In the mean time, if you guys could come up with a way you want me to write up the {folder}.txt files for a system, that would be great. I have a TON of sub-folders over all of the systems and that's going to take me quite a bit of time to write them up by hand. Would love to have them ready to go to work along with the program when it is capable of handling them.
Just so you don't have to scroll up to look for it again, I'll take the liberty of posting what a working entry in the gamelist.xml for a folder looks like:
<folder> <path>./(1) Licensed</path> <image>/home/pi/RetroPie/Media/A7800/Artwork/Console/7800.png</image> <name>(1) Licensed Atari 7800 ProSystem Games</name> <releasedate>1982</releasedate> <developer>Atari Inc.</developer> <publisher>Ateri Inc.</publisher> <desc>LICENSED ATARI 7800 PROSYSTEM GAMES ========================================== The Atari 7800 ProSystem, or simply the Atari 7800, is a home video game console officially released by Atari Corporation in 1986. It is almost fully backward-compatible with the Atari 2600, the first console to have backward compatibility without the use of additional modules. It was considered affordable at a price of US$140. The 7800 has significantly improved graphics hardware over the 2600, but uses the same audio chip. It also shipped with a different model of joystick than the 2600-standard CX40. The 1986 launch is sometimes referred to as a "re-release" or "relaunch" because the Atari 7800 had originally been announced on May 21, 1984, to replace Atari Inc.'s Atari 5200, but a general release was shelved due to the sale of the company. A few units were released to test markets in June 1984 though. </desc> </folder>
I want to know how you want me to write these as individual text files, and if you would like an identifier at the beginning of the file name like "FOLDER_XXXXXXXX.TXT"
-
@Used2BeRX said in Making premade gamelist.xml with xtra media collections:
I don't have the coding IQ to really give any opinion on how the progress is going until I can see an updated version in action.
Look the comparison I posted here. Pay atention at the
<path>
xml element before and after I run the script. I need to know if it's what you want.Try executing the script yourself and see it in action. ;-)
-
@meleu I can give you the exact location that the Mega Man rom would be in this instance.... /home/pi/RetroPie/roms/nes/(1) Licensed/(1_1) US Licensed/MEGA MAN I.ZIP
I don't know how to try it out on Linux. The program that UDb23 is a Windows based program that I assume he's going to be able to integrate your scripts into. I had a guy on our site that made a script in Linux to do what UDb23 was able to do (turn the TXT file into an XML file) but I wanted to be able to set these gamelist.xml files up on a Windows PC and transfer them to the Pi when they're perfected, via FTP.
We are going to somehow be able to put meleu's script into MetaX, right @UDb23 ?
EDIT: I posted this a few days ago, but I think it might answer some of your questions?
It should definitely show you that there is a complex sub-folder structure that needs to be accounted for. The roms for any system don't simply just lie in the
/roms/{system_name}/
directory:ROM PATHS: /home/pi/RetroPie/roms/ ATARI 2600: /home/pi/RetroPie/roms/atari2600/ /home/pi/RetroPie/roms/atari2600/(1) Licensed/ /home/pi/RetroPie/roms/atari2600/(1) Licensed/(1_1) US/ /home/pi/RetroPie/roms/atari2600/(1) Licensed/(1_2) Europe (NTSC Conversions)/ /home/pi/RetroPie/roms/atari2600/(1) Licensed/(1_3) Europe (Non-NTSC Conversions)/ /home/pi/RetroPie/roms/atari2600/(1) Licensed/(1_4) Brazil/ /home/pi/RetroPie/roms/atari2600/(1) Licensed/(1_5) Cassettes/ /home/pi/RetroPie/roms/atari2600/(1) Licensed/(1_6) Light Gun/ /home/pi/RetroPie/roms/atari2600/(1) Licensed/(1_7) Special Releases/ /home/pi/RetroPie/roms/atari2600/(2) Homebrew - Prototypes/ /home/pi/RetroPie/roms/atari2600/(2) Homebrew - Prototypes/(2_1) Homebrew/ /home/pi/RetroPie/roms/atari2600/(2) Homebrew - Prototypes/(2_2) Prototypes/ /home/pi/RetroPie/roms/atari2600/(2) Homebrew - Prototypes/(2_3) Hacks/ /home/pi/RetroPie/roms/atari2600/(2) Homebrew - Prototypes/(2_4) Trainers/ ATARI 5200 / ATARI 800: /home/pi/RetroPie/roms/atari5200/ /home/pi/RetroPie/roms/atari5200/(1) Atari 5200/ /home/pi/RetroPie/roms/atari5200/(1) Atari 5200/(1) Licensed/ /home/pi/RetroPie/roms/atari5200/(1) Atari 5200/(2) Unreleased - Unlicensed/ /home/pi/RetroPie/roms/atari5200/(1) Atari 5200/(2) Unreleased - Unlicensed/(1) Prototypes/ /home/pi/RetroPie/roms/atari5200/(1) Atari 5200/(2) Unreleased - Unlicensed/(2) Homebrew/ /home/pi/RetroPie/roms/atari5200/(1) Atari 5200/(2) Unreleased - Unlicensed/(3) Atari 800 Conversions/ /home/pi/RetroPie/roms/atari5200/(2) Atari 800 Carts/ /home/pi/RetroPie/roms/atari5200/(2) Atari 800 Carts/(1) Licensed/ /home/pi/RetroPie/roms/atari5200/(2) Atari 800 Carts/(2) Light Gun Games/ /home/pi/RetroPie/roms/atari5200/(2) Atari 800 Carts/(3) Prototypes/ ATARI 7800: /home/pi/RetroPie/roms/atari7800/ /home/pi/RetroPie/roms/atari7800/(1) Licensed/ /home/pi/RetroPie/roms/atari7800/(2) Lightgun Games/ /home/pi/RetroPie/roms/atari7800/(3) Prototypes/ /home/pi/RetroPie/roms/atari7800/(4) Update Hacks/ /home/pi/RetroPie/roms/atari7800/(5) Homebrew/ ATARI LYNX: /home/pi/RetroPie/roms/atarilynx/ /home/pi/RetroPie/roms/atarilynx/(1) Licensed/ /home/pi/RetroPie/roms/atarilynx/(2) Prototypes/ /home/pi/RetroPie/roms/atarilynx/(3) Homebrew/ COLECOVISION: /home/pi/RetroPie/roms/coleco/ (Unknown at this time if I'm going to do this because it requires a ton of control configuration) GAME GEAR: /home/pi/RetroPie/roms/gamegear/ /home/pi/RetroPie/roms/gamegear/(1) Licensed/ /home/pi/RetroPie/roms/gamegear/(1) Licensed/(1_1) US Licensed/ /home/pi/RetroPie/roms/gamegear/(1) Licensed/(1_2) Europe Licensed/ /home/pi/RetroPie/roms/gamegear/(1) Licensed/(1_3) Japan Licensed/ /home/pi/RetroPie/roms/gamegear/(2) Translated/ /home/pi/RetroPie/roms/gamegear/(3) Prototypes/ GAMEBOY: /home/pi/RetroPie/roms/gb/ /home/pi/RetroPie/roms/gb/(1) Licensed/ /home/pi/RetroPie/roms/gb/(1) Licensed/(1_1) US Licensed/ /home/pi/RetroPie/roms/gb/(1) Licensed/(1_2) Europe Licensed/ /home/pi/RetroPie/roms/gb/(1) Licensed/(1_3) Japan Licensed/ /home/pi/RetroPie/roms/gb/(1) Licensed/(1_4) Personal Assistants/ /home/pi/RetroPie/roms/gb/(2) Translated/ /home/pi/RetroPie/roms/gb/(3) Unlicensed - Hacks/ /home/pi/RetroPie/roms/gb/(3) Unlicensed - Hacks/(3_1) Unlicensed/ /home/pi/RetroPie/roms/gb/(3) Unlicensed - Hacks/(3_2) Prototypes/ /home/pi/RetroPie/roms/gb/(3) Unlicensed - Hacks/(3_3) Pirates/ /home/pi/RetroPie/roms/gb/(3) Unlicensed - Hacks/(3_4) Update Hacks/ /home/pi/RetroPie/roms/gb/Non-Working/ GAMEBOY ADVANCE: /home/pi/RetroPie/roms/gba/ /home/pi/RetroPie/roms/gba/(1) Licensed/ /home/pi/RetroPie/roms/gba/(1) Licensed/(1_1) US Licensed/ /home/pi/RetroPie/roms/gba/(1) Licensed/(1_2) Europe Licensed/ /home/pi/RetroPie/roms/gba/(1) Licensed/(1_3) Japan Licensed/ /home/pi/RetroPie/roms/gba/(1) Licensed/(1_4) Video Cartridges/ /home/pi/RetroPie/roms/gba/(1) Licensed/(1_5) Special Releases/ /home/pi/RetroPie/roms/gba/(2) Translated/ /home/pi/RetroPie/roms/gba/(3) Unlicensed - Hacks/ /home/pi/RetroPie/roms/gba/(3) Unlicensed - Hacks/(3_1) Unlicensed/ /home/pi/RetroPie/roms/gba/(3) Unlicensed - Hacks/(3_2) Prototypes/ /home/pi/RetroPie/roms/gba/(3) Unlicensed - Hacks/(3_3) Pirates/ /home/pi/RetroPie/roms/gba/(3) Unlicensed - Hacks/(3_4) Update Hacks/ /home/pi/RetroPie/roms/gba/(3) Unlicensed - Hacks/(3_5) Pokemon Hacks/ /home/pi/RetroPie/roms/gba/(3) Unlicensed - Hacks/(3_6) Homebrew/ /home/pi/RetroPie/roms/gba/Non-Working/ GAMEBOY COLOR: /home/pi/RetroPie/roms/gbc/ /home/pi/RetroPie/roms/gbc/(1) Licensed/ /home/pi/RetroPie/roms/gbc/(1) Licensed/(1_1) US Licensed/ /home/pi/RetroPie/roms/gbc/(1) Licensed/(1_2) Europe Licensed/ /home/pi/RetroPie/roms/gbc/(1) Licensed/(1_3) Japan Licensed/ /home/pi/RetroPie/roms/gbc/(2) Translated/ /home/pi/RetroPie/roms/gbc/(3) Unlicensed - Hacks/ /home/pi/RetroPie/roms/gbc/(3) Unlicensed - Hacks/(3_1) Unlicensed/ /home/pi/RetroPie/roms/gbc/(3) Unlicensed - Hacks/(3_2) Prototypes/ /home/pi/RetroPie/roms/gbc/(3) Unlicensed - Hacks/(3_3) Pirates/ /home/pi/RetroPie/roms/gbc/(3) Unlicensed - Hacks/(3_4) Update Hacks/ /home/pi/RetroPie/roms/gbc/(3) Unlicensed - Hacks/(3_5) Original Homebrew/ /home/pi/RetroPie/roms/gbc/Non-Working/ SEGA MASTERSYSTEM: /home/pi/RetroPie/roms/mastersystem/ /home/pi/RetroPie/roms/mastersystem/(1) Licensed/ /home/pi/RetroPie/roms/mastersystem/(1) Licensed/(1_1) US Licensed/ /home/pi/RetroPie/roms/mastersystem/(1) Licensed/(1_2) Lightgun/ /home/pi/RetroPie/roms/mastersystem/(1) Licensed/(1_3) 3D Games/ /home/pi/RetroPie/roms/mastersystem/(1) Licensed/(1_4) Europe Licensed/ /home/pi/RetroPie/roms/mastersystem/(1) Licensed/(1_5) Japan/ /home/pi/RetroPie/roms/mastersystem/(1) Licensed/(1_6) Brazil/ /home/pi/RetroPie/roms/mastersystem/(2) Translated/ /home/pi/RetroPie/roms/mastersystem/(3) Unlicensed - Homebrew/ /home/pi/RetroPie/roms/mastersystem/(3) Unlicensed - Homebrew/(3_1) Unlicensed/ /home/pi/RetroPie/roms/mastersystem/(3) Unlicensed - Homebrew/(3_2) Prototypes/ /home/pi/RetroPie/roms/mastersystem/(3) Unlicensed - Homebrew/(3_3) Update Hacks/ /home/pi/RetroPie/roms/mastersystem/Non-Working/ SEGA GENESIS: /home/pi/RetroPie/roms/megadrive/ /home/pi/RetroPie/roms/megadrive/(1_1) Licensed/ /home/pi/RetroPie/roms/megadrive/(1_1) Licensed/(1_1) USA Licensed/ /home/pi/RetroPie/roms/megadrive/(1_1) Licensed/(1_2) Menacer Games/ /home/pi/RetroPie/roms/megadrive/(1_1) Licensed/(1_3) Europe Licensed/ /home/pi/RetroPie/roms/megadrive/(1_1) Licensed/(1_4) Japan Licensed/ /home/pi/RetroPie/roms/megadrive/(1_2) Translated/ /home/pi/RetroPie/roms/megadrive/(1_3) Unlicensed - Homebrew/ /home/pi/RetroPie/roms/megadrive/(1_3) Unlicensed - Homebrew/(3_1) Unlicensed/ /home/pi/RetroPie/roms/megadrive/(1_3) Unlicensed - Homebrew/(3_2) Prototypes/ /home/pi/RetroPie/roms/megadrive/(1_3) Unlicensed - Homebrew/(3_3) Pirates/ /home/pi/RetroPie/roms/megadrive/(1_3) Unlicensed - Homebrew/(3_4) Update Hacks/ /home/pi/RetroPie/roms/megadrive/(1_3) Unlicensed - Homebrew/(3_5) Original Homebrew/ NINTENDO ENTERTAINMENT SYSTEM / FAMICOM DISK SYSTEM: /home/pi/RetroPie/roms/nes/ /home/pi/RetroPie/roms/nes/(1) Licensed/ /home/pi/RetroPie/roms/nes/(1) Licensed/(1_1) US Licensed/ /home/pi/RetroPie/roms/nes/(1) Licensed/(1_2) US Unlicensed/ /home/pi/RetroPie/roms/nes/(1) Licensed/(1_3_1) NES Zapper Games/ /home/pi/RetroPie/roms/nes/(1) Licensed/(1_3_2) NES Power Pad Games/ /home/pi/RetroPie/roms/nes/(1) Licensed/(1_4) Europe/ /home/pi/RetroPie/roms/nes/(1) Licensed/(1_5) Japan/ /home/pi/RetroPie/roms/nes/(1) Licensed/(1_6) Australia/ /home/pi/RetroPie/roms/nes/(1) Licensed/(1_7) VS Games/ /home/pi/RetroPie/roms/nes/(2) Translated/ /home/pi/RetroPie/roms/nes/(3) Unlicensed - Homebrew/ /home/pi/RetroPie/roms/nes/(3) Unlicensed - Homebrew/(3_01) Unlicensed/ /home/pi/RetroPie/roms/nes/(3) Unlicensed - Homebrew/(3_02) Prototypes/ /home/pi/RetroPie/roms/nes/(3) Unlicensed - Homebrew/(3_03) Pirate Carts/ /home/pi/RetroPie/roms/nes/(3) Unlicensed - Homebrew/(3_04) Pirate - Fighting Games/ /home/pi/RetroPie/roms/nes/(3) Unlicensed - Homebrew/(3_05) Original Homebrew/ /home/pi/RetroPie/roms/nes/(3) Unlicensed - Homebrew/(3_06) Castlevania Updates/ /home/pi/RetroPie/roms/nes/(3) Unlicensed - Homebrew/(3_07) Final Fantasy Updates/ /home/pi/RetroPie/roms/nes/(3) Unlicensed - Homebrew/(3_08) Mega Man Updates/ /home/pi/RetroPie/roms/nes/(3) Unlicensed - Homebrew/(3_09) Metroid Updates/ /home/pi/RetroPie/roms/nes/(3) Unlicensed - Homebrew/(3_10) Super Mario Bros Updates/ /home/pi/RetroPie/roms/nes/(3) Unlicensed - Homebrew/(3_11) Zelda Updates/ /home/pi/RetroPie/roms/nes/(3) Unlicensed - Homebrew/(3_12) Other Updates/ /home/pi/RetroPie/roms/nes/(4) Famicom Disk System/ /home/pi/RetroPie/roms/nes/(4) Famicom Disk System/(4_1) Translated/ /home/pi/RetroPie/roms/nes/(4) Famicom Disk System/(4_2) Untranslated/ /home/pi/RetroPie/roms/nes/(4) Famicom Disk System/(4_3) Update Hacks/ /home/pi/RetroPie/roms/nes/Non-Working/ /home/pi/RetroPie/roms/nes/Non-Working/NEEDS ALTERNATE CONTROLLER/ NEO GEO POCKET / NEO GEO POCKET COLOR: /home/pi/RetroPie/roms/ngp/ (Haven't decided structure. Will probably combine both into one for such small libraries) TURBOGRAFX 16: (May change. Haven't decided on how TGCD will work because I'm only using Pi Zero) /home/pi/RetroPie/roms/pcengine/ /home/pi/RetroPie/roms/pcengine/(1_1) US Licensed/ /home/pi/RetroPie/roms/pcengine/(1_2) Japan Licensed/ /home/pi/RetroPie/roms/pcengine/(2) Translated/ /home/pi/RetroPie/roms/pcengine/(3_1) Special Releases/ /home/pi/RetroPie/roms/pcengine/(3_2) Updates/ SONY PLAYSTATION: (May change. Haven't even thought of CD based games because of using Pi Zero) /home/pi/RetroPie/roms/psx/ SEGA 32X: (May change and lump in with Genesis instead of having separate spot. Doesn't work on Pi Zero) /home/pi/RetroPie/roms/sega32x/ /home/pi/RetroPie/roms/sega32x/(2_1) Licensed/ /home/pi/RetroPie/roms/sega32x/(2_2) Update Hacks/ /home/pi/RetroPie/roms/sega32x/(2_3) Original Homebrew/ SEGA CD: (May change and lump in with Genesis instead of having separate spot. Doesn't work on Pi Zero) /home/pi/RetroPie/roms/segacd/ SEGA SG-1000: /home/pi/RetroPie/roms/sg-1000/ SUPER NINTENDO: /home/pi/RetroPie/roms/snes/ /home/pi/RetroPie/roms/snes/(1) Licensed/ /home/pi/RetroPie/roms/snes/(1) Licensed/(1) US/ /home/pi/RetroPie/roms/snes/(1) Licensed/(2) Super Scope/ /home/pi/RetroPie/roms/snes/(1) Licensed/(3) Europe/ /home/pi/RetroPie/roms/snes/(1) Licensed/(4) Japan/ /home/pi/RetroPie/roms/snes/(1) Licensed/(5) Special Releases/ /home/pi/RetroPie/roms/snes/(2) Translated/ /home/pi/RetroPie/roms/snes/(3) Unlicensed - Homebrew/ /home/pi/RetroPie/roms/snes/(3) Unlicensed - Homebrew/(01) Unlicensed/ /home/pi/RetroPie/roms/snes/(3) Unlicensed - Homebrew/(02) Prototypes/ /home/pi/RetroPie/roms/snes/(3) Unlicensed - Homebrew/(03) Pirates/ /home/pi/RetroPie/roms/snes/(3) Unlicensed - Homebrew/(04) Original Homebrew/ /home/pi/RetroPie/roms/snes/(3) Unlicensed - Homebrew/(05) Castlevania Updates/ /home/pi/RetroPie/roms/snes/(3) Unlicensed - Homebrew/(06) Chrono Trigger Updates/ /home/pi/RetroPie/roms/snes/(3) Unlicensed - Homebrew/(07) Final Fantasy Updates/ /home/pi/RetroPie/roms/snes/(3) Unlicensed - Homebrew/(08) Legend of Zelda Updates/ /home/pi/RetroPie/roms/snes/(3) Unlicensed - Homebrew/(09) Super Mario Updates/ /home/pi/RetroPie/roms/snes/(3) Unlicensed - Homebrew/(10) Super Metroid Updates/ /home/pi/RetroPie/roms/snes/(3) Unlicensed - Homebrew/(11) Other Updates/ /home/pi/RetroPie/roms/snes/Non-Working/ MEDIA PATHS: /home/ /home/pi/ /home/pi/RetroPie/ /home/pi/RetroPie/Media/ ATARI 2600: /home/pi/RetroPie/Media/A2600/ /home/pi/RetroPie/Media/A2600/Artwork/ /home/pi/RetroPie/Media/A2600/Artwork/3D Boxart/ /home/pi/RetroPie/Media/A2600/Artwork/Action/ /home/pi/RetroPie/Media/A2600/Artwork/Box Front/ /home/pi/RetroPie/Media/A2600/Artwork/Cart/ /home/pi/RetroPie/Media/A2600/Artwork/Marquee/ /home/pi/RetroPie/Media/A2600/Artwork/Titles/ /home/pi/RetroPie/Media/A2600/Commercials/ /home/pi/RetroPie/Media/A2600/GameFAQs/ /home/pi/RetroPie/Media/A2600/Manuals/ /home/pi/RetroPie/Media/A2600/Movies/ /home/pi/RetroPie/Media/A2600/VGMaps/ ATARI 7800: /home/pi/RetroPie/Media/A7800/ /home/pi/RetroPie/Media/A7800/Artwork/ /home/pi/RetroPie/Media/A7800/Artwork/3D Boxart/ /home/pi/RetroPie/Media/A7800/Artwork/Action/ /home/pi/RetroPie/Media/A7800/Artwork/Box Front/ /home/pi/RetroPie/Media/A7800/Artwork/Cart/ /home/pi/RetroPie/Media/A7800/Artwork/Marquee/ /home/pi/RetroPie/Media/A7800/Artwork/Titles/ /home/pi/RetroPie/Media/A7800/Commercials/ /home/pi/RetroPie/Media/A7800/GameFAQs/ /home/pi/RetroPie/Media/A7800/Manuals/ /home/pi/RetroPie/Media/A7800/Movies/ /home/pi/RetroPie/Media/A7800/VGMaps/ COLECOVISION: /home/pi/RetroPie/Media/ADAM/ /home/pi/RetroPie/Media/ADAM/Artwork/ /home/pi/RetroPie/Media/ADAM/Artwork/3D Boxart/ /home/pi/RetroPie/Media/ADAM/Artwork/Action/ /home/pi/RetroPie/Media/ADAM/Artwork/Box Front/ /home/pi/RetroPie/Media/ADAM/Artwork/Cart/ /home/pi/RetroPie/Media/ADAM/Artwork/Marquee/ /home/pi/RetroPie/Media/ADAM/Artwork/Titles/ /home/pi/RetroPie/Media/ADAM/Commercials/ /home/pi/RetroPie/Media/ADAM/GameFAQs/ /home/pi/RetroPie/Media/ADAM/Manuals/ /home/pi/RetroPie/Media/ADAM/Movies/ /home/pi/RetroPie/Media/ADAM/VGMaps/ ATARI 5200 / ATARI 800: /home/pi/RetroPie/Media/ATARI800/ /home/pi/RetroPie/Media/ATARI800/Artwork/ /home/pi/RetroPie/Media/ATARI800/Artwork/3D Boxart/ /home/pi/RetroPie/Media/ATARI800/Artwork/Action/ /home/pi/RetroPie/Media/ATARI800/Artwork/Box Front/ /home/pi/RetroPie/Media/ATARI800/Artwork/Cart/ /home/pi/RetroPie/Media/ATARI800/Artwork/Marquee/ /home/pi/RetroPie/Media/ATARI800/Artwork/Titles/ /home/pi/RetroPie/Media/ATARI800/Commercials/ /home/pi/RetroPie/Media/ATARI800/GameFAQs/ /home/pi/RetroPie/Media/ATARI800/Manuals/ /home/pi/RetroPie/Media/ATARI800/Movies/ /home/pi/RetroPie/Media/ATARI800/VGMaps/ GAMEBOY / GAMEBOY COLOR / GAMEBOY ADVANCE: /home/pi/RetroPie/Media/GBA/ /home/pi/RetroPie/Media/GBA/Artwork/ /home/pi/RetroPie/Media/GBA/Artwork/3D Boxart/ /home/pi/RetroPie/Media/GBA/Artwork/Action/ /home/pi/RetroPie/Media/GBA/Artwork/Box Front/ /home/pi/RetroPie/Media/GBA/Artwork/Cart/ /home/pi/RetroPie/Media/GBA/Artwork/Marquee/ /home/pi/RetroPie/Media/GBA/Artwork/Titles/ /home/pi/RetroPie/Media/GBA/Commercials/ /home/pi/RetroPie/Media/GBA/GameFAQs/ /home/pi/RetroPie/Media/GBA/Manuals/ /home/pi/RetroPie/Media/GBA/Movies/ /home/pi/RetroPie/Media/GBA/VGMaps/ SEGA GENESIS / SEGA CD / 32X: /home/pi/RetroPie/Media/GENESIS/ /home/pi/RetroPie/Media/GENESIS/Artwork/ /home/pi/RetroPie/Media/GENESIS/Artwork/3D Boxart/ /home/pi/RetroPie/Media/GENESIS/Artwork/Action/ /home/pi/RetroPie/Media/GENESIS/Artwork/Box Front/ /home/pi/RetroPie/Media/GENESIS/Artwork/Cart/ /home/pi/RetroPie/Media/GENESIS/Artwork/Marquee/ /home/pi/RetroPie/Media/GENESIS/Artwork/Titles/ /home/pi/RetroPie/Media/GENESIS/Commercials/ /home/pi/RetroPie/Media/GENESIS/GameFAQs/ /home/pi/RetroPie/Media/GENESIS/Manuals/ /home/pi/RetroPie/Media/GENESIS/Movies/ /home/pi/RetroPie/Media/GENESIS/VGMaps/ ATARI LYNX: /home/pi/RetroPie/Media/LYNX/ /home/pi/RetroPie/Media/LYNX/Artwork/ /home/pi/RetroPie/Media/LYNX/Artwork/3D Boxart/ /home/pi/RetroPie/Media/LYNX/Artwork/Action/ /home/pi/RetroPie/Media/LYNX/Artwork/Box Front/ /home/pi/RetroPie/Media/LYNX/Artwork/Cart/ /home/pi/RetroPie/Media/LYNX/Artwork/Marquee/ /home/pi/RetroPie/Media/LYNX/Artwork/Titles/ /home/pi/RetroPie/Media/LYNX/Commercials/ /home/pi/RetroPie/Media/LYNX/GameFAQs/ /home/pi/RetroPie/Media/LYNX/Manuals/ /home/pi/RetroPie/Media/LYNX/Movies/ /home/pi/RetroPie/Media/LYNX/VGMaps/ NINTENDO ENTERTAINMENT SYSTEM / FAMICOM DISK SYSTEM: /home/pi/RetroPie/Media/NES/ /home/pi/RetroPie/Media/NES/Artwork/ /home/pi/RetroPie/Media/NES/Artwork/3D Boxart/ /home/pi/RetroPie/Media/NES/Artwork/Action/ /home/pi/RetroPie/Media/NES/Artwork/Box Front/ /home/pi/RetroPie/Media/NES/Artwork/Cart/ /home/pi/RetroPie/Media/NES/Artwork/Marquee/ /home/pi/RetroPie/Media/NES/Artwork/Titles/ /home/pi/RetroPie/Media/NES/Commercials/ /home/pi/RetroPie/Media/NES/GameFAQs/ /home/pi/RetroPie/Media/NES/Manuals/ /home/pi/RetroPie/Media/NES/Movies/ /home/pi/RetroPie/Media/NES/VGMaps/ NEO GEO POCKET / NEO GEO POCKET COLOR: /home/pi/RetroPie/Media/NGPC/ /home/pi/RetroPie/Media/NGPC/Artwork/ /home/pi/RetroPie/Media/NGPC/Artwork/3D Boxart/ /home/pi/RetroPie/Media/NGPC/Artwork/Action/ /home/pi/RetroPie/Media/NGPC/Artwork/Box Front/ /home/pi/RetroPie/Media/NGPC/Artwork/Cart/ /home/pi/RetroPie/Media/NGPC/Artwork/Marquee/ /home/pi/RetroPie/Media/NGPC/Artwork/Titles/ /home/pi/RetroPie/Media/NGPC/Commercials/ /home/pi/RetroPie/Media/NGPC/GameFAQs/ /home/pi/RetroPie/Media/NGPC/Manuals/ /home/pi/RetroPie/Media/NGPC/Movies/ /home/pi/RetroPie/Media/NGPC/VGMaps/ ODYSSEY 2: (Don't think this is emulated on the Pi) /home/pi/RetroPie/Media/ODYSSEY2/ /home/pi/RetroPie/Media/ODYSSEY2/Artwork/ /home/pi/RetroPie/Media/ODYSSEY2/Artwork/3D Boxart/ /home/pi/RetroPie/Media/ODYSSEY2/Artwork/Action/ /home/pi/RetroPie/Media/ODYSSEY2/Artwork/Box Front/ /home/pi/RetroPie/Media/ODYSSEY2/Artwork/Cart/ /home/pi/RetroPie/Media/ODYSSEY2/Artwork/Marquee/ /home/pi/RetroPie/Media/ODYSSEY2/Artwork/Titles/ /home/pi/RetroPie/Media/ODYSSEY2/Commercials/ /home/pi/RetroPie/Media/ODYSSEY2/GameFAQs/ /home/pi/RetroPie/Media/ODYSSEY2/Manuals/ /home/pi/RetroPie/Media/ODYSSEY2/Movies/ /home/pi/RetroPie/Media/ODYSSEY2/VGMaps/ TURBOGRAFX 16 / TURBOCD: /home/pi/RetroPie/Media/PCE/ /home/pi/RetroPie/Media/PCE/Artwork/ /home/pi/RetroPie/Media/PCE/Artwork/3D Boxart/ /home/pi/RetroPie/Media/PCE/Artwork/Action/ /home/pi/RetroPie/Media/PCE/Artwork/Box Front/ /home/pi/RetroPie/Media/PCE/Artwork/Cart/ /home/pi/RetroPie/Media/PCE/Artwork/Marquee/ /home/pi/RetroPie/Media/PCE/Artwork/Titles/ /home/pi/RetroPie/Media/PCE/Commercials/ /home/pi/RetroPie/Media/PCE/GameFAQs/ /home/pi/RetroPie/Media/PCE/Manuals/ /home/pi/RetroPie/Media/PCE/Movies/ /home/pi/RetroPie/Media/PCE/VGMaps/ SONY PLAYSTATION: /home/pi/RetroPie/Media/PSX/ /home/pi/RetroPie/Media/PSX/Artwork/ /home/pi/RetroPie/Media/PSX/Artwork/3D Boxart/ /home/pi/RetroPie/Media/PSX/Artwork/Action/ /home/pi/RetroPie/Media/PSX/Artwork/Box Front/ /home/pi/RetroPie/Media/PSX/Artwork/Cart/ /home/pi/RetroPie/Media/PSX/Artwork/Marquee/ /home/pi/RetroPie/Media/PSX/Artwork/Titles/ /home/pi/RetroPie/Media/PSX/Commercials/ /home/pi/RetroPie/Media/PSX/GameFAQs/ /home/pi/RetroPie/Media/PSX/Manuals/ /home/pi/RetroPie/Media/PSX/Movies/ /home/pi/RetroPie/Media/PSX/VGMaps/ SEGA MASTER SYSTEM / GAME GEAR / SG-1000: /home/pi/RetroPie/Media/SMSGG/ /home/pi/RetroPie/Media/SMSGG/Artwork/ /home/pi/RetroPie/Media/SMSGG/Artwork/3D Boxart/ /home/pi/RetroPie/Media/SMSGG/Artwork/Action/ /home/pi/RetroPie/Media/SMSGG/Artwork/Box Front/ /home/pi/RetroPie/Media/SMSGG/Artwork/Cart/ /home/pi/RetroPie/Media/SMSGG/Artwork/Marquee/ /home/pi/RetroPie/Media/SMSGG/Artwork/Titles/ /home/pi/RetroPie/Media/SMSGG/Commercials/ /home/pi/RetroPie/Media/SMSGG/GameFAQs/ /home/pi/RetroPie/Media/SMSGG/Manuals/ /home/pi/RetroPie/Media/SMSGG/Movies/ /home/pi/RetroPie/Media/SMSGG/VGMaps/ SUPER NINTENDO: /home/pi/RetroPie/Media/SNES/ /home/pi/RetroPie/Media/SNES/Artwork/ /home/pi/RetroPie/Media/SNES/Artwork/3D Boxart/ /home/pi/RetroPie/Media/SNES/Artwork/Action/ /home/pi/RetroPie/Media/SNES/Artwork/Box Front/ /home/pi/RetroPie/Media/SNES/Artwork/Cart/ /home/pi/RetroPie/Media/SNES/Artwork/Marquee/ /home/pi/RetroPie/Media/SNES/Artwork/Titles/ /home/pi/RetroPie/Media/SNES/Commercials/ /home/pi/RetroPie/Media/SNES/GameFAQs/ /home/pi/RetroPie/Media/SNES/Manuals/ /home/pi/RetroPie/Media/SNES/Movies/ /home/pi/RetroPie/Media/SNES/VGMaps/ WATARA SUPERVISION: (Don't think this is emulated on the Pi) /home/pi/RetroPie/Media/SUPERVISION/ /home/pi/RetroPie/Media/SUPERVISION/Artwork/ /home/pi/RetroPie/Media/SUPERVISION/Artwork/3D Boxart/ /home/pi/RetroPie/Media/SUPERVISION/Artwork/Action/ /home/pi/RetroPie/Media/SUPERVISION/Artwork/Box Front/ /home/pi/RetroPie/Media/SUPERVISION/Artwork/Cart/ /home/pi/RetroPie/Media/SUPERVISION/Artwork/Marquee/ /home/pi/RetroPie/Media/SUPERVISION/Artwork/Titles/ /home/pi/RetroPie/Media/SUPERVISION/Commercials/ /home/pi/RetroPie/Media/SUPERVISION/GameFAQs/ /home/pi/RetroPie/Media/SUPERVISION/Manuals/ /home/pi/RetroPie/Media/SUPERVISION/Movies/ /home/pi/RetroPie/Media/SUPERVISION/VGMaps/ NINTENDO VIRTUALBOY: (Don't think this is emulated on the Pi) /home/pi/RetroPie/Media/VIRTUALBOY/ /home/pi/RetroPie/Media/VIRTUALBOY/Artwork/ /home/pi/RetroPie/Media/VIRTUALBOY/Artwork/3D Boxart/ /home/pi/RetroPie/Media/VIRTUALBOY/Artwork/Action/ /home/pi/RetroPie/Media/VIRTUALBOY/Artwork/Box Front/ /home/pi/RetroPie/Media/VIRTUALBOY/Artwork/Cart/ /home/pi/RetroPie/Media/VIRTUALBOY/Artwork/Marquee/ /home/pi/RetroPie/Media/VIRTUALBOY/Artwork/Titles/ /home/pi/RetroPie/Media/VIRTUALBOY/Commercials/ /home/pi/RetroPie/Media/VIRTUALBOY/GameFAQs/ /home/pi/RetroPie/Media/VIRTUALBOY/Manuals/ /home/pi/RetroPie/Media/VIRTUALBOY/Movies/ /home/pi/RetroPie/Media/VIRTUALBOY/VGMaps/ BANDAI WONDERSWAN: (Don't think this is emulated on the Pi) /home/pi/RetroPie/Media/WONDERSWAN/ /home/pi/RetroPie/Media/WONDERSWAN/Artwork/ /home/pi/RetroPie/Media/WONDERSWAN/Artwork/3D Boxart/ /home/pi/RetroPie/Media/WONDERSWAN/Artwork/Action/ /home/pi/RetroPie/Media/WONDERSWAN/Artwork/Box Front/ /home/pi/RetroPie/Media/WONDERSWAN/Artwork/Cart/ /home/pi/RetroPie/Media/WONDERSWAN/Artwork/Marquee/ /home/pi/RetroPie/Media/WONDERSWAN/Artwork/Titles/ /home/pi/RetroPie/Media/WONDERSWAN/Commercials/ /home/pi/RetroPie/Media/WONDERSWAN/GameFAQs/ /home/pi/RetroPie/Media/WONDERSWAN/Manuals/ /home/pi/RetroPie/Media/WONDERSWAN/Movies/ /home/pi/RetroPie/Media/WONDERSWAN/VGMaps/
-
@Used2BeRX said in Making premade gamelist.xml with xtra media collections:
We are going to somehow be able to put meleu's script into MetaX, right @UDb23 ?
No. My code doesn't run on Windows. It is intendend to be run on Linux and after the gamelist.xml is ready, i.e. after you generate your xml files using the @UDb23 's MetaX.
Since you are already getting support from other people, and they seem to clearly understand what you need, I'll leave this task to them.
If you (or your Linuxer fellow) need more help from me for something in a Linux environment feel free to ask.
Cheers!
-
@meleu @UDb23 Well UDb23, I should probably leave this up to you and what you're doing. I don't want to turn away help that you could use on your program, but unless you knew of a way to integrate meleu's work into MekaX I don't know how it's going to help us out. Please chime in here and let us know what your plan is.
In any event, I should at least show a few examples of what the path line should look like for a few different roms.
Here's a few examples of different games for NES and what the path line should read as:
Mega Man:
<path>/home/pi/RetroPie/roms/nes/(1) Licensed/(1_1) US Licensed/MEGA MAN I.ZIP</path>
Championship Lode Runner:
<path>/home/pi/RetroPie/roms/nes/(1) Licensed/(1_5) Japan/CHAMPIONSHIP LODE RUNNER.ZIP</path>
Final Fantasy II:
<path>/home/pi/RetroPie/roms/nes/(2) Translated/FINAL FANTASY II.ZIP</path>
Protoman: The Red Bomber
<path>/home/pi/RetroPie/roms/nes/(3)Unlicensed - Homebrew/(3_08) Mega Man Updates/PROTOMAN - THE RED BOMBER.ZIP</path>
Gall Force: Eternal Story
<path>/home/pi/RetroPie/roms/nes/(4) Famicom Disk System/(4_1) Translated/GALL FORCE - ETERNAL STORY.ZIP</path>
-
Imagine the following scenario:
-
you have a gamelist.xml for nes games and it has this entry:
<path>./MEGA MAN I.ZIP</path>
-
you have a file named
MEGA MAN I.ZIP
and it lives in the directory/home/pi/RetroPie/roms/nes/NO/MATTER/HOW/MANY/SUBFOLDERS/YOU/NEED/
. -
if you run my script in your RetroPie system, it will change this
<path>./MEGA MAN I.ZIP</path>
to this:
<path>/home/pi/RetroPie/roms/nes/NO/MATTER/HOW/MANY/SUBFOLDERS/YOU/NEED/MEGA MAN I.ZIP</path>
Trying to explain in simple English (which isn't my mother language): my script gets every
<path>
entry in the given gamelist.xml file and tries to find the rom in the real file system, if it finds the ROM, update the<path>
with the full path to the ROM. If it doesn't find the rom, leave the<path>
as is.But it runs on Linux only.
From what I understood, it's pretty simple to accomplish what you want in a Linux environment. The big problem here is that we have different backgrounds and sometimes we don't quite understand each other.
If you invite your Linuxer friend to join this conversation here maybe we'll have more luck.
-
-
@meleu I invited him a few hours ago in hopes he would join the forum here and he could add input. Hope to hear back from him in the next day or two.
Your English is great man. If you didn't say it wasn't your native language I never would have known. Half the people I know who speak English natively can't type anything to save their life. I'm definately not having any problems understanding you.
I'm just a coding dummy is all. DOS is my major background, but even there I never was a coding wizard or anything. I knew all the basic commands and I've been able to write a lot of helpful launch files for a DOSBox setup I've been working on. It's easier for me to figure out things I don't know about DOS by looking them up online because I at least have the basics down. That's a lot harder for me to do with Linux because I'm still just learning the very basic stuff. It's not as hard as it would be if I didn't know DOS to compare it to, but I'm still very new at this.
I'm still hoping that in the end UDb23 is able to make MekaX a one-stop-shop for this process so nothing has to be done in Linux. I'm currently only running a Pi Zero, so I would imagine that the lack of processing power on that would not help issues either.
If there is no way that UDb23 is able to do all of this in MekaX and it has to be done partially in Linux than that will be the only option. It's surely better than me having to edit nearly 10,000 entries by hand, and then having to do that all over again any time somebody upgrades or adds artwork/videos/games.
I'm going to try it out, but I don't know where to start. Could you explain to me how to run the program and where the media needs to be? I think the media files and rom files are already explained so we should be working right there, but where would I have to put the {gamename}.XML files for the program to work?
Should I maybe add a folder to all of the system media folders? For example:
/home/pi/RetroPie/media/NES/Synopsis/MEGA MAN I.XML
-
@meleu I've downloaded it and tried running it a bunch of times.
fullpath-gamelist.sh --help
: command not found
./fullpath-gamelist.sh --help
: Permission denied
sudo ./fullpath-gamelist.sh --help
: command not found
$ ./fullpath-gamelist.sh --help
: command not foundMe and linux. This just about sums that relationship up. :)
-
@Used2BeRX said in Making premade gamelist.xml with xtra media collections:
Your English is great man. (...) I'm definately not having any problems understanding you.
I was talking about different Operational Systems backgrounds, not exactly English. :-) It seems that you are not aware of the extremely powerful tools a Linux environment have to process text files like you want to do, and this is making our conversation a bit hard to follow...
I'm still hoping that in the end UDb23 is able to make MekaX a one-stop-shop for this process so nothing has to be done in Linux.
It would be hard to accomplish, because file his program runs on Windows and the gamelist.xml files have paths using the UNIX style.
Windows:C:\path\to\some\file.txt
UNIX:/path/to/some/file.txt
As far as I understood @UDb23 asked me to "fix" the xml files that his MetaX is generating. And that's what I tried to do. But IMHO making the entire process in Linux would be extremely simpler and faster.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.