Einfache Grafikkarte für PET/CBM neu entwickeln?

  • Prozessor ausgelagert, Videosignal durschgeschliffen …



    Ich frage mich ob es nicht eine ganz einfache Möglichkeit gibt, jedes Pixel anzusteuern.

    Ohne viel an der Hardware zu ändern …



    - angenommen der Zeichensatz wäre änderbar (CHAR-RAM statt CHAR-ROM) …


    - und angenommen man füllt die Zeichen 0 bis 127 an die Bildschirmposition 0 bis 127


    Man hätte oben schon einen kleinen Bereich für HIRES Pixelgrafik.

    Sagen wir mal grob eine Bildschirmzeile ...



    Wenn man nun die Bildschirm Zeilen mit zählen würde, und diese Information als Adresserweiterung für das CHAR-RAM sehen würde …


    - jede Bildschirmzeile hätte einen "eigenen" Zeichensatz, also 25 "Zeichensätze"

    - jeder der Zeichensätze wäre änderbar

    - jede Zeile wird beschrieben mit den Zeichen 0 bis 79


    Man könnte ganz einfach jedes Pixel verändern.


    --------------------------


    Aufwand:

    • ein großes SRAM (heutzutage sehr günstig)
    • ein bisschen Logik in einem CPLD


    Änderung an der PET Hardware:

    • CHAR-ROM ersetzen mit Flachband Kabel zu einem Board
    • Adressbus + Datenbus + R/W + Phi2 abzapfen am Expansion Port
    • Signale abgreifen um die aktuelle Zeile rauszufinden
  • Und das Invers-Bit hernehmen um zwischen Character-RAM und Character-ROM umzuschalten. Dann könnte man Text und Grafik mischen.

    Invers bräuchte man nicht, das könnte man als Grafik darstellen.


    Bauen! :thumbup::mrgreen:


    Edit: Ich frage mich gerade, ob man eine einfache Grafikkarte nicht sogar einfacher bauen könnte, wenn man die ganzen Zähler und die Bankselect-Logik in einen CPLD packt. Der Vorteil ist, dass man wie bei den historischen Grafikerweiterungen das Grafiksignal mit dem Textsignal mischen und beides überlagern kann. Das bringt einige Geschwindigkeits- und Speichervorteile.

    Also wenn man schon einen CPLD nimmt, dann kann man's doch auch gleich richtig machen. ;)

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

    Einmal editiert, zuletzt von detlef ()

  • Dann könnte man Text und Grafik mischen.

    Invers bräuchte man nicht, das könnte man als Grafik darstellen.

    Richtig.

    Man könnte Grafik und Text mischen.

    Allerdings nur Zeichenweise.



    Natürlich bräuchte man eine Umschaltung in Software:

    • Textmode: alles wie bisher
    • Grafikmode: normale Zeichen wie immer, inverse Zeichen mit CHAR-RAM



    Für die Kommunikation mit der 6502 CPU könnte man ein Register verwenden im ROM Bereich.

    Der 8296 hat eh schon eines auf $FFF0.

    Also einfach irgendwo daneben, zb. $FFE0 und $FFE1


    Ein Control Register und eines mit dem man Daten transportieren kann.


    Wenn man das CHAR-RAM in den normalen Speicher einblendet, dann wird es wieder kompliziert.

    Außer man hat einen 8296, da kann man ja ganz einfach das ROM ausblenden und was anderes anlegen.




  • Ich hatte jetzt meinen Beitrag nochmal ergänzt. Hat sich wohl überschnitten.

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • Edit: Ich frage mich gerade, ob man eine einfache Grafikkarte nicht sogar einfacher bauen könnte, wenn man die ganzen Zähler und die Bankselect-Logik in einen CPLD packt. Der Vorteil ist, dass man wie bei den historischen Grafikerweiterungen das Grafiksignal mit dem Textsignal mischen und beides überlagern kann. Das bringt einige Geschwindigkeits- und Speichervorteile.

    Also wenn man schon einen CPLD nimmt, dann kann man's doch auch gleich richtig machen. ;)


    Naja, die Geräte ab 4xxx machen das ja, die haben die ganzen TTL mit einem Video Chip ersetzt.


    Natürlich könnte man eine Grafik Karte bauen für den PET.

    So mit CPLD und RAM.

    Aber dann ist es wohl nicht mehr "einfach".


    ------


    Die Methode mit dem CHAR-RAM ist universell.

    Das funktioniert mit einem PET-2001 genauso wie in einem 8296-SK

  • Ich hatte damals so ein Grafikboard in meinem 3032 und das war damals schon nur 10x10 cm groß (ohne CPLD, nur TTL und RAM) und steckte glaube ich auf dem CPU-Sockel. Genau weiß ich das nicht mehr. Die notwendigen Signale wurden mit ein paar IC-Clips abgegriffen. Die Video-Signale wurden vermutlich durchgeschleift. Man musste für den Einbau nicht löten.

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • Das schöne am Zeichensatz ist auch, man kann nebenbei ganz andere schöne Dinge machen.

    • Zeichensatz statisch ändern - andere Sprache, andere Umlaute etc.
    • Man kann Logos oder Smileys realisieren
    • Man kann animierte Grafik machen (animierte Smiley oder Effekte) nur indem man ein Zeichen ändert (oder vier Zeichen für größere Grafik)
  • Naja, die Geräte ab 4xxx machen das ja, die haben die ganzen TTL mit einem Video Chip ersetzt.


    Natürlich könnte man eine Grafik Karte bauen für den PET.

    So mit CPLD und RAM.

    Aber dann ist es wohl nicht mehr "einfach".

    Man braucht zusätzlich noch Adresszähler und Schieberegister. Klar, das ist schon aufwendiger.


    Die Methode mit dem CHAR-RAM ist universell.

    Das funktioniert ein einem PET-2001 genauso wie in einem 8296-SK

    Stimmt. Die Character-Generator-Lösung ist unabhängig vom Videotiming.

    Andererseits gibt es nur eigentlich zwei Timing-Varianten, 40 Zeichen und 80 Zeichen (wenn man dem Textmode mit dem größeren Zeilenabstand beim 8032 mal außen vor lässt.). Das könnte man im CPLD umschalten.

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • Das schöne am Zeichensatz ist auch, man kann nebenbei ganz andere schöne Dinge machen.

    • Zeichensatz statisch ändern - andere Sprache, andere Umlaute etc.
    • Man kann Logos oder Smileys realisieren
    • Man kann animierte Grafik machen (animierte Smiley oder Effekte) nur indem man ein Zeichen ändert (oder vier Zeichen für größere Grafik)

    So eine Art Sprites. ;)


    Hat nicht sogar beim VC20 die Grafik so ähnlich funktioniert? Über den Zeichensatz? :/

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."

  • So eine Art Sprites. ;)

    Nein, man kann die Position nicht ändern, bzw. nur Zeichenweise.

    Ja klar, Nur zeichenweise. Aber für viele Spiele würde das ausreichen.

    • i-Telex 7822222 dege d

    • technikum29 in Kelkheim bei Frankfurt

    • Marburger Stammtisch

    Douglas Adams: "Everything, that is invented and exists at the time of your birth, is natural. Everything that is invented until you´re 35 is interesting, exciting and you can possibly make a career in it. Everything that is invented after you´re 35 is against the law of nature. Apply this list to movies, rock music, word processors and mobile phones to work out how old you are."