Benutzerfreundliche ROM-Verwaltung?


retn said:
Das mit dem Shell-Script ist einfach.
Es muss getestet werden welche Emulatoren es gibt, ob es für ein System 2 gibt (zB. beim Gameboy) ggf. nachgefragt werden welcher benutzt werden soll und passend verknüpft werden.
Wichtig ist jetzt nur zuwissen ob die Emulatoren Parameter übernehmen können oder nicht.

Kann vielleicht einer in der Konsole das mal testen?
Code:
pnd_run.sh emulator.pnd spiel.rom
(hier natürlich eine richtige PND und ein richtiges Spiel angeben)

Wäre gut wen wir das für alle Emulatoren, die es bisher gibt, hätten.
Dann könnte man sich mal ran machen so ein Skript zuschreiben.

EDIT: Kann mir auch einer sagen ob diese Datei existiert (+ Inhalt evtl.)?
~/.local/share/applications/defaults.list
Ich weiß zwar nicht ob die Parameter mit denen die PNDs aufgerufen werden auch an den Emulator weitergegeben werden(würde Sinn machen) aber ich glaube notfalls könnte das Script die PND auch einfach selbst mounten und den darin befindlichen Emulator ausführen.
 
Chaos said:
Ich weiß zwar nicht ob die Parameter mit denen die PNDs aufgerufen werden auch an den Emulator weitergegeben werden(würde Sinn machen) aber ich glaube notfalls könnte das Script die PND auch einfach selbst mounten und den darin befindlichen Emulator ausführen.
Code:
<i>
</i>pnd_run.sh -p your.pnd -e executeable [-a "(arguments)"]
Das sollte schon mal beantworten das Argumente übergeben werden können..
Nur die Frage können die Emulatoren das und wen ja welche und wie?
Quelle: GIT-OpenPandora
 
Marko said:
Hallo zusammen,

ich bin leidenschaftlicher Emulator-Nutzer. Ich spiele nicht nur gern die Spiele von früher, ich habe auch Freude daran, die Spiele einfach dabei zu haben -- ein Stück Kindheit in der Hosentasche. ;) Ich nutze dafür einen wiz und eine PSP.

Ich finde es schade, daß die meisten Emulatoren zwar gut funktionieren, optisch aber oftmals bescheiden bis grausig aussehen. Ich selber habe kein iPhone, aber wenn ich mir da ansehe, wie die Spiele des c64 präsentiert werden - schön "aufgestellt" in virtuellen Regalen -, dann frage ich mich, warum diese Art der Präsentation nicht ähnlich auch auf Handhelds gemacht wird? Diese einfache Auflistung der Spielenamen, wie ich sie haufenweise sehe, finde ich arg spartanisch. Ein paar schöne Beispiele gibt es ja zum Glück (der CPS2-Emulator für den wiz ist z. B. ziemlich nett), doch bilden diese wohl leider eher die Ausnahme von der Regel.

Ich habe mal ein paar Screens entworfen, wie ich mir Frontends für Emulatoren wünschen würde (erstmal beschränkt auf das "Durchscrollen" durch die Spiele). Angefangen habe ich mit dem SNES und dem c64:

frontend_snes_1.gif
frontend_snes_2.gif
frontend_snes_3.gif


frontend_c64_1.gif
frontend_c64_2.gif


Die Screens sind in 320x240, damit ich sie auf meinem wiz testen kann, theoretisch sind sie aber natürlich für alle anderen Auflösungen umsetzbar.

Hier ein kleines "Testvideo", in dem ich den aktuellen SNES-Emulator auf dem wiz mit meinen Screens "verbunden" habe:
[youtube]D0pE3VgYZ_s[/youtube]

(Videolink gefixt - Grüße von Guru ;) )

So würde ich mir "Gamebrowsing" wünschen. :)

Falls sich hier ein Emu-Entwickler rumtreibt, der ein Frontend bauen möchte, würde ich mich über die Möglichkeit freuen, das ganze mit ihm umzusetzen. Ich habe ein paar Erfahrungen im Interface-Design sammeln dürfen, bin aber in Richtung Programmierung doof wie eine Hupe. ;)

Gruß,
Marko


So stelle ich mir das doch auch vor. Irgendjemand muss doch nur das Layout entwerfen und den emulator so umschreiben. Die Grafiken der spiele kann dann jeder selbst einfügen
 
Nein, eben nicht den Emulator so umschreiben, sondern lediglich zusehen, dass jeder Emulator über die Kommandozeile komplett konfigurierbar ist (oder per Kommandozeile eine bestimmte Konfigurationsdatei laden kann) und ROMs direkt laden kann. Dann kann ein Entwickler ein Frontend schreiben, das für alle Emulatoren und Spiele gleichermaßen funktioniert. :)
 
Ideal wäre es also, die Emulatorengine in eine .so-Bibliothek zu packen in welcher sich eine Emu-Prozedur/Methode befindet, welche dann vom GUI aufgerufen wird.

Dazu müsste eine Datenstruktur übergeben werden, welche

ROM-File, BIOS/Firmware-File 1..x, Tastenkonfiguration, Savedirs etc. enthält.

Im Prinzip ein ähnliches Programm wie MESS, nur mit schöner GUI.

http://www.mess.org/
http://static.sftcdn.net/de/scrn/77000/77694/3_messmain.jpg
 
Warum so umständlich? eine Kommandozeile à la
Code:
emuname --usecfg [CFGPATH] --loadrom [ROMPATH]
sollte für die meisten Emus reichen. Selbst wenn der Emulator es nicht zulässt die Konfigurationsdatei über die Kommandozeile zu wählen kann man immer noch die tatsächliche Konfigurationsdatei vor dem Starten des Emus ersetzen. Dann muss nur noch das ROM geladen werden. Das in jeden bestehenden Emulator einmal zu implementieren sollte deutlich schneller gehen.
 
Da kann ich Lockenlord nur zustimmen.
Viel zu umständlich, kostet jeden beteiligten Entwickler nur mehr Zeit und ist auch nicht schöner.
 
Wäre es nicht noch einfacher ein Programm zu schreiben, welches beim Ausführen die Speicherkarten ausliest nach

- Emulatoren die vorhanden sind
- Roms die Vorhanden sind (sucht nach .snes oder .schießmichtot)
- Listen zu Emulatoren und passenden Roms erstellt
- Emulatoren für die keine Roms/ Roms für die keine Emulatoren vorhanden sind aus der Liste rausschmeißt
- Aus einem Programmordner die für die Vorhandenen Emulatoren und Roms Anzeigebilder und Informationen raussucht und verarbeitet
- Das ganze grafisch Aufbaut

Sind ja im ersten Moment nur Abfragen, wenn ich das ganze Richtig verstanden hab.

Hauptmenü: Alle Emulatoren die den Anforderungen entsprochen haben werden in einem Menü zB wie beim WIZ nebeneinander angezeigt, meinetwegen Alphabetisch.

(Sobald man einen Emulator auswählt merkt das Programm sich schonmal den Emulator.)

Untermenü: Nun erscheint eine Liste der Roms (sortiert nach Alphabet, nach Erscheinungsjahr, nach Genre, nach Farbe, nach Geschmack und Geruch :) )

Aus dieser Liste kann man das gewünschte Rom aussuchen.

Nun haben wir die Daten die benötigt werden. Das Programm startet den Emulator und fordert ihn auf das Rom aus dem Zielordner zu laden...

Ich glaub das kann so funiktionieren.

So muss der Emulator nur noch "gezwungen werden" das Rom aus dem Zielordner zu laden!
Wenn für jeden Emulator ein Zielordner gemacht wurde, kann das Programm alle Daten ja auf einmal aus dem Ordner Lesen. So muss kein Entwickler extra seinen Emulator so programmieren, dass er einen Zielordner besitzen muss, das Übernimmt das Programm: HyPandora :-D

Ich könnte mich heute mittag mal an Photoshop setzen und mal ein bisschen mich an der Grafischen umsetzung versuchen.

Oder meint ihr das das Quatsch und vollkommen bescheuert ist was ich mir da so zusammenreime?
 
Darum geht es doch auch oder?

Die Frage ist hauptsächlich, unterstützen die Emulatoren Parameter und wen ja wie müssen die angesprochen werden?
Reicht einfaches anhängen des absoluten Pfades zur Datei oder muss noch ein -rom dazwischen?
Das müsste mal jemand für alle Emulatoren herausfinden...
 
johnnysnet said:
die Emulatoren eine einheitliche Logik für ihre Rom- und Disc-Pfade verwenden würden. Jeder Emulator sollte seine Roms im eigenen Programmverzeichnis unter "/Roms" und Images unter "/Discs" oder so beherbergen.

Es gibt nicht nur einen guten Emulator für ein System, in welches Programmverzeichnis legst Du dann ab?
Womit wir wieder bei konfigurierbaren Verzeichnissen für alle Emulatoren wären.
FzudemR said:
Wäre es nicht noch einfacher ein Programm zu schreiben, welches beim Ausführen die Speicherkarten ausliest nach
- Roms die Vorhanden sind (sucht nach .snes oder .schießmichtot)
Nur heissen die Roms nicht alle gleich. Spätestens mit Ankunft der psx auf den Emulatoren, oder bereits seit SegaCD kommen in den Dateiendungen iso, bin, etc... vor, welche keinen Aufschluß über die Quellplattform geben. Und in Zukunft werden es langfristig immer mehr Plattformen werden, die untereinander nicht kompatibel sind. Dem goodname Konzept fehlt an der Stelle der Plattform [TAG]. Solange sich dort nicht ein einheitliches Namensschema verbreitet hat, wird es schwierig sein die Roms automatisch zuzuordnen.
 
double7 said:
Solange sich dort nicht ein einheitliches Namensschema verbreitet hat, wird es schwierig sein die Roms automatisch zuzuordnen.

Mist, das hatte ich außer Acht gelassen.. Dann wird das extrem Aufwändig. Denn dann müssen Datenbanken mit exaten Romnamen erstellt werden, die dann die Roms nach Emulatoren sortieren.. Oje, wenn ich mir allein da Mame vorstelle: über 8000 Roms! Juhu
 
Keine Namen sondern Checksummen. Gibt doch schon diverse Romverwaltungen die das genauso handhaben.
 
Eine ganze Speicherkarte voller Dateien gegen eine fünf- wenn nicht sechsstellige Anzahl von Prüfsummen laufen zu lassen dürfte aber etwas dauern. Ich denke es ist zumutbar, wenn man für jedes System einmalig einen ROM-Ordner bestimmt, in dem dann alle Dateien (mit einer von mehreren ausgewählten Endungen) einmal gegen eine Datenbank geprüft werden, die nur Prüfsummen von ROMs enthält, die zu diesem System gehören und die vorhandenen Spiele irgendwie mitsamt Dateiname festhält.
Wenn man denn will, dass die Karte beim Einstecken neu eingelesen wird sollte natürlich nur noch einmal überprüft werden, ob neue Spiele dazugekommen sind oder welche gelöscht wurden und nicht noch einmal alle Spiele überprüfen. Außerdem braucht es eine Vorgehensweise für ROMs deren Prüfsumme nicht in der Datenbank gefunden wurden.
Ich denke außerdem, dass man die ROM-Datenbank und das Frontend getrennt entwickeln sollte, sodass nicht jeder, der eigentlich nur ein Frontend schreiben will die Prüfungsroutine noch einmal schreiben oder umschreiben muss.
 
Aber du musst ja nicht alle Roms aufeinmal prüfen, sondern beim scrollen immer das aktuelle, oder eben die nächsten drei.
 
Nö, wenn dann richtig mit Sortier- und Suchfunktion. :D Das geht bei der Methode nicht und viel Zeit spart es auch nicht. Das wäre denke ich mal nur sinnvoll, wenn man die ROM-Verwaltung in einen Dateimanager oder so einbinden will.
 
rico66 said:
Aber du musst ja nicht alle Roms aufeinmal prüfen, sondern beim scrollen immer das aktuelle, oder eben die nächsten drei.
Könnte bitte jemand mit Pandora ein
"time md5sum 700mb-CD-von-SD.img"
versuchen und das Ergebnis hier posten?

Obwohl, wir können auch hochrechnen. 20mb/s lesen = 100mb/5s = 700mb/35s.

Nein, ich möchte nicht 30 Sekunden warten, ehe er weiss welches das nächste Rom ist.

Ups. Posting 666.
 
double7 said:
rico66 said:
Aber du musst ja nicht alle Roms aufeinmal prüfen, sondern beim scrollen immer das aktuelle, oder eben die nächsten drei.
Könnte bitte jemand mit Pandora ein
"time md5sum 700mb-CD-von-SD.img"
versuchen und das Ergebnis hier posten?

Obwohl, wir können auch hochrechnen. 20mb/s lesen = 100mb/5s = 700mb/35s.

Nein, ich möchte nicht 30 Sekunden warten, ehe er weiss welches das nächste Rom ist.
Prinzipiell hast du Recht, aber was ist die Alternative? Sich auf Dateinamen und Verzeichnishierarchie verlassen? Den Nutzer bei neu gefundenen Dateien nach Spielnamen und weiteren Informationen fragen?

Zumindest diese beiden Dinge würden hohen Aufwand für den Nutzer bedeuten. Da wir ja keine nicht lizenzierten Spielekopien unterstützen möchten und für das Erstellen/Herunterladen legaler Abbilder meist ein großer Rechner verwendet wird, könnte man schlanke Werkzeuge für Windows, Linux und OS X herstellen, welche Abbilder und Prüfsummen auf der Pandora verwalten und dabei direkt das korrekte Kopieren vom großen Rechner auf die eingesteckte SD-Karte übernehmen. Dazu eine Funktion in der auf der Pandora laufenden Software, welche diesen Cache bei Bedarf komplett aktualisieren kann (z.B., wenn man gerade unterwegs ist und soeben ein großes 700MB-Abbild aus Platzgründen gelöscht hat).
 
Auch wieder eine gute Idee. Gibt es irgendein quelloffenes Authoringtool, das einem eine Datenbank oder XML-Liste oder so erstellt? Die GoodTools und clrmamepro erstellen soweit ich weiß nur have- und miss-Dateien, die lediglich die Spiele auflisten. Vielleicht kann man die auch einfach umwandeln und weiterführende Informationen aus einer externen Datenbank beziehen.
 
auch noch eine Idee:
RMfast said:
EvilDragon sollte mal schauen ob er für Pandora, Wiz, Caanoo und Dingoo Roms und Isos legal verschachern kann, dann hätte man hier im Forum nicht immer solche Probleme mit so was!!

Einfach drauf hinweisen das ED diese Roms und Isos verkauf und man kann drüber reden wie man will.

Amiga ja kein Problem ….ich spreche mehr von Sega, Nintendo und Sony PSX und nicht nur die schlechten Games sondern die Guten Games TOP 100 Games. Am besten einzeln 4-8 Euro für gute Titel auf einer SD-Karte mit Aufkleber usw. dann würden die Leute die Games auch mal Zocken und nicht nur aus dem Netz sammeln.

Oder einfach gebrauchte Spiele in einem Modernem netten Shop aufnehmen, Möglichkeiten gibt’s ohne ende damit sich ED aus dem Schneider schießen kann, nicht nur das, er könnte sogar etwas profitieren.

SOWAS WÄHRE COOL ;)
http://forum.gp2x.de/viewtopic.php?f=9&t=10818&start=12

Die ROM-Verwaltung sollte also auch in dieser Richtung ausgebaut werden können, dass ED lizenzierte ROMs und Images verkaufen kann... :confused:??
 
Back
Top