Ready64 Forum
Commodore 64 => Programmazione, Grafica e Musica => Topic aperto da: Uzumaki.Naruto - 04 Maggio 2009, 12:34:00
-
Ciao a tutti!
Avrei intenzione di convertire sul :c64: 64 alcuni giochi in bacic scritti esclusivamente per TI99 e spulciando il manuale per i vari riferimenti alle locazioni di memoria mi salta all'occhio una mancanza: avrei necessita di colorare anche il fondo di un caratte e volevo sapere se vi erano limiti in basic per questo e quindi usare un colore di fondo con la locazione 53281 comune a tutti o vi è una mappa di memoria accessibile dal basic stesso che permette l'allocazione singola per caratte di un colore di fondo.
Il TI99 permetteva, seppur limitatamente, questa possibilita e non credo che non sia possibile col :c64: 64 data la libera accessibilita alla memoria. :)
Grazie anticipatamente per le risposte.
-
Nel 64, che io sappia, il modo più comodo per fare quello che dici é usare l'EBCM (http://www.devili.iki.fi/Computers/Commodore/C64/Programmers_Reference/Chapter_3/page_120.html) (Extended Background Color Mode).
In sostanza viene ridotto il numero di caratteri (solo 64 disponibili) ma é possibile sfruttare 4 diversi colori di sfondo. Per discriminare il colore di sfondo del carattere vengono usati i 2 bit più significativi del carattere stesso.
Ad esempio il carattere 193 é in realtà il carattere 1 con colore di background 3.
In questo modo quindi si hanno a disposizione 4 colori per schermata: se poi giochi un po' con i raster puoi fare in modo che alcuni di essi siano liberamente configurabili ad ogni riga (o, visto che lavori a caratteri, ogni 8).
-
In questo modo quindi si hanno a disposizione 4 colori per schermata: se poi giochi un po' con i raster puoi fare in modo che alcuni di essi siano liberamente configurabili ad ogni riga
Si ma è gestibile da basic????
-
Assolutamente si, lascia perdere la parte sui raster chiaramente!
-
Visto ma forse ho capito che in questo caso devo anche ridefinire i caratteri poiché i grafici standard del C64 vengono sostituiti dai caratteri letterali corrispondenti.
Ho detto giusto?
-
Direi di si... hai a disposizione solo i primi 64 caratteri contro i 256 normalmente disponibili.
-
OK! Sarà un bel lavoro di "data" quindi ma credo di farcela! Grazie! :lol: