Hello, Guest the thread was called51k times and contains 1448 replays

last post from cbm_frank at the

Neuer Retro-Computer im 8-Bit Style

  • CRT-Shader sind toll, damit sieht solche Pixelgrafik wirklich fast wie auf einem alten Röhrenmonitor aus.

    Aus genau diesem Grund bin ich darauf eingegangen. ;)


    EDIT: Für den Raspberry-Pi-Bare-Metal-Vice-based-Emulator BMC64 gibt es "einen" mitgelieferten CRT Shader/Filter, der hier beschrieben wird: https://github.com/randyrossi/bmc64#crt-filter

    EDIT2: BMC64 implementiert davej's crt-pi Shader, welcher auch von Retropie benutzt wird: https://retropie.org.uk/docs/Shaders-and-Smoothing/#shaders

    Quote

    Fortunately, user @davej has created a fantastic shader specifically for the pi, aimed at recreating a CRT appearance whilst still maintaining full speed at 1080p on even a Pi 1 (overclocked).

  • Wenn man FullHD-Auflösung als Leinwand hat für einen "Fantasy-Retro-Rechner" und dann eine ideale Auflösung sucht für den Retro-Rechner, kann man einmal vom Pixelkünstler her denken (welche Auflösung bietet Gestaltungsmöglichkeiten, überfordert keine One-Man-Show, aber bietet auch herausfordernde Limits?) oder aber auch vom CRT-Shader her (welche Auflösung lässt sich auf FullHD mit der verfügbaren Grafikpower vom Hostrechner (z. B. Raspberry Pi) gut mit einem CRT-Shader kombinieren, so dass es "einfach geil" aussieht und trotzdem die Host-Hardware nicht überfordert?) .

    Man kann das weitgehend getrennt von einander betrachten, obwohl es natürlich (wie zuvor von mir beschrieben) zusammenhängt. Aus Sicht des Retro-Spiele-Entwicklers (bzw. des Grafikers im Entwickler-Team) ist eine stark reduzierte Grafik von Vorteil (Gründe hatte ich (und auch du) genannt). Aber die Grafik muss nicht so pixelig bleiben, zumal sie damals™ auch nicht so gedacht war. Man hat die Einschränkungen und Möglichkeiten des CRTs bewusst mitgenutzt. Deswegen würde ich die heutzutage auch mit einbeziehen wollen – zumindest per Default (abschaltbar).


    Ich kenne verschiedene CRT-Filter (aus unterschiedlichen Emus) – aber nur aus der Nutzung heraus – mit der Entwicklung selbst habe ich mich nie befasst. Vor einigen Jahren hatte ich mal ein Gespräch mit sauhund über die damaligen CRT-Filter in VICE und da war das noch ganz simpel – Scanline, Blur und ein paar Artefakte, fertig war die "PAL"-Simulation. Heutzutage will man immer akkurater werden und setzt dabei u.a. auf die Power von GPU-Shadern. Da geht natürlich viel mehr. Allerdings kann man mit den simplen von mir genannten Bildmanipulationen schon eine ganze Menge erreichen, wie man (hoffentlich) bei meinen Beispielbildern erkennen kann. Und diese kann man wahrscheinlich sogar problemlos ohne großartige GPU-Unterstützung hinbekommen. Den Blur (Gaußscher Weichzeichner) kann man notfalls nochmal vereinfachen (z.B. auf die X-Achse beschränken) und die (soften) Scanlines sind eine Überlagerungs-Ebene, die sich sicherlich recht einfach erzeugen ließe. Der veränderte Gamma-Wert soll in erster Linie die Verdunkelung durch die Scanlines ausgleichen.


    (nochmal zur Erinnerung)


    Man kann natürlich auf fertige CRT-Shader zurückgreifen. Diese können mehr – aber benötigt dann halt auch "etwas" mehr GPU-Power.

  • Ich erwähne an dieser Stelle nochmal, daß neben der Behandlung von USB-Schnittstellen und des HDMI-Ausgangs auch die Implementierung von Shadern quasi frei Haus käme, wenn man bei der Entwicklung auf MiSTer aufsetzen würde. Im ersten Schritt könnte man einen "Fantasy-Heimcomputer"-Core für MiSTer erzeugen. In einem zweiten Schritt könnte man eventuell darüber nachdenken, das System anzuspecken, um die Bootzeit zu verkürzen usw. Und irgendwann in ferner Zukunft könnte man das ein eigenes Board herstellen.


    Obwohl so ein "bare metal"-Ansatz mit einem Raspberry Pi o.ä. durchaus auch seinen Reiz hat, sehe ich zwei entscheidende Nachteile: zum einen gibt es zu viele Freiheitsgrade (Sound, Grafik, Peripherie) für einen aufs Wichtigste reduzierten Heimcomputer. Zum anderen ist eine längere Verfügbarkeit nicht gewährleistet und beim nächsten Modell muß wieder alles portiert werden.


    Ein FPGA-Design eines Fantasy-Heimcomputers kann man beliebig einschränken und beliebig lange in neue FPGA-Boards retten. Man muß also nur das System portieren und nicht die Software.

    Es wäre sogar möglich, später sorgfältig geplante Upgrades einzubauen. Etwa neue Opcodes der CPU oder neue Features des Grafikprozessors, ohne dabei die Abwärtskompatibilität zu verlieren.


    Ein rein in SW existierender Fantasy-Computer reizt mich persönlich nicht wirklich - zumindest solange es nicht auch eine preiswerte und sofort bootende HW-Lösung gibt. Ein ein Software emulierter Heimcomputer, der auf einem Rasberry Pi direkt startet, wäre im Prinzip OK. Ist natürlich per se billiger und einfacher als der FPGA-Ansatz, aber für mich auch irgendwie weniger sexy. Ich sehe da auch schon die Gefahr, daß sich die Implementierungen des Emulators auf verschiedener Hardware etwas unterschiedlich verhalten und das ist natürlich genau nicht das Ziel der Übung.

  • zumindest solange es nicht auch eine preiswerte und sofort bootende HW-Lösung gibt.

    Und da ist das Problem. Ich meine, der MISTer wäre nicht ganz billig. Wir streben ja eine Lösung an, die grob im Bereich von 100/150 Euro bleiben soll – mit allem drum und dran. Ich fände FPGA auch cool aber da hatten wir immer das Problem: Entweder kann er zu wenig oder er wird zu teuer. Emulation ist einfach bezahlbarer – wenn man HDMI, USB usw. haben will (wie man u.a. am TheC64 sehen kann).

  • Das reine Board kostet bei Mouser 141.15€ inklusive Mehrwertsteuer - und mehr braucht man als Entwicklungssystem erst mal nicht. Der MiSTer wird durch die ganzen Erweiterungen teuer.

    Ebend.

    Zu deine 141,15€ kommen noch kosten für Tastatur, Maus, Joystick, verkabelung, externer/interner Massenspeicher, Gehäuse und Netzteil.

    Da biste flugs auf 300,-€ und mehr.

  • Nee, darum geht es nun wirklich nicht.

    Doch, schon darum geht es.

    Das Ziel ist ja eine Box mit einem HomeComputer den man nach Hause schleppt, aufstellt, anschließt & loszockt bzw. loslegt.

    Das Ziel ist nicht den X-ten BareBone-Ein-Platinen-Computer, sondern ein fertiges Konzept à la Spectrum NEXT, MEGA 65 bzw. C256 Phoenix.

    Dabei sehe ich durchaus ein daß dieses niemals für 150,- € realisierbar wäre.

    Aber so ~ 300,- € +-50,- € müßte machbar sein.

  • Zum anderen ist eine längere Verfügbarkeit nicht gewährleistet und beim nächsten Modell muß wieder alles portiert werden.

    Ich will deiner Argumentation nicht prinzipiell entgegentreten, nur dieses Detail ist mir aufgefallen: Wenn es um den reinen Emulator geht, sehe ich eigentlich keinen Grund, warum man den neu portieren müsste. Erstens kann man ihn schon auf Hochsprachenebene ziemlich exakt gestalten, zweitens ändert sich die Grund-Architektur nicht, sondern es sind bloß neuere Generationen derselben CPU-Familie und mehr Speicher, jedenfalls aber weitgehend kompatibel, und drittens bleibt auch das OS kompatibel.

    Wenn man stattdessen dann auf einen Intel portiert, ja, dann muss man neu kompilieren. Aber wenn man den Emu auf Hochsprachenebene hinreichend gut implementiert, sollte das eigentlich auch keinen Unterschied mehr machen. Vielleicht irgendwo im Zeitverhalten, wenn man es nicht sauber löst, aber ich denke, das sollte eigentlich möglich sein.

    War wie gesagt nur eine Anmerkung. Deine Vorliebe für die FPGA-Lösung kann ich trotzdem verstehen, wobei mir das Konzept einer gemeinsamen Architektur, die völlig unabhängig auf verschiedene Weise implementiert weden kann, auch sehr gut gefällt. Dann wärs eher egal, weil beides existieren kann.

  • Zum anderen ist eine längere Verfügbarkeit nicht gewährleistet und beim nächsten Modell muß wieder alles portiert werden.

    Das gilt genauso für eine FPGA-Lösung.

  • Ach, und bevor ich's vergesse: da es ein NeoRetro sein soll, muß die Tastatur natürlich Klickety-Klack machen & und schon erhelichen Widerstand leisten wenn man auf die Tasten 'reinhaut.

    Könnt sogar sein das die Krankenkassen Zuschüsse geben wegen aktives Vorbeugen von Muskelschwund in den Fingern ;-)

  • Ach, und bevor ich's vergesse: da es ein NeoRetro sein soll, muß die Tastatur natürlich Klickety-Klack machen & und schon erhelichen Widerstand leisten wenn man auf die Tasten 'reinhaut.

    Könnt sogar sein das die Krankenkassen Zuschüsse geben wegen aktives Vorbeugen von Muskelschwund in den Fingern ;-)

    Herrliche Idee! Aktivwiderstandstastaturen zur Gesundheitsförderung. :D Man könnte, um die Idee noch auszubauen, jede Taste mit einem länglichen Metallgerüst koppeln. Und dann könnte man sogar - he, es wird immer schöner - ein Farbband so montieren, dass man mit den Tasten und dem Metalldings direkt auf das Farbband haut, und einen Druckerschwärze-Abdruck auf Papier hinterlässt. Wenn man dann noch das Charset auf diesen Metalldingern codiert .. da hätte man dann etwas .. na wie könnte man es nennen .. "Direkt-Drucker", vielleicht, mit dem man dann gleich ein Log der Eingaben auf Papier erzeugt, so dass man später nicht mühsam durch Logfiles scrollen müsste? Man könnte einen ganz neuen Industriezweig mit den Dingern eröffnen! :done::lol23:

  • Das gilt genauso für eine FPGA-Lösung.

    Nö. Da muß nicht jedes Programm portiert werden, sondern das VHDL-Modell des Fantasy-Computers. Es ging an dieser Stelle um "bare-metal" Programmierungs eines Pi. Um einen Emulator auf dem Pi geht es in meinem zitierten Post viel weiter unten.

    Bitte den Kontext beachten.

    Ich will deiner Argumentation nicht prinzipiell entgegentreten, nur dieses Detail ist mir aufgefallen: Wenn es um den reinen Emulator geht, sehe ich eigentlich keinen Grund, warum man den neu portieren müsste. Erstens kann man ihn schon auf Hochsprachenebene ziemlich exakt gestalten, zweitens ändert sich die Grund-Architektur nicht, sondern es sind bloß neuere Generationen derselben CPU-Familie und mehr Speicher, jedenfalls aber weitgehend kompatibel, und drittens bleibt auch das OS kompatibel.

    Siehe oben. Es ging an der zitierten Stelle nicht um einen Emulator auf dem Pi, sondern um "bare-metal"-Programmierung auf dem Pi.

    Doch, schon darum geht es.

    Das Ziel ist ja eine Box mit einem HomeComputer den man nach Hause schleppt, aufstellt, anschließt & loszockt bzw. loslegt.

    Das Ziel ist nicht den X-ten BareBone-Ein-Platinen-Computer, sondern ein fertiges Konzept à la Spectrum NEXT, MEGA 65 bzw. C256 Phoenix.

    Dabei sehe ich durchaus ein daß dieses niemals für 150,- € realisierbar wäre.

    Aber so ~ 300,- € +-50,- € müßte machbar sein.

    Nö. Darum ging es nicht. Ich sprach von den ganzen Erweiterung eines MiSTer, also IO-Board, RAM-Board usw. Da steigt der Preis schnell von 140€ auf 250-300€. Aber für die Entwicklung eines Fantasy-Heimcomputer-Cores bräuchte man all das nicht. Darum ging es. Die Argumentation mit Tastatur, Maus und Co. war an dieser Stelle so hanebüchen, daß ich gar nicht drauf eingehen wollte, denn sowas braucht man bei jeder Lösung.


    Und mit Mega 65 und Co. zu argumentieren, wenn bereits 140€ zu viel sind, ist einigermaßen kurios. Lassen wir mal beiseite, daß ein konkretes Gehäuse nicht meine erste Sorge wäre: gerade der Mega 65 zeigt ja, wie sehr die Kosten durch sowas explodieren. Sehen wir mal, was so ein Mega 65 am Ende kosten wird. Aber die 1000€ für die Prototypen lassen nichts Gutes vermuten, obwohl die Kosten für die Gußformen ja quasi gespendet wurden. Ich rechne mit 500-600€ und das wäre mir persönlich etwas zu viel.

    Davon abgesehen hatte ich ja schon viel weiter vorne ein preiswertes Gehäusekonzept vorgeschlagen, das mit Sicherheit dramatisch weniger Kosten verursachen würde als beim Mega 65. Und zur Not gibt es ja noch sowas.

  • Nö. Darum ging es nicht. Ich sprach von den ganzen Erweiterung eines MiSTer, also IO-Board, RAM-Board usw. Da steigt der Preis schnell von 140€ auf 250-300€. Aber für die Entwicklung eines Fantasy-Heimcomputer-Cores bräuchte man all das nicht.

    Vielleicht wird hier etwas aneinander vorbeigeredet. Die Kosten für ein Entwicklungs-System sind irrelevant – da muss jeder mit sich selbst ausmachen, was er dafür ausgeben will oder kann. Besonders günstig wird es, wenn man alles schon herumstehen hat. Ich wies nur darauf hin, dass ein Endprodukt nicht zu teuer sein sollte, also besser 100 als 200 Euro – Computer mit Keyboard usw. Wenn dann schon das verwendete Board ca. 150 Euro kosten würde, wäre man schnell über die angepeilte Grenze hinaus.


    Aber wenn du sagst – für eine Massenproduktion muss es ja gar kein MISTer sein, sondern was ganz anderes (billigeres), dann wäre man ja bei einer ganz anderen Kalkulation.


    Lassen wir mal beiseite, daß ein konkretes Gehäuse nicht meine erste Sorge wäre: gerade der Mega 65 zeigt ja, wie sehr die Kosten durch sowas explodieren.

    Deswegen bin ich persönlich ja schon länger weg vom Tastatur-Computer. Preislich erschient er mir unrealistisch – außer man setzt auf generische Fertigteile – mit denen man dann optisch (und vom Feeling) auch nichts gewonnen hat. Ich favorisiere z.Z. eine Gehäuse-Form, wie man sie von der Ouya oder dem Apple-TV kennt – einfach eine hübsche kleine Kiste. Nachdem ich gesehen habe, dass hier jemand aus dem Forum auf seiner eigenen Spritzguss-Maschine Modul-Gehäuse fertigt und für 3,50 € das Stück verkauft, würde ich versuchen, die Gehäuse-Größe so gering zu halten, dass man sie auf so einer Maschine produzieren kann. Ich könnte mir vorstellen, dass man bei Stückzahlen vielleicht auf 10 € pro Gehäuse kommen könnte.


    ----


    Was ich noch sagen will: Wenn jemand so einen Retro-Computer lieber mit einem FPGA statt einem Raspi umsetzen will – dann möge er es tun (für die Raspi-Befürworter gibt es jetzt ohnehin einen eigenen Thread). Ich und andere werden sich über jede Lösung freuen, egal auf welcher Basis und mit welchen Specs. Ob das dann mit anderen Vorstellungen bzgl. Preis oder Grafik oder CPU-Leistung oder Schnittstellen zusammenpasst, wird man sehen. Also, wer etwas umsetzen will, ist hier willkommen und wer "nur" darüber reden will, genau so.

  • So langsam habe ich das Gefuehl dass die Einschraenkungen in so ne Richtung hier tendieren ;)


    writing on a triangle – Merc Fenn Wolfmoor


    Ehrlich gesagt bin ich mir nicht sicher, ob ein anvisierter Preis zu diesem Zeitpunkt ueberhaupt relevant sein sollte. Es sei denn, das soll direkt das oberste Gebot sein, aber das hat schon beim 8bitguy nicht geklappt. Ich glaube in diesem Projekt hier ist es wichtiger, erstmal zu definieren was man eigentlich wirklich haben moechte und das dann prototypenhaft umzusetzen. An einen Preis wuerde ich an dieser Stelle ueberhaupt nicht denken. Meine Meinung.

  • An einen Preis wuerde ich an dieser Stelle ueberhaupt nicht denken. Meine Meinung.

    Da stimme ich Dir weitestgehend zu. Natürlich sollte man von Anfang an im Auge behalten, daß man am Ende nicht bei fantastischen Summen endet, aber sich jetzt zu prügeln, ob ein während der Grundlagenentwicklung benutztes FPGA-Board 50€ oder 150€ kostet, ist aus meiner Sicht Mumpitz. Runterskalieren kann man immer noch. Das sieht man ja an MIST, das für spezifische Cores auf preiswertere FPGAs usw. abgespeckt wurde ("Siderwinder" usw.). Aber solange alles im Fluß ist, bereits die Möglichkeiten einzuschränken, die man bei der Entwicklung einschlagen wird, könnte relativ schnell zu Aussagen der Art "ist eine gute Idee, aber kann unser FPGA bzw. Board nicht" führen.