Ergebnis 1 bis 7 von 7

Thema: Modularer Konsolen Emulator

  1. #1
    Langsam ernst zu nehmen... Avatar von Mokona
    Registriert seit
    30.05.2009
    Ort
    Am A von A am A
    Beiträge
    321

    Modularer Konsolen Emulator

    Meine fixe Idee seit einigen Tagen ist, so ein Ding zu entwickeln und zu bauen. Wie ist dabei ungewiss. Eines ist jedoch schon sicher: Es wird nicht einfach werden und ich bin nicht ganz so verrückt, es alleine zu wagen. Deshalb und auch weil es doch Resonanz gestossen ist, hier die „Details“ von dem, was mir vorschwebt:

    Modularer Konsolen Emulator – was ich künftig unverfroren MoKonE nennen werde

    MoKonE soll folgende Hauptfeatures haben:
    • Gebrauch der original Controller und Spielmodule
    • Alle möglichen (und unmöglichen) Konsolen emulieren zu können (logischerweise gibts Einschränkungen, dazu später)
    • Analoger und Digitaler Full HD Ausgang, wobei das Bild, wenn nötig hochgerechnet wird
    • vollkommen unter freier Lizenz stehen
    Die Details, wie ich dies erreichen will sind noch unbekannt. Es gibt jedoch 2 Varianten (OK, 3 aber die 3. ist unbezahlbar):
    • Einen „normalen“ PC nehmen und eine PCI-Karte entwerfen, plus eine Schnittellen Box.
    • Einen eigenes System entwerfen mit erhältlichen Bauteilen.
    • Das gleiche, aber man entwirft die paar Bauteile noch selbst <- Das wäre Nummer 3 und ist nur der Vollständigkeit hier aufgelistet.
    MoKonE wird in folgende Kernbereiche beinhalten:

    GIO – Generell Input/Output:
    Die Schnittstelle (Stecker) des Emulators zur den Adapterplatten, welche die für die einzelnen Konsolen spezifische Speichermodule und Controller entgegen nehmen. Für jede zu emulierende Konsole braucht es (mindestens) eine solche Adapterplatte.
    Der Teil wird hauptsächlich Logikschaltungen enthalten und ev. auch eine Reihe Optokoppler für den Übergang von der internen zur externen Architektur. Die Hauptkomponente hierbei wird der FPGA sein, der hier vorteilhaft ist.
    Dieser Teil ist in jeder Variante zu entwickeln und realisieren. Allerdings sehe ich hier auch nicht die grösste Problematik.

    CPU:
    Diese Kernkomponente bestimmt, welche Konsolen MoKonE emulieren kann. Je leistungsfähiger der Bereich ausgelegt ist (hauptsächlich CPU und RAM) desto moderne Konsolen können emuliert werden. Ein Emulator muss nämlich mindestens gleich schnell sein, wie die zu emulierende original Hardware war, meistens jedoch deutlich schneller als diese. Die Geschwindigkeit hat jedoch einen direkten Einfluss auf den Preis.
    Mein Zielbereich bei den Konsolen ist bis und mit 5. Generation, also alles von bis und mit Playstation 1, Nintendo64 und Sega Saturn (um die bekanntesten Verbrettern zu nennen).
    Es dürfte sich (welcher Teil ist es denn nicht?) um einen schwierigen Bereich handeln.
    Dieser Bereich kann auch durch ein X86-iger System ersetzt werden, wie auch der GPU Teil, welcher folgt.

    GPU:
    Obwohl die meisten Konsolen dieser Zeit über ausgesprochen marginale Grafikkomponenten verfügten, brauchen wir hier dagegen sehr leistungsfähige Hardware. Die Full HD Anforderung ist der Grund dafür. Es muss hier 50 mal pro Sekunde ein Bild von max. PAL Auflösung, also etwa 400'000 Bildpunkte auf über 2'000'000 hochgerechnet werden. Selbst in einem simplen Verfahren ist dies, im Vergleich zum Rest, ein gewaltiger Rechenaufwand. (Schätzungsweise wird hier deutlich mehr Rechenleistung verbauen sein, als beim CPU Teil!)
    Weil Rechenleistung auch häufig mit hohen Taktfrequenzen gleichzusetzen ist, wird sich dies in der Anforderungen beim Layout widerspiegeln. Wie man merkt, ist der Teil auch mein Sorgenkind.

    Daneben braucht es „nur“ noch eine Spannungsversorgung und die Software. Und ja, auch wenn ich sie nur „nebenbei“ erwähnen, ich weiss, dass die Software nicht zu unterschätzen ist.

    Alle die ich bis jetzt noch nicht abgeschreckt habe und, welche bereit sind hier mitzuarbeiten (sei es auch nur um KONSTRUKTIVE Kritik zu liefern), sollen sich frei fühlen dies zu tun.

    Und zum Schluss: NEIN, der Hauptzweck dieses Projekt ist nicht die unberechtigte Nutzung von Software!!!
    Geändert von Mokona (30.05.2010 um 14:12 Uhr)

  2. Handlich scheint die Kiste ja nicht zu werden. :D Also Interesse besteht grundsätzlich schon, nur hab ich - wie oft schon erwähnt - nicht das nötige Know-how. xD Ich weiss also nicht, was ich zum Projekt beitragen könnte. :s
    Afro glaubt:
    Die Projektidee ist höchst gewagt, aber auch sehr ambitioniert. Chapeau, und viel Erfolg!
    D findet:
  3.  

  4. #2
    Waisneed Avatar von OElk
    Registriert seit
    05.01.2002
    Ort
    Badgers Burrow (SH, ZH, ZG)
    Beiträge
    5.406

    AW: Modularer Konsolen Emulator

    Interessantes Projekt, aber ich seh hier einige Dinge, die du Übersehen hast:

    Um die Konsolen wirklich sehr gut, bzw. Zyklus-Genau zu emulieren, ist viel Rechenleistung oder eine Hardware Lösung.

    Beispiele: BSNES, der Genauste SNES-Emulator benötigt mindestens 2.4 GHz um Super Mario World laufen zu lassen. Dafür läuft alles genau wie auf dem Super Nintendo selbst (Unterstüztz sogar vollständige Super Game Boy Emulation).

    Die Alternative währe eine FPGA implentation für ältere Hardware (NES, VCS 2600, ect) welche darauf die komplette Hardware darauf abbilded (inkl. Grafik- und Soundchips).


    Falls du die Software-Route gehen möchtest, nimm eine Multicore CPU, hier kann auch für alte Hardware, viel gewonnen werden, und die genauigkeit bei Graphic und Sound-Generation erhöht werden.

    Und bei der GPU, bitte, wir wollen die 60Hz NTSC Bilder hochrechnen, aber leider ist es für beste Qualität nicht so einfach um nur das 'output' der alten Konsolen hochzurechnen.

    Viele alte Geräte (NES, SNES, Mega Drive, oder gar PS2) können mehrere Videoformate darstellen, heute auch als 240p, 480i und 480p bekannt. Und einige wechseln während dem Spielablauf mehrmals die Auflösung (SNES, PC Engine) um z.B. viel Text besser darzustellen.

    Für Interfaces um Module auszulesen, gibt es schon die ersten Echtzeit lösungen, Retrode ist eine davon, welche SNES und Mega Drive Cartridges nativ ausliest, und durch adapter auch für andere Systeme geignet ist.

    Und was willst du machen für im moment sehr schlecht Emulierte Systeme? (Jaguar, Saturn, N64)
    My Wanted List

    Comedy in the wrong hands
    A dangerous weapon

  5. #3
    Langsam ernst zu nehmen... Avatar von Mokona
    Registriert seit
    30.05.2009
    Ort
    Am A von A am A
    Beiträge
    321

    AW: Modularer Konsolen Emulator

    Zyklus genaue Emulation. IMHO habe ich das nicht vor. Es muss schon im Tempo stimmen, aber Abweichnungen darf es in dem Bereich haben - aus meiner Sicht - wo der Mensch es nicht merkt. Auf der anderen Seite dürfte es wahrscheinlich sein, dass ein Uhrenquarz verbaut wird, welcher "genau" ist - Naja, die Quarze sind scheisse. Uhren sind nur gut, weil der Quarz immer schön auf Köpertemperatur gehalten wird. Genau deshalb hat's an der Uhrrückseite eine Metallplatte. Billige Variante von Temperaturregelung

    Ich will nicht umbedingt ein X86 Design machen. X86 ist zwar flexibel, kommt jedoch mit einem Haufen Balast daher. Mir schwebt eher Embedded Zeug vor und auch eher in Richtung Realtime Betriebsystem - und ja, der Aufwand ist nicht geringer. Momentan sehe ich ARM Prozessoren für die CPU (>=ARM9).

    FPGA wirds drauf haben und einer der Gründe - sollte, wie alles andere auch, die Machbarkeit es zulassen - ist, dass er mit Hilfe einer Look-Up-Table auf tiefer Ebene den Code von den Spielen übersetzt. Anders formuliert, er ist - sofern umsetzbar - die Systemgrenze zwischen der realen Hardware und der emulierten Hardware. Naja, wer will, kann mit den FPGA sicher auch für andere Zwecke gebrauchen. Er wird genügend Logikgatter bekommen

    NTSC, PAL und Auflösung: ich hoffe und dafür werde ich schon sorge tragen, dass der Teil welcher sich ums Bild kümmert ordentlich Rechenleistung hat. Sprich er sollte selbst bei 60 Vollbilder noch nicht am Anschlag sein...

    Die schlecht emmulierten System ist ein grundlegendes Problem. Sind die Systeme wenig verbreitet, so sind wenige technische Details vorhanden. Hinzu kommt, dass für die "brachiale" Methode des Reverse Engineer die Beschaffungskosten solcher System auch hoch sein dürften.

    Es muss auch noch gesagt werden, dass ich nicht vorhabe für alle System die Arbeit zu übernehmen. Da werde ich mich - ganze egoistisch - auf die beschränken, welche mich interessieren. Dafür wird die Platform auch offen sein. Wer will, kann das Zeug nachbauen und für sein gewünschtes System, dann selbst den Adapter + Software entwickeln. Dies ist das Ziel.

    Und noch als Hinweis: Das Projekt ist in einer Phase, wo noch alles nur entweder in meinem Kopf oder in diesem Thread ist. Alles kann sich noch änder - so flexibel muss ich sein *g*. Wer daran aktiv teilhaben will, darf dies gernen.

    @njiuten: Nein, das würde mein erster Emulator sein. Und ja, ich denk auch nicht daran es alleine durchzuboxen (siehe im 1. Beitrag). Neben dem Arbeitsaufwand sind die Kosten auch nicht zu verachten, welches solch ein Projekt mitbringen wird (Ev. Evaluationsboard, Messgeräte, Softeware...).
    Geändert von Mokona (30.05.2010 um 22:10 Uhr)

  6. Interessante Idee. Hoffe, du bist dich des gigantischen Aufwandes bewusst, ohne einem Team von 4-6 Leuten würd ich nichts anreissen. Know-how scheint ja vorhanden zu sein, hast du schon (Software-)Emulatoren programmiert?
    njiuten denkt:
  7.  

  8. #4
    Langsam ernst zu nehmen... Avatar von Mokona
    Registriert seit
    30.05.2009
    Ort
    Am A von A am A
    Beiträge
    321

    AW: Modularer Konsolen Emulator

    Damit dies nach klar wird:
    Ich suche mind. 3 Personen, welche sich mit mir dieser Idee widmen. Sie sollten schon eine Ausbildung in Elektronik bzw. Informatik haben (oder gleichwertiges Wissen). Am liebsten natürlich in den spezifisch gefragten Berreichen.
    Momentan würde ich gerne 2 Elektroniker und 1 Informatiker finden. Wer sich angesprochen fühlt, darf mir gerne eine PN schreiben (der Rest natürlich auch...).

    Zur meinem Hintergrund: gelernter Elektroniker - mehr per PN

    Bis ich personelle Verstärkung habe, habe ich nicht vor Energie in dieses Projekt stecken.
    Geändert von Mokona (31.05.2010 um 13:19 Uhr)
    Mokona macht MoKonE - Mitmachen erwünscht

  9. #5
    warm-water penguin Avatar von penpen
    Registriert seit
    29.04.2007
    Beiträge
    177

    deleted

    deleted
    Geändert von penpen (02.01.2019 um 16:20 Uhr)


  10. Pandora kenn ich, wenn auch nicht all zu gut. Müsst mich mal einlesen, kontakt aufnehmen, ... - sobald ich Lust habe, danke dir dennoch
    Mokona glaubt:
  11.  

  12. #6
    last fallen angel / the white knight / Shu's donkey Avatar von Mr.Ash
    Registriert seit
    18.11.2007
    Ort
    Obergerlafingen/Zielebach (SO/BE)
    Beiträge
    818

    AW: Modularer Konsolen Emulator

    Ähm... ich frage mich einfach was das bringen soll? Ich sehe da folgende Probleme:

    1. Grösse
    Ein solche "Konsole" wird extrem viel Platz brauchen, da ja für jede zu emulierende Konsole die entsprechenden Schnittstellen vorhanden sein müssen (Joypad Anschlüsse, Modulsteckplätze, Laufwerke, Memorycard Slots, Expansion ports, etc.). Dazu kommen noch die ganzen PC Komponenten, Netzteil, etc.

    2. Leistungsaufnahme, Kühlung, Lärm
    Um eine Konsole überhaupt flüssig und einigermassen Fehlerfrei emulieren zu können braucht es ein vielfaches der Originalleistung der jeweiligen Konsole. Alleine für den Sega Saturn gibt es aufgrund seiner komplexen Architektur bis heute keinen vernünfigen Emulator. Die Liestung des Geräts müsste also in allen Bereichen sehr hoch ausfallen was unweigerlich eine hohe Leistungsaufnahme bedeutet. Dadurch entsteht auch automatisch eine hohe Erwärumg der einzelnen Komponenten die auch entsprechend gekühlt werden müssen. Wie man bereits an high end Gamer PC's sieht verursacht diese Kühlung sehr viel Lärm in Form von Lüftern oder Kühlagregaten. Ich kann mit kaum vorstellen, dass spielen mit einem solchen Lärmpegel überhaupt Spass macht.

    3. Hochskallieren auf Full HD
    Was soll das bitteschön bringen? Moderene TV's skalieren das Bild schon von sich aus auf die volle Bildgrösse und dies sogar teils sehr gut. Ob jetzt das Bild in der Konsole oder beim TV hochskalliert wird ist absolut wurscht, es ergibt sich dadurch kaum eine bessere Bildqualität, es bräuchte nur unnötig viel Leistung auf der Konsole.

    3. Sinn der Sache
    Ich verstehe den Sinn dieses Projekts nicht wirklich. Würde man einfach für jede Konsole die Orginal Hardware beschaffen und diese mit Klebeband zu einem Klotz zusammenkleben, so käme man zum gleichen viel weniger aufwändigen, kostengünstigeren und wahrscheinlich gleich grossen Ergebniss.

    Meiner Meinung nach bringt dieser ganze Aufwand keinerlei mehrnutzen, aber das ist meine Meinung.
    Ausnahmen bestätigen die Regel

    Technical director from
    Reign of darkness
    ---------------------------------------
    http://www.reignofdarkeness.ch

  13. #7
    Langsam ernst zu nehmen... Avatar von Mokona
    Registriert seit
    30.05.2009
    Ort
    Am A von A am A
    Beiträge
    321

    AW: Modularer Konsolen Emulator

    1. Ich habe nicht vor ALLE IOs FEST zu implemenieren. Es wäre steckbar. Sprich die benötigten IOs (zb. für Saturn) steckt man drauf und wenn man nacher was anderes braucht, dann kommen dafür die drauf. Zudem würde in einer 1. Version sicher nicht alle IOs, sondern nur Joypads, Laufwer/Speichermodul und Memcard implementiert.

    2. Ich hoffe, wenn man den Opcode gescheit übersetzt, dass genau dies nicht nötig sein wird. Ich habe nicht vor ein modernes x86 System zu benutzen und dann ein PC in einer Pappschachtel zu haben, mit all seinen "Problemen". Wäre dies nur die Einzige Option um die Konsolen emulieren zu können, wären USB-Adapter für IOs sinnvoller als einen Mikrocontroller Lösung (an ARM denk).

    3. Können sie. Wahrscheinlich auch mit dem gleichen Filter, welches ich implementieren oder nutzen würde, aber einiges können sie nicht. Sie arbeiten mit dem Signal was sie bekommen, nicht mit dem was sie berechnen. Somit habe ich mehr Möglichkeiten (theoretisch kann ich auch Tertis auf Full-HD hochrechnen lassen...)

    4. Obijektiv: Günstiger, wahrscheinlich (reine Kosten), Ergebnis dürfte besser sein (sollte es vor meinem Tod erscheinen *scnr*) und der Aufwand, der ist ausser Frage. Persönliche Antwort: Ich mag mit der Technik zu spielen (spielen = programmieren, designen, layouten, ...). Aufwand wird dann schnell nicht mehr 1:1 verechnet:

    Bei all dem, was ich sage, gehe ich von meiner ersten groben Idee aus. Am Ende dürfte das Wenigste davon noch bestand habe...
    Mokona macht MoKonE - Mitmachen erwünscht

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •