ZX Interface 1

Z Wikipedie, otevřené encyklopedie
ZX Interface I

ZX Interface I je interface k počítači Sinclair ZX Spectrum. Obsahuje sériový port, síť ZX Net a port pro připojení mechanik ZX Microdrive. Mechanik ZX Microdrive je možné připojit až osm, k vlastnímu ZX Interface I se připojuje pouze první mechanika, další se připojují prostřednictvím předcházející.

Interfacem ZX Interface I byly inspirovány disketový řadič Disciple k počítačům Sinclair ZX Spectrum a interface Interfața 1 k rumunským počítačům řady Ice Felix HC kompatibilním se ZX Spectrem.

Charakteristika zařízení

ZX Interface I má svoji vlastní paměť ROM, ve které jsou obsaženy obslužné programy všech zařízení ZX Interface I. V ROM je také obsažen analyzátor přidaných příkazů určených k ovládní zařízení z Basicu. Původně měly být příkazy pro ZX Interface I obsaženy v ROM ZX Spectra, ale počítač byl dán do prodeje před dokončením obslužných programů ZX Interface I. Záměrem bylo prodat pouze omezený počet nedokončených ZX Specter a následně vydat opravenou ROM, ovšem počítačů se prodalo mnohem více, než bylo očekáváno, takže plán s výměnou ROM byl nerealizovatelný, takže bylo zvoleno řešení s vlastní ROM v ZX Interface I, která se v případě potřeby připojila místo ROM počítače.[1]

ZX Interface I obsahuje průchozí sběrnici, takže je možné připojit i další zařízení, která se standardně připojují na sběrnici počítače ZX Spectrum. K počítačům ZX Spectrum +2A a +3 tento interface připojit nelze kvůli odlišnostem v rozložení signálů systémového konektoru těchto počítačů. Ze stejných důvodů může dojít ke zničení počítače po připojení zařízení k některým klonům počízače ZX Spectrum, např. k počítači Didaktik Gama.[2]

S pomocí programu ve strojovém kódu lze doplňkový interpret v ROM ZX Interface I rozšířit o další příkazy.[3][4]

Technické informace

Stránkování paměti

Paměť ROM ZX Interface I je připojena místo paměti ROM počítače při skoku na adresu 8 a na adresu 5896 (šestnáctkově 1708, adresa rutiny příkazu CLOSE #) v ROM ZX Spectra, odpojena je při skoku na adresu 1792 (šestnáctkově 700).[5]

Používané porty

ZX Interface I obsazuje porty procesoru 231 (šestnáctkově E7), 239 (šestnáctkově EF) a 247 (šestnáctkově F7).[6]

desítkově šestnáctkově dekódování význam
231 E7 xxx00xxx data ZX Microdrive
239 EF xxx01xxx ovládání ZX Microdrive, RS-232, ZX Net
247 F7 xxx10xxx data RS-232, ZX Net

Při operacích s portem 231/E7 dojde k zastavení procesoru počítače, dokud není zpracováno všech osm bitů dat.[7] Proto, pokud je prováděno čtení z tohoto portu bez spuštěného motoru ZX Microdrive, činnost počítače se zastaví a je nutný reset. Tento stav je známý pod anglickým pojmem in 0 crash.

Význam jednotlivých bitů hodnoty odeslané na port 239 a čtené z tohoto portu je následující:

7 6 5 4 3 2 1 0
čtení       busy RS-232
DTR
Microdrive
GAP
Microdrive
Sync
Microdrive
cartridge je pouze pro čtení
zápis     ZX Net
Wait
RS-232
CTS
Microdrive
mazání
Microdrive
čtení/zápis
Microdrive
časování
Microdrive
výběr aktivní jednotky
současně určuje, zda data posílaná na port 247 budou odeslána přes RS-232 nebo přes ZX Net

Význam jednotlivých bitů hodnoty odeslané na port 247 a čtené z tohoto portu je následující:

7 6 5 4 3 2 1 0
čtení RS-232
TxD
            ZX Net
přijímaná data
zápis               ZX Net:odesílaná data
RS-232:RxD

Reference

  1. Sinclair BASIC History na scratchpad.wikia.com
  2. Ještě jednou Didaktik Gama. Mikrobáze. 1989, čís. 2. Dostupné online. 
  3. Extending BASIC. Your Spectrum. May 1984, čís. 3. Dostupné online. ((anglicky)) 
  4. LOGAN, Ian. Spectrum Microdrive Book. [s.l.]: Melbourne House, 1983. Dostupné online. ISBN 0-86161-127-6, ISBN 0-86759-128-5. Kapitola Adding New Statements, s. 91-104. ((anglicky)) 
  5. Spectrum Interface 1 (Microdrive, Network, RS232) na emubase.de
  6. 16K/48K ZX Spectrum Reference - comp.sys.sinclair FAQ na World of Spectrum
  7. Spectrum FAQ - 48K Technical Information na tjornov.dk

Externí odkazy