[zxspectrum] Re: domandone tecnicone

  • From: mario <mario.prato@xxxxxxxx>
  • To: zxspectrum@xxxxxxxxxxxxx
  • Date: Thu, 02 Feb 2006 15:04:41 +0100

beh, visto che la sorgente di interrupt e' un solo pin se non vuoi usare il polling ti tocca usare l'IM2 dove il dispositivo che genera la richiesta pone sul bus dati la parte meno significativa di un vettore nel quale e' situato l'indirizzo a 16 bit verso il quale lo z80 deve saltare. In questa maniera hai la possibita' di gestire 128 dispositivi ognuno col la sua routine di gestione. Sullo spectrum quando e' la ula a inviare la richiesta, il bus resta a $FF per via delle resistenze di pullup. per gestire altri dispositivi ti serve comunque dell'hardware aggiuntivo che ponga sul bus dati il vettore quando lo z80 riconosce l'int.

ciao


Alfonso Martone wrote:

Visto che gli hardwaristi in questi giorni abbondano, ne approfitto per chiedere una consulenza tecnica gratuita...

Lo Spectrum ha un solo interrupt (ogni cinquantesimo di secondo succede qualcosa come "RST $38") e tutto il resto è fatto "a polling" (ZX Printer, la stessa tastiera -sia pure nella RST $38-, etc).

Ma sarebbe possibile usare altre fonti di interrupt senza usare un 8255 o robe del genere? (per esempio un RST $30 ogni volta che una la scheda di rete riceve un pacchetto, oltre al canonico RST $38 quando è finito il frame video).

Nel '90 scrissi un driverino per far usare quattro seriali veloci ad un 286, usando solo i due canonici IRQ4/IRQ3 (la routine che rispondeva all'interrupt doveva vedere a chi era figlio prima di procedere). Mi chiedo se sullo Spectrum si possa fare altrettanto... oppure se sia necessario fare tutto "a polling" (controllare continuamente tutte le periferiche per vedere chi è che va servito al momento).

alf









-- Email.it, the professional e-mail, gratis per te: http://www.email.it/f

Sponsor:
Telefona con Email.it Phone Card, tanti minuti di conversazione con il massimo 
del risparmio, clicca qui
Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=2687&d=2-2

Other related posts: