Pandora Pandora Emulator Frontend


1: MD5's aren't very useful. Each rom will have like 100 different versions.

Mario 1 [!]
Mario 1 US[!]
Mario 1 !!![US]!!!
Mario 1 EU
Mario 1

So that won't be the best method.

2. Not very realistic for people with like 1,000 roms. We're probably not going to go there.

The best method I'd say is to have the software look at the title of the rom lets say "Super Mario World (U).smc" It removes the extension and the (U). It would query the server and find "Super Mario World" under Super Nintendo (since the user will have it in the right folder.) Then it will download all the information on the game and store it on the database within the program.

Now let's say theres one called "rom.smc", it would search and find nothing so the user would have to manually enter the rom title which is "Super Goom Goom Palace", well it would query the server once more and find nothing. Well, it's time for this user to either let it be incomplete on information or update himself and submit the info to the server for later approval into the database.

The best bet would be to mark unknown games and try to urge users to keep their games correctly marked.

I realize this would be a HUUUGE project/undertaking to get all that in, but I figure it would be worth it, and could potentially successfully ported to pc. That's the most realistic way to deal with game information IMO. Unless we take away the server and let each user update the data themselves (which would be fine at the start.)

A lot of emulators have screenshot abillities already, I was thinking if it were possible to tap into those features and let the user take the screenshots like in the ZnexBox emulator.

I dunno...
 
The problem with using the filename is that there are many different ways to name something. For example;

SuperMarioWorld
Super_Mario_World
super_mario_world
SUPER_MARIO_WORLD

etc, it gets even worse once you mix in exclamation marks and hyphens;

King Arthur's World
King Arthur's World
King Arthur`s World

Which one is the correct one? The beautfy of URF is that it'd be tied to the specific ROM, and it'd allow for automated tools, as well.
 
Tiptup300 said:
Okay, first thing we need to get down. Will emulators be added dynamicly or not. If they are dynamic we'll need to cut down to only the emulators that have no big quirks. If by code we will have to figure out which emulators have too much specifics to worry about. We don't want to add a bunch of features for each and every emulator. This must remain consistent.

BTW, Tweaks: http://img147.imageshack.us/img147/8135/deleteyq9.png

EDIT:

More tweaks:

Item Unselected: http://img120.imageshack.us/img120/159/deleteng5.png
Item Selected: http://img151.imageshack.us/img151/3178/deleteuw6.png

As you can see, I elimated the bars as they just took up screen space.



That looks great. Good Job. Is that the final design? Also, I think renaming of Roms could work as long as we get the names from some sort of database. I agree that diff. File names could be tough, but I'm sure that we will find a way.
 
Last edited by a moderator:
PandoraRox said:
That looks great. Good Job. Is that the final design? Also, I think renaming of Roms could work as long as we get the names from some sort of database. I agree that diff. File names could be tough, but I'm sure that we will find a way.
Another thing that came to mind; what about localizations? A game in Japanese might have the title screen in Japanese while the english version has the title screen in english. Thus, do we display the title screen in Japanese, or English? And what if it's a fan translation?

And, using the names would just be the exact same thing as using md5 - it's a primary key used to define something with. So, we'll still have the exact same problems as with md5 hashes... :/
 
Last edited by a moderator:
I'm not saying having a direct match up of Super Mario World. I'm saying having a search function that would return a list of matches. Then the user would choose.

And whats this about different languages? I was saying the user would take care of the screenshots, not the server.

EDIT: I could use some input on the the tweaks I made.
 
I see the benefit of the urf idea but this would take the user to make the urf files (granted an application could be created to do it). Since the downloading of ROMS for any system is still vary gray I would rather not be responsible with the entire library of video games for each of the supported systems. which would be required if we use the urf idea. That being said if all the emulators supported NATIVELY the urf format I wouldn't mind using it at all.

I really like what I see TipTup300
 
Aimless_E said:
I see the benefit of the urf idea but this would take the user to make the urf files (granted an application could be created to do it). Since the downloading of ROMS for any system is still vary gray I would rather not be responsible with the entire library of video games for each of the supported systems. which would be required if we use the urf idea. That being said if all the emulators supported NATIVELY the urf format I wouldn't mind using it at all.

I really like what I see TipTup300
Is it possible to add meta data to any rom? Like at the end, I guess not since the emulator would pick it up.

EDIT: Preview showing untagged game: http://img236.imageshack.us/img236/8930/deleteiy6.png
 
Last edited by a moderator:
Thoughts about the backend

emu-scanner
Scans all media (removable and internal) for supported emulators.
Notes emulators location and version # in a file to be read later
Configuration options for each emulator found will be stored in ZiBs main directory under emulator_configs (I know its complicated) :p
These configs will be accessed via the INTERNET either through centralized repositories or by a POND channel.
The version information will help to make sure that the options used to run the game will be up to date (or behind as the case maybe)
The configs will have detailed information on available options and how to handle them. A "default" (best options) setup will be downloaded as well so that you should get the best performance on most games.

If two emulators exist on the media device that facilitate the same games (snes9x,squidge-snes) then both configs are downloaded and it will be up to the game config to determine which is used.


hells_dark said:
Just mockups, right ? (photoshop & co)
No code behind yet ?
Some but they are not merged tiptup300 is our GUI Guy I'm currently in charge of the code.
 
Last edited by a moderator:
Tiptup300 said:
I'm not saying having a direct match up of Super Mario World. I'm saying having a search function that would return a list of matches. Then the user would choose.

And whats this about different languages? I was saying the user would take care of the screenshots, not the server.

EDIT: I could use some input on the the tweaks I made.
I like the mockup. I agree that the top bar was wasting space, as it only had one button. I like that you took my suggestion for making the interface gray. I think the menu from the side for selection is good. I like what see, and good work.
 
Last edited by a moderator:
PandoraRox said:
Tiptup300 said:
I'm not saying having a direct match up of Super Mario World. I'm saying having a search function that would return a list of matches. Then the user would choose.

And whats this about different languages? I was saying the user would take care of the screenshots, not the server.

EDIT: I could use some input on the the tweaks I made.
I like the mockup. I agree that the top bar was wasting space, as it only had one button. I like that you took my suggestion for making the interface gray. I think the menu from the side for selection is good. I like what see, and good work.


I too like the mock-up. I think the less visible buttons the better it will look. I particularly like the side bar that appears when you select the game.

As far as the search function is concerned I think its a good idea. I would like to see on the gui somewhere an option or a listing of all of the roms that matched the search criteria.
Like this

Super Mario World [3]
----------Super Mario World (U)
----------Super Mario World (J)
---------Super Mario World (EU)

That way we would know how many duplicates we have on or SD card.

what do you think?

Edit: stupid formating issue
 
Last edited by a moderator:
If you have a database of MD5 sums, I don't see a problem with matches to multiple versions of the game. You just tie the MD5 sums to the individual game title in a separate table, like this:

md5_to_rom
----------------
md5sum varchar
id_of_rom int unsigned

rom
----------------
id_of_rom int unsigned primary key
game_title varchar
...

Then you can have 20 different MD5 sums of the game, all tied to one instance of game info. I think in general you would want that even if you're searching based on text game title, as the "optimized" way of playing the game is likely the same for most versions.

As for text searching for the game title, you could just strip all spaces and symbols, lower case everything, and compare against that, perhaps stripping out any stuff within parens first (like (U), (J)).

I'd say go with whichever is faster. You could even fail over to an option for text-based search if the MD5 search fails, and give someone an option to add their MD5 to the list.
 
Yamara said:
If you have a database of MD5 sums, I don't see a problem with matches to multiple versions of the game. You just tie the MD5 sums to the individual game title in a separate table, like this:

md5_to_rom
----------------
md5sum varchar
id_of_rom int unsigned

rom
----------------
id_of_rom int unsigned primary key
game_title varchar
...

Then you can have 20 different MD5 sums of the game, all tied to one instance of game info. I think in general you would want that even if you're searching based on text game title, as the "optimized" way of playing the game is likely the same for most versions.

As for text searching for the game title, you could just strip all spaces and symbols, lower case everything, and compare against that, perhaps stripping out any stuff within parens first (like (U), (J)).

I'd say go with whichever is faster. You could even fail over to an option for text-based search if the MD5 search fails, and give someone an option to add their MD5 to the list.
I like this idea.
 
Last edited by a moderator:
I don't know about SNES, but I know for GBA and NDS they have an internal identifier, such as the GBA having a 4 character identifier at location 0x080000AC. If the earlier roms had this as well, that would be the perfect solution of the rom game name finder. Just have a list of where in the roms are the identifiers held, and scan from there.
 
GPSP uses the method with the Header Informations into the ROM Files. It doesn't matter how the file is named, the Header does this job and compare the ROM with the gamelist (for rom-specific tweakings etc...) I'm sure many ROMS have such a header inside the file. :)
 
It looks like you guys are doing awesome work, but I wanted to make a suggestion. There is a program for Windows and Linux called GCstar that is used for cataloging games, movies, etc. For game collections, it pulls info from MobyGames, GameSpot, Amazon, etc. One of the spiffy features, is that you can assign an executable for every entry, so on my GCstar setup, when I select the entry for Chrono Trigger and hit play it automatically launches the game in ZSNES. It could also make a nice front-end for stored movies and comics as well. Of course, sometimes it's easier to code something up from scratch rather than porting and adapting a pre-existing software package. In any event, if you guys are curious, check out GCstar
 
Tiptup300 said:
Could we make executables on the pandora's dash? I really like that idea.
you mean make a scanner that make an executable for each game so that there is no real front-end beyond what ever the pandora has?

If yes then yes. If no then what do you mean.

@Yamara

I agree that it might make the most since to use md5 sums for game recognition. The explanation really sold me.

@all

Question: is who is going to update and maintain the DB for each emulator? :)
 
Last edited by a moderator:
Aimless_E said:
Question: is who is going to update and maintain the DB for each emulator? :)
Everyone! If you have a rom thats unknown you can simply choose to post it to the db, wiki-ish (ofc with the ability to fix false entries etc)
 
Last edited by a moderator:
Aimless_E said:
Tiptup300 said:
Could we make executables on the pandora's dash? I really like that idea.
you mean make a scanner that make an executable for each game so that there is no real front-end beyond what ever the pandora has?

If yes then yes. If no then what do you mean.


Let the user select certain roms (that they regularly play) that would show up on the main dashboard so they could skip ZiB for just that one game they normally play. So the user could turn it off/on through ZiB.


Lars said:
Aimless_E said:
Question: is who is going to update and maintain the DB for each emulator? :)
Everyone! If you have a rom thats unknown you can simply choose to post it to the db, wiki-ish (ofc with the ability to fix false entries etc)


That's the way I was thinking, but I hadn't even thought of using Gamestop or anything like that. Although I don't believe they have any APIs or anything for that information. I'm not a fan of scraping.
 
Last edited by a moderator:
Back
Top