MULTIX od środka: Różnice pomiędzy wersjami

Przejdź do nawigacji Przejdź do wyszukiwania
 
(Nie pokazano 4 pośrednich wersji utworzonych przez tego samego użytkownika)
Linia 317: Linia 317:


Maksymalna długość transmisji wynosi 16 sektorów (z punktu widzenia MERY? czy z punktu widzenia zadania mx?). Linie z Winchesterem nie obsługują polecenia "przerwij transmisję".
Maksymalna długość transmisji wynosi 16 sektorów (z punktu widzenia MERY? czy z punktu widzenia zadania mx?). Linie z Winchesterem nie obsługują polecenia "przerwij transmisję".
=== Sektory zapasowe ===
Producenci dysków winchester dopuszczali zazwyczaj występowanie na powierzchni dysku
kilkudziesięciu uszkodzonych sektorów. Wyjątkiem był pierwszy cylinder, który
musiał być wolny od błędów. Fakt ten został przez Amepol wykorzystany do
podniesienia niezawodności dysków winchester pracujących w MULTX-ie.
Cały pierwszy cylinder zarezerwowany jest na kopie uszkodzonych sektorów
i jest dla użytkownika niedostępny. Dwa pierwsze sektory zajęte są przez
tablicę numerów uszkodzonych sektorów (pierwszy sektor) i jej wierną kopię (drugi
sektor). Przy czterech głowicach i 16 sektorach na ścieżkę daje to możliwość zrelokowania do 62 sektorów.
Tablica numerów sektorów ma również 62 pozycje. W zależności od wersji MULTIX-a mają one długość 2 lub 3 bajtów. Każda z nich wskazuje, jaki
sektor (o jakim numerze logicznym) został przeniesiony na daną pozycję obszaru
zapasowego.
Jeśli podczas operacji czytania sektora z dysku wystąpił jeden z warunków:
* pole adresowe sektora nie zostało odnalezione
* sektor oznaczony jest jako uszkodzony
to następuje próba odnalezienia danego sektora w obszarze zapasowym.
Jeśli sektor zostanie znaleziony, to jest stamtąd odczytywany i błąd odczytu nie występuje.
Jeśli sektor nie zostanie odnaleziony, to sygnalizowany jest błąd.
Przenoszenie uszkodzonych sektorów do obszaru zapasowego nie jest wykonywane
automatycznie przez MULTIX-a. Odbywa się za
pomocą polecenia formatowania ścieżki z przeniesieniem uszkodzonych sektorów.


== Floppy ==
== Floppy ==
Linia 682: Linia 709:
== Status linii ==
== Status linii ==


Polecenie liniowe "podaj status" zwraca status linii opisany strukturą STATL. Dokumentacja opisuje znaczenie tylko niektórych jej bitów, poniżej kompletny opis dwóch bajtów składających się na status, oraz trzeciego - nie dostępnego dla programisty.
Polecenie liniowe "podaj status" zwraca status linii opisany strukturą STATL. Dokumentacja opisuje znaczenie tylko niektórych jej bitów, poniżej kompletny opis dwóch bajtów składających się na status. Numeracja bitów MERY-400 (0=MSB, 15=LSB). W słowie statusu jest jeszcze trzeci bajt, niedostępny dla programisty, opisujący status USART-a.


{| class="wikitable"
{| class="wikitable"
! Bajt !! Bit !! Opis
! Bit !! Opis
|-
| rowspan=8 | +0 || 0 || Linia dołączona
|-
|-
| 1 || Aktywna transmisja
| 0 || 0
|-
|-
| 2 || -
| 1 || Nadawanie ostatniego fragmentu
|-
|-
| 3 || -
| 2 || Nadawanie zawieszone przez XOFF
|-
|-
| 4 || Zadanie zawieszone przez XOFF
| 3 || Zadanie zawieszone przez XOFF
|-
|-
| 5 || Nadawanie zawieszone przez XOFF
| 4 || -
|-
|-
| 6 || Nadawanie ostatniego fragmentu
| 5 || -
|-
|-
| 7 || 0
| 6 || Aktywna transmisja
|-
|-
| rowspan=8 | +1 || 0 || Nadawanie rozpoczęte
| 7 || Linia dołączona
|-
|-
| 1 || Nadawanie w toku
| 8 || OPRQ
|-
|-
| 2 || Odbiór rozpoczęty
| 9 || Błąd parzystości
|-
|-
| 3 || Odbiór w toku
| 10 || Odebrano znak kończący
|-
|-
| 4 || Stop po CAN (protokół 5)
| 11 || Stop po CAN (protokół 5)
|-
|-
| 5 || Odebrano znak kończący
| 12 || Odbiór w toku
|-
|-
| 6 || Błąd parzystości
| 13 || Odbiór rozpoczęty
|-
|-
| 7 || OPRQ
| 14 || Nadawanie w toku
|-
|-
| +2 || 0-7 || Status USART-a
| 15 || Nadawanie rozpoczęte
|}
|}

Menu nawigacyjne