[zxspectrum] Re: zxspectrum Digest V3 #167

  • From: "Stefano Bodrato" <stefano_bodrato@xxxxxxxxxxx>
  • To: zxspectrum@xxxxxxxxxxxxx
  • Date: Sat, 01 Jul 2006 14:24:32 +0200


Subject: [zxspectrum] z88dk

Buongiorno ragazzi,

ciao !

vi leggo sempre ma non scrivo mai... :-(
Adesso mi trovo in Bulgaria, per una settimanina di ferie, e guarda caso mi
e' venuta la tentazione di installare e provare quanto in oggetto; pero'
non riesco a fare un granche'.
Ho estratto tutto il contenuto dello zip in c:\z88dk (che peraltro non mi
piace... io ho tutto in h:\private\lavori\...), ho creato un semplice
programmino che fa una printf("Hello, World!\n"); pero':

1. con sccz80 riesco a creare il .asm (un po' strano come forma, ma presumo
vada poi assemblato con z80asm...)
2. con zcc mi da' il seguente errore:

copy c:\z88dk\lib\z88_crt0.opt C:\WINNT\TEMP\s1nc_1.opt
Impossibile trovare il file specificato.
Cannot copy crt0 file

Cosa devo fare? Quali sono gli step per avere un .asm da compilare (posso
riparserizzarlo perche' sia compatibile col mio assemblatore, TASM 3.2,
questo non e' un problema), che mi faccia un .obj in formato Intel Hex (ho
visto che c'e' un'utility nel pacchetto che da un bin fa la stessa cosa),
dal quale poi con un mio programma faccio un .tap

No, dovrebbe essere molto + semplice.
Se hai Windows installa direttamente il package, così ti vengono installate le variabili d'ambiente automaticamente.
Consiglio di usare direttamente la directory proposta, con i puntamenti a "bin", "lib" e "cfg" corretti.
Poi dai il comando:
zcc +zx -lndos -create-app tuoprogramma.c
-o-
zxx +zxansi -lndos -create-app tuoprogramma.c



Poi... Non conosco il dk, ma e' veramente possibile scrivere codice c, compilarlo e usarlo sullo Speccy direttamente? Intendo dire, printf, scanf, - e altre funzioni di output, anche grafiche - funzionano direttamente sul display file dello Speccy?


Le funzioni di stdio e stdlib ci sono tutte, e anche una parte abbastanza completa di fcntl.
Una delle due versioni delle librerie risponde anche alle sequenze di escape VT/ANSI, colori e funzioni avanzate compresi (escluse le funzioni per interrogare il terminale, come quelle per sapere in quale riga/colonna ci si trova). Non sono mai riuscito a costruire una libreria "curses", più che altro per pogrizia e ignoranza.
"fcntl" viene legato a driver specifici per la gestione del disco (microdrive, plus3, o ZXVGS);sto giusto provando a costruire un driver minimale che si interfacci al BASIC.


Ci sono poi delle funzioni grafiche "ad-hoc", che per lo Spectrum sono su due livelli: quelle base monocromatiche portabili tra varie piattaforme Z80 e lo sprite pack, che gestisce colore e fotogrammi appoggiandosi alle interrupt ed è molto performante.

Poi c'è string, malloc, tipi long floating point, ecc..
Non nascondo che il primo impatto è spesso negativo (prima dell'apporto di Marcello la vita era ancora + dura.. non abbiamo risorse per investire sullo "user friendly"), ma ne vale la pena.




Other related posts: