
|
[zxspectrum]
||
[Date Prev]
[02-2006 Date Index]
[Date Next]
||
[Thread Prev]
[02-2006 Thread Index]
[Thread Next]
[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
|

|