I want to state here that you should read the
entire write up first! This write up is for those who want to try. I will never say that this is "simple as making a list"..far from it. If you do wish to try things in this write up I will warn you now
back up your roms and lists. You chose to try this and did I not bite your ankle and make you. If anything goes wrong following this you were warned!I also know there are tools that help do this sort of thing...but again..picky control...
I love Emulation Station on the Raspberry PI. It is lightweight and works well for an "under powered" little computer. That is why it was chosen..simply because it was light and not system resource heavy. That all changed in time of course with added features still is works well on a Raspberry PI. I love Attract Mode it has that "flash..bling" that really brings a cabinet together but it is not really made for the PI.
Now if we move to a "big-boy" desktop PC we can use Attract Mode because it has the resources to handle it. WAIT! "No you can use Attract Mode on a Raspberry PI and you can used Emulation station on a PC!", you cry. Why yes I know that...I have used both on both platforms and still do... okay well get to the point then fox!
My point is I like both front ends and use them where they run better then the other...as I think most do. However I do think that Attract Mode has one big advantage over Emulation station...and that is simply how the game list is generated.
I have no problem with Emulation Station xml format list. It adds a lot of information organized neatly and can be edited by paw..err hand if need be. XML format is a big pain in the tail at times though! Attract Mode on the other paw is this jumbled mess of seemingly unorganized mess of information if you open it in a plain text editor. The problem is here if you think that well then you do not understand the format of semi-colon separated info.
Yes Attract Mode lists
can be opened in a text editor. If fact they say "mame.txt"...that is a .txt extension..so DUH fox! But... it is not a text file at all! It is a "misnamed" Comma Separated Value or csv file. For those of you who do not understand spreadsheets then you don't understand that what this means is..yes it is a spreadsheet information format file..and thus can be opened in a spreadsheet. And by doing so will organize everything neatly and easily. We have
much more power when we open it this way...as you shall see.
(Note I will be using Libreoffice Calc in these examples. Other spreadsheet programs
should work the same way generally. if you have a problem with any of the steps with your software and need help
go to the software site forum or help group do not ask me! I did not make the program and can not help or fix it! Also note that if you need a spreadsheet program there are free ones available to use..use your favorite search engine to help with that
)
(Note: It is best to have a list made and the category, controls, player, ect. info added to your list. You could make a list to work with instead of your main "worked on for three days to get exactly the way I want it" list.) First thing you want to do is (if you don't have a spreadsheet program go get that first!)
make a copy of the list you are working with! I can not stress that enough! (open your list in a text file and save as romlist.txt.bak or copy and paste it into another folder all together)
Once you have made a copy rename your romlist.txt to romlist.csv (e.x. mame.txt to mame.csv) Next you should just be able to double-click it and it should open with your default spreadsheet program.
Once loaded you should get a box asking you how you want to format/import it once you have opened it.
This next step is important do not just skip it! Under your separator options you want to choose "separated by..and then semi-colon. (Semi-colons are the funny little things that look like ; ) Once that is all selected you should see the list text displayed in separate rows and columns.
At the top you will notice that you have this:
#Name Title Emulator CloneOf Year Manufacturer Category Players Rotation Control Status DisplayCount... (ect...) you may have to scroll to the right to see all the columns. The information/data is still there though!
We are going to use the game 005 by Sega as an example: (I have removed missing info headers to save space and formatting...)
#Name | Title | Emulator | CloneOf | Year | Manufacturer | Category | Players | Rotation | Control | Status | DisplayCount | DisplayType | Buttons |
5 | 5 | mame | | 1981 | Sega | Maze / Shooter Small | 2P alt | 270 | joystick (4-way),joystick (4-way) | imperfect | 1 | raster | 1 |
So what the heck does all that mean?! Actually it is easy!
- The hash (#) tells Attract Mode do not read/display (or ignore) this line. So the is why this doesn't show up in your list.
- Name is the ROM NAME. Thus or example is 005. (the rom name[005.zip]) This may not be so different on a console system but in mame-ish emulators is a BIG deal!
- Title is the name of the game and 005 is the NAME of the game. As a better example let's take the rom samsho. The rom FILE is named samsho...but the game is Samurai Shodown. Attract Mode shows you the GAME NAME on your list. It NEEDS the rom file name to stick into the command line to load it. (i.e. MAME doesn't know how to load mame samurai shodown...but it DOES understand how to load mame samsho...get all that?)
- Emulator shows the emulator that the list/game is attached to (in this case mame)
- Clone of will be filled if there is a clone for that rom/game (005 doesn't have a clone so it is blank)
- Year means the year it came out in this case 1981
If you want a FULL breakdown of all the categories then I can do one..or maybe someone will do it for me in this thread?
But fox it's not named 5 it's named 005..it's wrong!..and I will tell you no it is not! See spreadsheets are really made for number crunching not text so what Calc has done is shortened the number format..why leave two zeros in front of a number right? So to change that we highlight the entire spreadsheet (click the top left corner of the sheet.. or press Ctrl+A) go to Format -> Cells (or press Ctrl+1) and we change the format to TEXT. Now click OK. We'll need to do just a little bit of manual work here... and that is add the 00 to the name and title columns (that is change 5 to 005) Now that wasn't difficult was it!?
From here you may save your csv list if you want. However you MUST save it in csv text format! If you do not then Attract Mode
will not be able to read it! if you do save it in the wrong format just re-save it in the correct format overwriting the wrong file. (you DID make a backup right?) When you have edited your list you can save it as a .csv and then rename it to a .txt file at AM will read it like nothing ever happened.
So there you go now it is all nice and neat and organized in front to you to read! *notices grumbling and people getting up* No wait don't go! Stay with me..I promise it gets better! Besides...There is beer and fried chicken at the end of all this ..at least stick around for that. No really Raygun and Progets paid for it and I had it catered...they just haven't got the credit card bill yet... heh....
Now from here we have a
lot of power over our list! Now some of you veterans here will scream that is what Attract Mode does why should I do it the hard way? Well you
don't have to do it this way..and I would let Attract Mode filter (it's just easier) but as you'll see we can do things with our list now that Attract Mode can
not do
It gets deeper than just Attract Mode's list as well...but that is for another thread. But we will make an example here so you can see what I mean.
Let's highlight the D column (clones) and auto filter that. When we auto filter let's remove the clones by unchecking all items (deselect the all box) the click the (empty) item and press OK. From here we can do two things...we can copy ALL (the entire spreadsheet) and paste it into a new spreadsheet and the save it in the right format/name and use it as a new list. "So you are making me filter out the clones the hard way? I can make Attract Mode do that for me way easier! You are correct on that! ..Yes Attract Mode is powerful..but can it pull a rabbit out of it's own hat? Nope. That is why we need a spreadsheet...
First just copy the A column (#NAME) then paste it into a new spreadsheet but not into the A column...paste it into the B column...(and the #NAME needs to be deleted here) okay now what fox? first we get our magic wand... let's say we don't want all those pesky clone games. They take up space and we never use them anyway. So what we do is in the A column we type:
rm (that is linux command for delete and a white-space)
or
del (that is windows command for delete and a white-space)
in the C column we type .zip
...or we can copy them to another folder by typing:
cp .zip /home/user/mame/roms/clones (that is the linux copy command cp and a whitespace in A .zip and a whitespace in C and /home/user/mame/roms/clones in D)
copy .zip C:\mame\roms\clones (or the windows copy command with a whitespace in A .zip and a whitespace in B C:\mame\roms\clones in the D column.
so now we have at the top:
A | B | C | D |
cp | 88games | .zip | /home/user/mame/roms/clones |
that is row one (1) with columns A, B, C and D filled with info!
(trust me it will all make sense I promise!)
okay so now all we have to do is do that to ALL the rows! "What the heck I am not typing that a thousand times...you are a crazy fox after all!" you cry. That is just it..you don't have to type anything! let's highlight the cell in column A row 1 (A1) got it? good...now hover your mouse over it..see the little block on the bottom right..hover your mouse over that..it should change to a cross shape...now click and hold your mouse button down and drag it downward. Magic huh?! (it should copy that text from cell A1 to B1 and so on down.) makes it way easier huh? now let's do that to cells 1C AND D1 highlight both of them and drag them down like you did column A.
Okay now you have done that..now what? more magic
this time highlight Cell 1F (the first cell in column F) here is the other power of spreadsheets...formulas! "But formulas are just for number crunching!" you cry. And to that I say...there is more than one way to sneak into a hen house! I mean not that I know that..I have just heard that said from other foxes... heh
so with our F1 cell highlighted let's start our function wizard and once there we choose category text..and function concatenate from there you choose A1, B1, C1, D1 then okay it
Now you are left with: cp 88games.zip /home/user/mame/roms/clones in Cell F1. Now all we have to do is drag it all the way down the column to the end.
Anyone that is used to the Terminal/Command line might notice what I just did there. This is why the white-spaces were added and the .zip and the folder path... yes we just made a bash/batch script!
well...almost....
open a
plain text editor like Pluma or Notepad. (Yes it MUST be a editor like that. These editors do not add hidden formatting tags to text which can
screw up an entire file like this!) Now copy the F column of our spreadsheet now paste it into the text editor...almost instant batch scripts!
(to understand better use a search engine..I leave that as homework..or someone can add in the missing info below thanks!)
And we are
still not done!
You can use
any column of information you want...just want capcom games...done! Just Joystick games?... DONE!
Again honestly yes
i do know that you can use Attract Mode to filter items. But I did not write this to show you how to do it the hard way. I wrote this to show you how to have
precise control in an easy way should you want it. Remember this can be done with any game list..not just a mame list. Mostly I learned all this because of how I set up my list. I wanted just my region's roms and the clones that my region is familiar with. That is people don't know what puckman is (the parent or original name) but they do know what pac-man is (pacman is actually a clone..no really). That and I was able to see what games were clones and deleted them. Not all of us use a I-25 intel with 14 core 5.0 Gigahertz over clocked to 5.3 GigaHertz CPU with 256 Gigabytes of ram and a 100 Terabyte SSD and a high-end 4 terabyte GDDR 7 ram graphics cards for our arcade machines. Most of us pick these things up cheap/used/"dead"/"broken" and they are low spec machines with small hard drives so space is a priority..
I have crammed an "entire"
working MAME (arcade) set and artwork into a 40GB IDE hard drive..no really. (Well all the games the system could run anyway. it's a 32-bit single core running at 2 Ghz and 2Gb of ddr ram. It won't run any cpsn (think street fighter EX [ZiNC roms]) games or higher but it
does work!) Again I know hard drives are huge and cheap...but we love our USB drives and our SD cards for our little raspberry PIs huh?
There is more than just saving space here though. The point of this writing was to show you that you have
direct control of your list to the smallest detail should you want it and things can be "automated easily"...But that is for another thread.
One last thing...text that is in a spreadsheet is easy to move around. Ever notice how your NHL or NFL OR NBA games are out of order?
NFL 2000
NFL 2001
then..
NFL 99
NFL 98...ect...
You can move the
entire row/line (or just cut and paste into a blank new line (row)) and put them in order. Save it like above and then your games will be in order!
Happy gaming!
(beer and chicken is being served in the back..eat it quick before progets and raygun get the bill! o.o )