Komputery z Z80 > ZX81

ZX81 - tryby SLOW/FAST

(1/1)

Klaud:
Wczorajsza dyskusja o ZX81 i jego trybie SLOW/FAST kontra synchro na ekranie i obraz wczytywania z taśmy wymaga kilku wyjaśnień.

ZX81 FAST/SLOW

ZX81 ma dwa tryby pracy:

* SLOW (compute & display) - domyślny dla BASICa i w nim komputer znajduje się początkowym teście pamięci i wyrzuceniu na ekran znaku zachęty "K"
* FAST (compute then display) - komputer startuje w tym trybie, robi w nim test pamięci (tylko w zakresie 16K-32K) i można go wywołać przez komendę BASICa "FAST"
Ponad to tryb FAST jest trybem odziedziczonym z ZX80, któty tylko w taki tryb miał w swojej pierwotnej postaci, z ROMem 4K i bez generatora /NMI (przerwań niemaskowanych).

Komenda FAST wyłącza generator /NMI (https://www.tablix.org/~avian/spectrum/rom/zx81.htm#L0207), zapewnia zgodność ze starszym bratem, ale także przywołuje wszystkie mankamenty generowania obrazu znane z ZX80. W skrócie obraz nie jest odświeżany do momentu zakończenia programu.

W trybie "SLOW" generator /NMI działa i obraz jest normalnie odświeżany tj. 50x sekundę.

Na filmiku prosty programik pokazujący jak wygląda generowanie obrazu w trybie FAST i SLOW. W przypadku trybu FAST, grabber nie dostawał sygnałów synchronizacji i wyłączył wejście, dlatego jest tam "zielona" wstawka. ZX81 FAST - SLOW

Różnica szybkości działania komputera w obu trybach jest znacząca i wyniki można zobaczyć tu: Benchmark ZX81

Wczytywanie z taśmy:

Utrata synchronizacji obrazu na wyjściu wideo nie ma nic wspólnego z trybami SLOW/FAST. W tym przypadku "szmaty na ekranie" są wynikiem uproszczeń konstrukcyjnych ZX81. ULA ZX81 (dowolna) ma 40 nóżek, konstruktorzy nóżkę nr 16 ULA wykorzystali do:

* wyprowadzenia obrazu
* wejścia sygnału audio - komenda "LOAD"
* wyjścia sygnału audo - komenda "SAVE"
w przypadku we/wy sygnału audio, to I/O nie może być wykorzystane do wysłania poprawnego obrazu na TV.

Na początku po wydaniu komendy LOAD "", ekran będzie biały bez kursora a kiedy pojawi się sygnał wejściowy ekranie lecą śmieci lub nic nie pojawi się, w zależności jak tolerancyjny jest odbiornik. Na filmie z grabbera można zobaczyć początek oraz po wydaniu komendy "LOAD"i wczytywania programu. ZX81 LOAD

Dla programistów
Potrzebujecie więcej mocy kosztem generowania obrazu, tryb FAST.
Nie jestem programistą, ale z tego co zrozumiałem, wyłączenie generatora /NMI (tryb FAST) daje Wam dostęp do większej ilości rejestrów Z80, więc tryb FAST, ale na ekranie zobaczycie najprwadopodobiey czarny ekran (zależności o podpiętego TV).

Maryjan:
Ciekawe.
Nigdy w to nie wnikałem, ale by zrozumieć pewne mechanizmy rządzące ZX81 warto w ten temat było wniknąć.
Nia ma się co dziwić, że w ZX81 zachowano kompatybilność wsteczną. W jakimś tam procencie zapewne.

Klaud:
Każde ZX80 można przerobić na ZX81, a wymagane są do tego dwie rzeczy:
1. ROM z rozszerzonym BASICiem (w sumie jest to ROM z ZX81), który jest w układzie 8KB.  Sinclair nawet oferował taki "upgrade".
2. generator /NMI.

Po "upgradzie" nie ma różnic między ZX80 a ZX81, poza tym, że ZX80 jest na układach dyskretnych a ZX81 ma całą logikę w układzie o dużej stali integracji (ULA).

Aha, jeszcze dwa słowa wyjaśnienia w sprawie utraty synchro przy wczytywaniu/zapisywaniu programów. Ta operacja musi być ciągła, a nie wykonywana w przerwach między generowaniem ramek. Albo wczytujemy/zapisujemy, albo generujemy obraz i Z80 karmiony jest NOP-ami.

Owszem, na ZX80 można napisać program, który nie będzie "migał" ekranem, ale z wykonywaniem programu trzeba wstrzelić się w okresy kiedy procesor nie generuje obrazu. W ZX80 nawet odczyt klawiatury powoduje "miganie", jak na tak prostą maszynę z 1KB RAM, bez dedykowanego układu graficznego, to i tak osiągnięto wiele.

damik:

--- Cytat: Klaud w 2020.04.05, 13:25:47 ---Po "upgradzie" nie ma różnic między ZX80 a ZX81, poza tym, że ZX80 jest na układach dyskretnych a ZX81 ma całą logikę w układzie o dużej stali integracji (ULA).

--- Koniec cytatu ---

Jest jedna różnica - to nieco inny układ klawiatury, ale to można załatwić naklejką lub wydrukowaną kartką papieru nakładaną na klawiaturę ZX80   ;)

Klaud:
Nowa naklejka klawiatury jest potrzebna do ZX80 przy zmianie ROMu na 8K. Rożnice są pomiędzy "starym" a 'nowym" ROMem do ZX80. Układ klawiatury z "nowym" ROMem jest taki sam, jak w ZX81.

Nawigacja

[0] Indeks wiadomości

Idź do wersji pełnej