Front End - Tron Style
When I splurged and added a complete set of ROMs (for all the games I own) my Authorware interface wasn't going to cut it anymore, particularly since it took about 30 seconds to read in the data for about 100 games.
I wrote version 2 of the Arcade MAME Front End in Visual Basic and it supports 4000+ games now. It utilized the Catlist classifications via their INI file, and all their official Genres and Categories are implemented. However, I hide the Uplayable, Mature, and Rhythm categories. (The Rhythm category because my machine bogs down on all those chd-supporting games, plus I lack the DDR pad) If you need a breakdown of all these games by genre/category, don't manually classify 4000+ games! Get them from http://www.mameworld.net/catlist.
In addition, I have an ini file to support my "KLOV Top 100" game category. It contains the ROMs and Titles of the games I support from KLOV's voted 100 arcade games list.
The Killer List of Videogames Top 100
The corresponding INI File (.txt so my web server knows it's not binary)
These ini files were gold on my xp machine, I used GetPrivateProfileString calls to categorize everything with an array of these bad boys:
Type GameDataType iIndex As Integer sROM As String sTitle As String sGenre As String sCategory As String sYear As String * 4 sManufacturer As String bTop100 As Boolean bHide As Boolean iCloneCount As Integer arrClones(1 To MAX_CLONES) As Integer iCloneOf As Integer End Type
I harness the clone information so I can indent the clones in the list underneath their parent ROM.
But when I ran this on the Win98SE machine in the arcade cabinet, I quickly learned GetPrivateProfileString only works on ini files up to 64K on Win98! So I had to store things in my own all-inclusive data file. But now instead of taking 25 seconds to read and sort everything, it takes 1 second.
An unfortunate side effect of that is that I used to show a Dave Dries MAME intro video on a splash screen while it was reading in the ROMs for 25 seconds. But now the category menu comes up right away, there's no time!
This look and feel is inspired by Tron, I use some Tron 2.0 (PC) screen captures as backgrounds, and Tron sound effects for cursor movement and category/game selection. Here are the two backgrounds I use:
![]() |
| Background for the game selection screen. |
![]() |
| Background for the category selection screen. (These actually might have come from IGN rather than from in-game) |
The TRON sound effects were from a Windows Tron Theme I downloaded, by Sylvain De Chantal. I use the disc deflection, de-rez, and transport sounds.
Once again I have photos of myself to represent the categories:
Ball & Paddle
|
Breakout
|
Climbing
|
Driving
|
Fighter
|
Maze |
Misc |
Platform
|
Puzzle
|
Quiz |
Shooter
|
Sports
|
Here are final screen caps in action:
The emulator I'm using this time in AdvanceMame, I like the option of confirming exit. One unfortunate night during a marathon Snow Brothers session, two friends of mine simultaneously died and hit Player 1 Start & Player 2 Start respectively, which as you know by default acts as the exit key combo. But a combination of the proper event.dat and misc_safequit setting will hopefully prevent that from happening again!
Another feature I thought about for this menu system is showing another information page, perhaps with the game history data and images for the flyer, control panel, cabinet, and title screen. I would rarely use these though, but since the graphics and data are all there I may as well make them available next version right? On the game selection screen, maybe buttons 3-6 will bring up these additional screens.
Like my Authorware front end, let me know if you want the source code. It's not going to be something I want to support but it may be useful if you want to figure out the things I don't want to document! The world might not need another arcade front end but with enough interest I could make a setup program for this and add some documentation.






0 Comments:
Post a Comment
<< Home