[zxspectrum] Re: Cross assembler [riflessione]

  • From: Stefano Bodrato <stefano_bodrato@xxxxxxxxxxx>
  • To: <zxspectrum@xxxxxxxxxxxxx>
  • Date: Wed, 11 Feb 2015 21:08:12 +0100

>Da una discussione su facebook e' saltato fuori che molti programmi e giochi 
>per spectrum erano sviluppante non sul computer originale ma su macchine 
>ospiti 
>(pc ed anche trs80) e poi assemblata in codice macchina Z80 e spedita allo zx 
>tramite interfacce proprietarie, piu che altro per motivi di comodità e per 
>la 
>cronica mancanza di periferiche veloci (hd e floppy) sullo speccy. 

: )    e’ il fascino del pionierismo di quell’epoca, ognuno aveva i propri 
metodi.. il Sargon Chess, dopo aver vinto la prima gara di scacchi tra computer 
probabilmente venne portato su molte piattaforme z80 (la versione per NASCOM mi 
sembra un probabile caso) ricopiandone il sorgente assembler dal libro che 
venne pubblicato subito dopo.

Sandy White invece scrisse ANT-ATTACK a suon di POKE, trascritte a mano dai 
suoi quaderni.

Matthew Smith aveva realizzato ManicMiner (e probabilmente anche Styx) su un 
TRS-80, realizzando una routine di SAVE in audio compatibile con lo Spectrum 
(ebbene sì.. è un genio geniale!).
I primi byte del gioco contengono una traccia del sorgente originale in 
assembly, se siete curiosi.

Avevo sentito dire di tecniche simili anche nella realizzazione di Fairlight.

I primi mostri di cross-developement (come l’ISIS-II) credo derivassero dagli 
evaluation kit dei produttori di CPU, poi esistevano delle “pinze” da infilare 
al posto delle CPU per monitorare l’esecuzione passo-passo.
Insomma, ognuno aveva la sua, ma all’inizio praticamente nessuno aveva 
abbastanza potenza da poter usare gli emulatori software,  quindi.. con 
l’assembler c’era poco da fare, se sbagliavi probabilmente dovevi spegnere.. 
altro che debug !

EMG, ti prego, non un altro cross-assembler !   Stiamo modificando pesantemente 
z80asm per potenziarlo e renderlo compatibile con quello usato da SDCC (e ci 
siamo vicinissimi, eh eh.. !).  Questa esperienza ci ha fatto scoprire il mondo 
dei dialetti ASM per lo Z80, direi che ci saranno più di una cinquantina di 
varianti non compatibili tra loro, (i mnemonici della “technical design labs” 
sono da mal di testa!).
Ora z80asm supporta le sezioni, il che lo rende molto interessante per scrivere 
codice che stia in pagine parallele, forse interessa a chi ha uno zx128.

Other related posts: