![]() | ![]() |
ZX Spectrum w podstawowej wersji, mam tu na myśli modele 16k, 48k i PLUS, mają bardzo skromne możliwości komunikacji z urządzeniami peryferyjnymi. Właściwie do komputera można podłączyć bezpośrednio tylko telewizor i magnetofon, oraz specjalną dla ZX Spectrum drukarkę o nazwie ZX Printer (lub odpowiednik firmy Seikosha). Do nauki podstaw Basica lub do prostych gier jest to wystarczające, ale z czasem użytkownicy stawiają większe wymagania. Oknem na świat ZX Spectrum jest szyna krawędziowa, czyli złącze, na które zostały wyprowadzone najważniejsze sygnały elektryczne z wnętrza maszyny. Dzięki niemu można do komputera podłączyć wszystko, pod warunkiem, że posiadamy odpowiedni układ sprzęgający. Najpopularniejszym z nich jest bez wątpienia interface do joysticka, generator dźwięku, interface stacji dysków itp. Jest wiele gotowych układów, ale z pewnych względów warto umieć zbudować własny. Choćby dlatego, że dzisiaj niektóre układny są trudne do zdobycia lub dlatego, że np. do sterowania prostym ramieniem robota warto zbudować układ ściśle do niego dostosowany.
Jak budować układy? Na pewno trzeba mieć pewną wprawę w lutowaniu i znać podstawy elektroniki (cyfrowej). Generalnie rzecz biorąc, najprostrze układy składają się z dekodera adresu (pod którym będziesz komunikować się z interfacem komendami IN i OUT) i bufora z wejściami trójstanowymi, który będzie się włączał tylko wtedy, gdy na szynie adresowej zostanie zdekodowany odpowiedni adres oraz pojawi się żądanie zapisu/odczytu z przestrzeni wejścia/wyjścia. Na tej zasadzie działa np. interface joysticka "Kempston". Generalnie wszystkie układy pośredniczące np. łącze szeregowe, łącze równoległe, układy pomiarowe, generatory, z którymi użytkownik ma się komunikować poprzez port I/O zawierają w sobie tą część elektroniczną, którą można zrealizować za pomocą kilku układów scalonych. Nieco inaczej buduje się układy zawierające (lub podmieniające) pamięć ROM lub RAM. Do najprostszych jednak należą "układy" RESET (jeden przełącznik astabilny) i złącze monitora. Nie wymagają żadnych dekoderów, skomplikowanych płytek itp. Przy konstruowaniu przystawek zasilanych z komputera (bez własnego zasilacza) warto stosować układy o zmniejszonym poborze mocy np. z serii 74LS... albo układy wykonane w technologii MOS. Początkującym polecam serię układów TTL 74LS..., gdyż są one bardziej odporne na ładunki elektrostatyczne. Należy przy tym pamiętać, że przetwornica napięcia zastosowana w ZX Spectrum 16/48/+ jest delikatnym elementem, więc warto zastanowić się, czy nie byłoby lepiej wyposażyć budowany układ we własny zasilacz. Jeszcze jedna uwaga, do złącza krawędziowego można podłączać płytki za pomacą gniazda ISA BUS (z jakiegoś starego XT-ka) przyciętego na odpowiedną długość.
Informacje o sygnałach dostępnych na szynie krawędziowej są niezbędne do zbudowania jakiegokolwiek interface'u. Poniżej opisałem szynę komputera ZX Spectrum 16kB, 48kB i PLUS. Użytkownicy modeli 128k (+2 i +3) muszą upewnić się, czy przypadkiem ich komputery nie mają inaczej wyprowadzonych sygnałów (brakuje mi pełnej informacji na ten temat).
__________________________________________________________________________________
|28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1| B
|== == == == == == == == == == == == == == == == == == == == == == == | == == == ==| GÓRA
|-------------------------------------------------------------------- | -----------|
|== == == == == == == == == == == == == == == == == == == == == == == | == == == ==| DÓŁ
|__________________________________________________________________________________| A
Widok tylnej ścianki komputera (złącze) przedstawia rysunek (?) powyżej. W tabelce (na dole) są opisane poszczególne wyprowadzenia:
Nr | Góra (B) | Dół (A) |
---|---|---|
28 | wolne | A11 |
27 | A10 | A9 |
26 | A8 | BUSACK* |
25 | RFSH* | ROMCS* |
24 | M1* | A4 |
23 | -12V | A5 |
22 | +12V | A6 |
21 | WAIT* | A7 |
20 | -5V | RESET* |
19 | WR* | BUSRQ* |
18 | RD* | U |
17 | IORQ* | V |
16 | MREQ* | Y |
15 | HALT* | VIDEO |
14 | NMI* | 0V |
13 | INT* | IORQE* |
12 | D4 | A3 |
11 | D3 | A2 |
10 | D5 | A1 |
9 | D6 | A0 |
8 | D2 | CK |
7 | D1 | 0V |
6 | D0 | 0V |
5 | szczelina | szczelina |
4 | wolne | +9V |
3 | D7 | +5V |
2 | A13 | A12 |
1 | A15 | A14 |