Hallo, guten Tag.
Ich möchte bitte den ersten 128 ASCII-Zeichen vom VIC20 neuen Inhalt geben.
Mit Print "AB" sollen dann die geänderten AB sichtbar sein.
Wie geht das bitte. der VIC20 läuft mit 28kb-Speicher.
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 spacer am
Hallo, guten Tag.
Ich möchte bitte den ersten 128 ASCII-Zeichen vom VIC20 neuen Inhalt geben.
Mit Print "AB" sollen dann die geänderten AB sichtbar sein.
Wie geht das bitte. der VIC20 läuft mit 28kb-Speicher.
Danke.
Gruss
Wäre es für Dich nicht mal eine Option, selbst im Internet zu recherchieren, statt hier permanent Grundlagenfragen zu stellen, ohne auch nur eine einzige Zeile an Code zu präsentieren oder zu schildern, was Du schon probiert hast, um Deinem Ziel näher zu kommen?
Es kommt zumindest mir so vor, als wenn Du hier im Forum Threads dazu nutzt, "Bestellungen" für Code-Schnipsel aufzugeben. Wenn andere gerne für Dich die Zeit investieren und Dir die Arbeit abnehmen, sollen sie. Ich fühle mich von derartigen (und sich ständig wiederholenen) Grundlagenfragen fast belästigt!
Man sollte aber bedenken, dass hier gelieferte Code-Schnipsel (wie bereits in vergleichbaren Threads) nicht wirklich zum Verstehen beitragen. Eine Frage ähnlicher Natur ist deshalb schon fast vorprogrammiert.
Deshalb gibt es von mir nur diesen einen rudimentären Hinweis: 9005 "Start of Character Memory"
Wenn hier ein Grundgerüst eines Programms von Dir gepostet wird, wo etwas nicht funktioniert, wäre ich durchaus und gerne bereit, Dir dann Fehler aufzuzeigen...
Sorry für Offtopic...
Gruß
Thomas
grundsätzliche vorgehensweise:
- Zeichensatz ins ram kopieren
- zeiger des vic auf die startadresse des im ram befindlichen zeichensatz
- zeichen verändern mit poke in den entsprechenden speicherstellen
- spass haben
um das zu machen musst du dir entsprechend literatur zur rate ziehen.
Was kommt bitte in 36869 rein? 40 poke 36869,....
Der Charset kommt ab 4608 rein und der Screen beginnt bei 4096-4607.
Ich compiliere mit mospeed in Adresse 8704 und starte mit sys 8704.
Danke.
Gruss
4608 als Startadresse für den Zeichensatz zu nehmen, geht wohl nicht. Die unteren 4 Bits von 36869 zeigen auf den Zeichensatz. Im Grundzustand sind diese Bits alle auf 0 (Peek 36869 ergibt 240, also binär 11110000), dadurch zeigt der Zeichensatz auf das ROM bei 32768.
Du könntest statt 4608 die Adresse 5120 wählen und müsstest dann den binären Wert 11111101 nach 36869 poken.
Wenn Du wie im Beispiel die ersten Bytes vom Zeichensatz änderst, dann änderst Du aber nicht das A, sondern das @-Zeichen...
Gruß
Thomas
PS: Das obige gilt für die Grundversion ohne RAM-Erweiterung. Mit 28k-RAM-Erweiterung sind eventuell andere Adressen für den Bildschirmspeicher zu verwenden, dann steht in 36869 eventuell nicht 240 nach dem Einschalten drin...
danke für die Info.
Jetzt funktioniert es.
Gruss