Hallo, guten Tag.
Sen Grafikmodus einstellen beim VIC20 mit ASM , wie geht das bitte?
Ich habe den Basic-RAM auf 28kb eingestellt.
Danke.
Gruss
Du bist in Begriff, Forum64 zu verlassen, um auf die folgende Adresse weitergeleitet zu werden:
Bitte beachte, dass wir für den Inhalt der Zielseite nicht verantwortlich sind und unsere Datenschutzbestimmungen dort keine Anwendung finden.
letzter Beitrag von cbm-warrior am
Hallo, guten Tag.
Sen Grafikmodus einstellen beim VIC20 mit ASM , wie geht das bitte?
Ich habe den Basic-RAM auf 28kb eingestellt.
Danke.
Gruss
wie geht das bitte?
Gar nicht. Der VC 20 hat keinen Grafikmodus.
Ich habe den Basic-RAM auf 28kb eingestellt.
Dann hast Du noch nicht einmal Platz für den Textbildschirm?
Eine Pseudo-Grafik kann man bauen, indem man Werte von 0 bis 255 ins Screen-RAM schreibt (einmal normal und einmal invers), den Zeichensatz nach $1000 verlegt und diesen als Bitmap nutzt. Literatur dazu:
- Alles über den VC 20 (deutsch)
- VIC 20 Programmer's Reference Guide (englisch, Vorlage zu a)
- VC 20 Intern
- Quelltext/Disassembly zum Super Expander Cartridge (das genaz so einen Schirm bastelt)
Danke.
IN der WIKI steht vom VIC20:
Der VIC-I 6561 kann im Textmodus 22 (Spalten) × 23 (Zeilen) Zeichen, im Grafikmodus (HiRes, 1 bildschirmweite Hintergrundfarbe, 1 weitere Farbe je 8×8 Pixel) 176×184 Pixel, im Vielfarbmodus (Multicolor, 3 bildschirmweite Farben, 1 weitere Farbe je 4×8 Pixel) 88×184 Pixel darstellen.
Danke.
Gruss
Hat einer von euch mal interessiert den Grafikmodus benutzt beim VIC20.
Wenn ja, wäre doch mal wieder interessant den hier mal aufzufrischen.
Danke.
Gruss
Eine Pseudo-Grafik kann man bauen, indem man Werte von 0 bis 255 ins Screen-RAM schreibt (einmal normal und einmal invers), den Zeichensatz nach $1000 verlegt und diesen als Bitmap nutzt.
Und ich meine, man musste den Zeichensatz auch auf doppelt hohe Zeichen (8*16 Pixel) umstellen, da man sonst nicht bildschirmfüllend darstellen konnte...
Gruß
Thomas
Das hört sich so einfach an das kopieren.
Wie ensteht dann dadurch die Grafik bitte als Pixel?
Danke.
Gruss
Und ich meine, man musste den Zeichensatz auch auf doppelt hohe Zeichen (8*16 Pixel) umstellen
Irks, stimmt, 'invers' als Attribut war ein anderer Fake-Gradik-Modus.
Wie ensteht dann dadurch die Grafik
Du füllst den Textschirm mit Werten 0,1,2,3,4,... und schreibst in den Zeichengenerator Deine Grafik-Pixel. Steht so auch im Datenblatt oder dem PRG. Einfach mal etwas stöbern. Oder den SEX im VICE starten und gucken, wie der Speicher dann aussieht.
Danke.
Im Datenblatt steige ich nicht so durch ,kopieren, umwandeln , zurückkopieren usw.
Wie sieht jetzt bitte die routine für invers aus, wo kommen bitte die Daten hin?
---------------------------
Du füllst den Textschirm mit Werten 0,1,2,3,4,... und schreibst in den Zeichengenerator Deine Grafik-Pixel.
---------------------------
das kapiere ich bitte nicht
Gruss
Kann man mir mal bitte ein kleine Beispiel zeigen?
Danke.
Gruss
spacer: Die Routine, welche den entsprechenden Grafikmodus einstellt, sieht im Quellcode wie folgt aus:
Nach deren Ausführung kannst Du auf eine Bitmap ab $1100 mit 160x192 Pixeln zugreifen, mit der Adreßfunktion AD=4352+192*INT(X/8)+Y, die Farbattribute stehen im Farb-RAM von $9400 bis $94EF und gelten für Bereiche mit 8x16 Hires-Pixeln, Hires (Bit 3 = 0) und Multicolour (Bit 3 = 1) können gemischt werden. Von $1000..$10EF wird dem VIC-Chip ein Adreßgenerator in die Bitmap zur Seite gestellt, dieser Bereich ist als schreibgeschützt zu betrachten.
Bitmap löschen, Punkte setzen, Linien ziehen, etc. kannst Du jetzt entweder alles selbst machen oder dir anschauen, wie MINIGRAFIK das implementiert.
Viele Grüße,
Michael
Hallo, danke für die Hilhe.
Gruss
Zitat
Von $1000..$10EF wird dem VIC-Chip ein Adreßgenerator in die Bitmap zur Seite gestellt, dieser Bereich ist als schreibgeschützt zu betrachten.
Mein Bildschirmspeicher ist bei $1000 bei einer Erweiterung von 8kb, 16kb und 24kb.
Also kann ich nur bis eine Erweiterung von ingesamt 6kb gehen?
Oder gibt es noch eine Möglichkeit die Grafik ab 8kb Erweiterung zu realisieren?
Ich kann den Bereich bei $A000 weiter nutzen ohne Basic ?
Danke.
Gruss
Dieses habe ich unten herausgeholt und kann einen leeren Screen darstellen.
Nun komme ich noch nicht so klar , wie kann ich irgendwo einen Punkt setzen in meinem
kleinen Programm?
PS: Die Frage ist geklärt für die Grafik 28kb.
Danke.
Gruss
Mein Programm von unten:
Das original Program
Nur mal OT - falls es jemanden interessiert …
Im 64er Sonderheft 3 - u. a. auch für den VC-20 - findet sich ab Seite 60 das Programm Hyper-Graphics. Dort findet man auch den Quellcode des Programmes ausführlich dokumentiert. Da kann man sich in das Thema sicher generell mal gut einlesen. pdf dieses Heftes ist in der Wolke zu finden, D64 der Diskette evtl. auch, dann braucht man es nicht abtippen.
Gibt in diversen Zeitschriften verschiedene kleine Grafikroutinen, meist leider nicht so sehr toll dokumentiert.
Ich suche schon wieder die Sonderhefte in WOLKE.
Wolke ist sehr groß...
Danke.
Gruss
Im 64er Sonderheft 3 - u. a. auch für den VC-20 - findet sich ab Seite 60 das Programm Hyper-Graphics.
Wenn du auch noch das Jahr angegeben hättest, dann wäre es auch zu finden Ist Jahrgang 1986
Danke jetzt habe ich es gefunden.
Gruss
Wenn du auch noch das Jahr angegeben hättest, dann wäre es auch zu finden Ist Jahrgang 1986
Stimmt Sonderheft 3/1986. Gebe aber die Jahreszahl gar nicht mehr an, außer bei den Sonderheften von 1985. Ab 1986 wurde ja neu von 1 ab bis zum Ende gezählt. Außerdem so viele VC-20 lastige Sonderhefte sind es nun auch wieder nicht …