[zxspectrum] Re: Ula+

  • From: Alessandro Dorigatti <adorigatti@xxxxxxxxx>
  • To: zxspectrum@xxxxxxxxxxxxx
  • Date: Sun, 27 Mar 2011 19:35:36 +0200

On Sun, 2011-03-27 at 19:15 +0200, Alessandro wrote:
> On Sun, 2011-03-27 at 15:35 +0200, Alessandro Dorigatti wrote:
> 
> > > Dimentichi che io NON sono fedele con l'ula originale, se vuoi posso
> > > fare i test ugualmente ma non avranno gran significato.
> > 
> > Magari potrebbe essere interessante, a questo punto, fare il test con
> > btime e Aquaplane: BTime dovrebbe cambiare il colore del bordo a
> > specifici T-State (credo senza tirare in ballo ad esempio il floating
> > bus) e nel caso del mio core vedo un flickering (a 50Hz) della righetta
> > che viene generata; principi analoghi valgono per AquaPlane, anche se in
> > quel caso (credo) viene tirato in ballo anche il concetto di contended
> > I/O (per calibrare l'istante in cui viene cambiato il colore del bordo).
> 
> Dunque, sto provando aquaplane. C'e' un errore fisso ben preciso fra il
> punto di commutazione del border e l'inizio del cambio di colore sulla
> parte bitmap, tanto da convincermi a modificare l'offset di generazione
> del border di circa 16 linee per vedere come diventa.

Dunque: CREDO (notare il maiuscolo, in quanto non sono certo di questa
cosa) che il problema con l'ordinata del punto di commutazione del bordo
sia dovuto al fatto che AquaPlane effettua degli accessi a porte
"contese" per calcolare l'istante in cui deve effettuare il cambio di
colore. Se l'accesso I/O conteso non è implementato correttamente si ha
un problema di timing.

Non a caso a me interessava capire se notavi flickering e non se il
bordo era allineato al "mare". Ciò che succede a me, invece, è che
l'ordinata di commutazione del bordo è precisa, ma ho circa 16 pixel
proprio all'estrema sinistra del bordo che ogni tanto sono color "mare",
ogni tanto "cielo. Sto cercando di capire il motivo di questo
flickering.

> Sto aspettando che ricompili, ci mette quasi 10 minuti.
> 
> Nel frattempo, chiedo lumi su BTime: dove posso trovarlo?

BTime (insieme ad una serie di altri test molto interessanti) lo puoi
trovare all'URL che segue:

http://wizard.ae.krakow.pl/~jb/qaop/tests.html

Tra l'altro puoi vedere in tempo reale (visto il JSpeccy che gira nella
stessa pagina web) quale dovrebbe essere il risultato atteso.

Anche in questo caso, io noto la righetta rossa che flickera...

> 
> > Vorrei in pratica capire se anche tu noti (a prescindere dalla posizione
> > in cui vengono visualizzate righetta o linea di orizzonte nel caso di
> > Aquaplane) delle instabilità nella visualizzazione... perchè in tal caso
> > POTREBBE (?) dipendere dai problemi di timing del T80?
> 
> Aquaplane non mi sembra instabile, solo sfalsato.
> 
> > A proposito: tu
> > utilizzi la versione T80a (asynchronous top level) o T80se (synchronous
> > top level)? Perchè io utilizzo (per forza di cose.. purtroppo) la
> > versione asincrona che è poi quella che sto cercando di migliorare.
> 
> Io ho: u0 : entity work.T80sed

OK... io utilizzo T80a (cosa che sarebbe sconsigliata, visto che questa
versione del T80 è asincrona: effettua infatti commutazione dei segnali
sia sul fronte positivo che negativo del clock); non ho attualmente
alternative in quanto la generazione del mio segnale di clock per la CPU
prevede che IORQ_n e MREQ_n commutino esattamente dove accade per lo Z80
reale (e nel caso di MREQ_n avviene su un fronte negativo, mentre nel
caso di IORQ_n avviene su un fronte positivo).


Other related posts: