[zxspectrum] Re: Nuovo iscritto! [Spam][71.1%]

  • From: "Alessandro Poppi" <apoppi@xxxxxxxx>
  • To: <zxspectrum@xxxxxxxxxxxxx>
  • Date: Wed, 8 Feb 2006 13:16:54 +0100

On Wednesday, February 08, 2006 12:07 PM [GMT+1],
Stefano <flydream@xxxxxxxx> wrote:

Sono capitato da queste parti perche` sto cercando spunti per i
dettagli per un progetto gia` avviato e stabile, ovvero un
(ennesimo?) clone di zx-spectrum.

il chrome?

No no, intendo un progetto mio, che non ho (ancora?) pubblicato. Ho iniziato lo sviluppo a dicembre, dopo aver visto molti lavori (tra cui il chrome, progetto veramente notevole).


Nonostante ci fosse molto materiale in giro, data la natura "ludica" dello sviluppo, ho deciso di partire da zero (a parte, ovviamente, l'influenza che ho avuto vedendo altri progetti). Ne e` uscito qualcosa che mi piace molto. Ha caratteristiche diverse da altri progetti proprio per non "sovrapporsi". Che senso avrebbe avuto fare un clone di un clone?

Ad esempio non supporta il floating-bus. Per una serie di motivi, alla fine ho deciso di non utilizzare logica nella CPLD a tale scopo, privilegiando altri aspetti. Uno di questi e` la presenza di uno scan-converter con un banco di ram dedicata da 128K che permette il pilotaggio di un monitor VGA ad esattamente 100Hz. Il banco di ram viene spazzolato due volte per ogni ciclo di aggiornamento da parte della vera ram video spectrum, in modo da mantenere per quanto possibile una coerenza con i timing con i quali una vera ULA effettuerebbe l'operazione.

Anche i pixel relativi al border vengono trasferiti sotto forma di singoli pixel letti momento per momento, altrimenti non potrebbero mai funzionare i cambiamenti "on-the'fly" tipici ad esempio di un caricamento da cassetta.

La velocita` di clock dello Z80 e` selezionabile a 3.5, 7, 7 con raddoppio anche nella scansione del video (quindi interrupt a 100Hz), 14 con 100Hz, 21MHz con 50Hz sul video.

Ho anche implementato una seriale veloce gestita da un handler NMI in una rom aggiuntiva che viene "swappata dentro" al momento opportuno, e che consente di effettuare trasferimenti di memoria ed anche snapshot 16/48/128K con un programma in VC++ che ho preparato.

Ho due banchi da 16KB che possono essere messi in SHADOW con altrettanti di rom e che mi hanno consentito di testare facilmente il mio handler NMI senza dover riprogrammare nessuna eprom.

Insomma, ci ho lavorato un bel po`. Ho molte foto e documentazione, ma non le ho preparate per metterle in un sito o cose del genere. Se interessa posso cmq condividerle.

meglio puntare sulla DivIDE :)

Ho visto un progetto molto interessante di interfacciamento compact flash: http://user.tninet.se/~vjz762w/ La cosa che mi stuzzica e` la presenza di un DOS gia` pronto. So gia` pero` che anche questa volta partiro` dal basso, magari potrei mantenere l'indirizzo dei registri in modo da avere una qualche compatibilita` futura.


Ciao!


Other related posts: