Port 255
Port 255, při použití šestnáctkové soustavy port FF, je port procesoru Z80 používaný v počítačích Sinclair ZX80 a Sinclair ZX81. U těchto počítačů je použit pro ukončení vertikálního pohybu paprsku.[1]
Oficiálně není port 255 využíván u počítačů Sinclair ZX Spectrum, ovšem u těchto počítačů lze díky nedokonalému zapojení na tomto portu číst hodnotu právě vykreslované barvy obrazovky, případně to, že je vykreslován okraj obrazu (border). Přestože se jedná o nedokumentovanou vlastnost těchto počítačů, je port 255 využíván některými hrami k synchronizaci obrazu (např. hry Arkanoid, Cobra). U počítačů Sinclair ZX Spectrum +2A/+3 a u českých počítačů Didaktik M a Didaktik Kompakt je toto chování portu 255 opraveno, díky čemuž ale hry, které port 255 používají, na těchto počítačích nefungují.[2][3] U počítačů, u kterých port 255 nefunguje jako u původního ZX Spectra, je možné jeho funkci umožnit pomocí GMX.[4] Hodnoty čtené na tomto portu odpovídahjí tomu, jak jsou atributy obrazu uloženy v paměti ZX Spectra, tj. bit 7 - blikání, bit 6 - jas, bity 5 až 3 - barva pozadí, bity 2 až 0 - barva písma.[5] Pokud se paprsek nachází v borderu, na portu 255 je možné číst hodnotu 255, což odpovídá kombinaci atributů bílé pozadí, bílé písmo, vyšší jas a zapnuté blikání.[2]
Port 255 je využit u počítačů Timex Sinclair 2068 a počítačů z něj odvozených k nastavení barevného režimu.
Protože u ZX Spectra je port 255 ve vlastním počítači oficiálně nepoužit, používají ho pro svoji činnost některé periférie. Beta Disk Interface používá port 255 k výběru aktivní mechaniky. Rozšíření paměti podle Trollera používá port 255 ke stránkování paměti.[6]
Využití jednotlivých bitů portu
počítač | význam | ||||||||
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | ||
Timex Sinclair 2068, Timex Computer 2068, Timex Computer 2048 | zápis | určuje, zda se pomocí portu 244 bude přistránkovávat DOCK nebo EX-ROM | zákaz generování přerušení | barvy při režimu vyššího rozlišení | nastavení grafického režimu | ||||
Beta Disk Interface | čtení | INTRQ (command completed) | DRQ (data request) | ||||||
zápis | modulace | výběr strany diskety | /HLT řadiče (v normálním stavu = 1) | /RESET řadiče | výběr mechaniky | ||||
rozšíření paměti podle Trollera | zápis | kdykoliv, kdy je proveden zápis na port, dojde buď k přestránkování na RAM od 0000 nebo k přestránkování na ROM + RAM | |||||||
interface ZON X | zápis | výběr registru hudebního čipu AY-3-8912[7] | |||||||
SAM Coupé | čtení | hodnota právě vykreslovaného atributu | |||||||
zápis | data hudebního čipu Philips SAA 1099 |
Reference
- ZX80/ZX81 I/O Ports Archivováno 14. 3. 2013 na Wayback Machine na emubase.de
- The IN #FF port na secarica.ro
- Порт FF (rusky) na SpeccyWiki
- +Gama. GMX - Graphics Memory eXpander. ZX Magazín. 1999, čís. 4/98-1/99, s. 10–11.
- Устройство ZX-Spectrum (rusky) na wikiznanie.ru
- Žabenský, P. ROM, RAM, EPROM, PROM, ... - Hrátky s pamětí a něco už skoro zapomenutého. ZX Magazín. Čís. 1/96, s. 28–29. ISSN 1210-4833.
- Spectrum Sound PSG (Programmable Sound Generator) Archivováno 14. 3. 2013 na Wayback Machine na emubase.de
Literatura
- Шепелев, Г. "Секретный" порт Спектрума. Радиолюбитель. Čís. 1/94. (rusky)