[zxspectrum] Re: Aggiornamenti su z88dk
- From: "Stefano" <flydream@xxxxxxxx>
- To: <zxspectrum@xxxxxxxxxxxxx>
- Date: Tue, 29 Jul 2008 21:16:50 +0200
sempre molto interessante e come al solito ti faccio i miei complimenti ;)
----- Original Message -----
From: "Stefano Bodrato" <stefano_bodrato@xxxxxxxxxxx>
To: <zxspectrum@xxxxxxxxxxxxx>
Sent: Tuesday, July 29, 2008 7:48 PM
Subject: [zxspectrum] Aggiornamenti su z88dk
Tanto per aggiornarvi un po', vi racconto le ultime esperienze con il
megacompilatore.
Per cominciare non è poi tanto "mega", ma ci da' le sue soddisfazioni..
Tutto è cominciato nel 1998 quando, scoperto z88dk, mi sono accorto di
quanto fosse facile adattarne le librerie ad altre macchine (al tempo erano
supportati solo Z88 e Spectrum): per gioco ho adattato l'I/O al VZ200,
scelta a caso, e ho spedito il risultato a Dominic Morris.
Dom è una persona di spirito, e in breve tempo è iniziato un "gioco" che
ormai ha coinvolto un sacco di gente: la sfida è sempre la solita di sempre,
stupirci l'un l'altro, stimolando nuove idee e proponendo esperimenti
interessanti.
Il risultato è che uno strumento relativamente debole sta facendo faville !
Di recente nei forum è stato proposto dai "concorrenti" di SDCC un test
comparativo in cui di nota chiaramente come il motore di quest'ultimo sia
probabilmente superiore.. soltanto in uno dei programmi di prova z88dk
risulta decisamente più compatto e veloce: le applicazioni matematiche !
Incuriositi da questo fatto abbiamo indagato, scoprendo che la nostra forza
sta nelle librerie, che spesso riscriviamo in codice macchina.
Questo ha indotto Alvin a riprendere in mano tutta la stdio e sono ormai
certo che ne vedremo delle belle.
Tra le novità più vistose del momento c'è il c128 (quella povera bestia
dello Z80 deve fare i salti mortali, per arrivare alla memoria video):
http://www.z88dk.org/wiki/doku.php/platform:c128
Quella che invece mi intenerisce di più è il completamento delle routine per
interfacciarsi al BASIC con Spectrum e ZX81.
Pensate, i comando:
zx_setint("variabile",1234);
imposta la variabile dello ZX81 chiamata "VARIABILE" con l'intero 1234,
traducendo automaticamente il nome scritto in ASCII nella codifica dello
ZX81.
Nello stesso modo si possono leggere valori e leggere e scrivere stringhe
(volendo traducendo dall'ASCII il contenuto).
Poi, con il comando zx_line(<numerolinea>) si può eseguire una singola linea
di BASIC come se fosse una subroutine; quindi in supporto al C e al
linguaggio macchina uno si può costruire una libreria fatta più o meno così
100 PLOT X,Y
110 UNPLOT X,Y
120 SAVE A$
I codici di errore BASIC sono restituiti al programma chiamante.
- References:
- [zxspectrum] Aggiornamenti su z88dk
- From: Stefano Bodrato
Other related posts:
- » [zxspectrum] Aggiornamenti su z88dk
- » [zxspectrum] Re: Aggiornamenti su z88dk
- [zxspectrum] Aggiornamenti su z88dk
- From: Stefano Bodrato