On Saturday, February 03, 2007 5:28 PM [GMT+1], Stefano <flydream@xxxxxxxx> wrote:
A quando la possibilità di poter usare l'area estesa dello schermo e il maggior numero di colori per far girare un po' di software aggiuntivo? :)
E` gia` possibile grazie al nuovo favoloso :-) registro $64DF, denominato "hi_res": lo Z80 accede direttamente alla ram dello scan converter (due pagine, indipendentemente selezionabili per scrittura e la visualizzazione in modo da avere un double-buffering serio).
La modalita` che ne risulta e` 320x256 con 4 bit per pixel (i soliti R,G,B e Brightness).
In pratica si scrive pixel per pixel anche nella zona normalmente gestita come border, che e` 32 pixel tutto attorno allo schermo spectrum (che infatti e` 256x192).
Funziona anche bene, ho aggiunto al firmware una funzione che carica da SD i 42K necessari per una schermata, poi ho scritto un pezzetto di programma in zx-com (che gira sotto win e serve per comunicare col clone) che legge tutti i BMP presenti in una directory, li converte nel formato suddetto (ovviamente perde molto, come puoi immaginare (vedi il mio gatto nella sezione software del sito)) e li uploada sul clone, il quale li salva nella SD card uno dopo l'altro.
A 115K2 baud il procedimento richiede molti minuti per 100 frames, ma poi viene il bello: usando la nuova funzione del firmware, che legge un certo numero di frames, un piccolo programma in basic li legge uno dopo l'altro e li mostra a video; grazie alla notevole velocita` di trasferimento ottenibile a 21MHz, 105 frames vengono visualizzati in 5 secondi: 21 fps! (praticamente un video vero e proprio). Mediante VirtualDub ho convertito un filmato divx in una sequenza di BMP e adesso posso riprodurlo sul badaloc :-)
Ciao!