[zxspectrum] Re: R: Re: infinity

  • From: "Alessandro Poppi" <apoppi@xxxxxxxx>
  • To: <zxspectrum@xxxxxxxxxxxxx>
  • Date: Tue, 4 Apr 2006 17:30:08 +0200

Aggiornamento 2:

Grazie al colpo di culo di avere un problema facilmente individuabile (assenza del V-SYNC sul connettore VGA) ho potuto modificare leggermente la formula che lo genera fino a trovare un valore che "gli piace" (purtroppo queste sono le cose che si debbono fare quando si e` al limite delle risorse).

In pratica attivando il VSYNC quando il contatore verticale e` compreso fra 512 e 516 anche la ISE 8.1 ha potuto compilare correttamente il tutto (prima i valori erano 512 e 515).

Senza questa modifica il compilatore riusciva a farci stare tutto dopo 4 o 5 tentativi in cui modificava automaticamente il pterm limit e input limit:

Started : "Fit".
INFO:Cpld:994 - Exhaustive fitting is trying pterm limit: 28 and input limit: 32
Considering device XCR3256XL-10-TQ144.


...col particolare che pero` agendo in questo modo si otteneva un progetto compilato ma dal comportamento erratico.

Cambiando quel numero, il fitting avviene al primo colpo (come con la 7.1).

La cosa interessante e` che nel nuovo contesto, ho modificato la logica dei segnali all'AY e l'ha digerita: l'audio funziona anche con B sballato. Le nuove formule sono:

ay_bc1 <= '1' when z80_addressbus(15 downto 14) = "11" and z80_addressbus(1) = '0' and z80_iorq = '0' else '0';

ay_bdir <= '1' when z80_addressbus(15) = '1' and z80_addressbus(1) = '0' and z80_iorq = '0' and z80_wr = '0' else '0';

In pratica il BC1 va alto solo su accesso a $FFFD in lettura e scrittura (controllando solo A15, A14, A1) mentre BDIR va alto senza tenere conto di A14 (ovvero sia su FFFD che BFFD e solo per accessi in scrittura). Ho come il sospetto che nella formula che Luca aveva fornito non venisse considerato A14 in nessun caso.

Adesso pero` mi vorro togliere una curiosita`: conoscendo il "punto debole" della formula del VSYNC stasera provo a compilare questo sorgente sulla "vecchia" 7.1 che ho ancora a casa.

Ciao!


Other related posts: