Synchromesh

From Atariki

Jump to: navigation, search

Spis treści

Charakterystyka ogólna

Sterownik szybkiej transmisji, powstały w firmie Indus Systems i będący częścią specjalnej wersji DOS-a XL (2.35I1, później 2.35I2) dołączanej do stacji Indus GT, a później także do LDW Super 2000 i CA-2001. Z istnienia Synchromesha potrafi również skorzystać SpartaDOS X.

Synchromesh wykorzystuje fakt, że wymienione stacje dysków są programowalne. Do stacji przesyłany jest kod, który instaluje się w niej rezydentnie i przejmuje obsługę protokołu przyspieszonej transmisji, 38,4 kbps. Stacja pozostaje zaprogramowana aż do wyłączenia zasilania.

Z powodu różnic konstrukcyjnych pomiędzy stacjami LDW/Indus i CA oraz z powodu różnych wersji ich wewnętrznego oprogramowania, Synchromesh występuje w paru odmianach; z tego użytkownik może rozróżnić dwie, jedną dla LDW i Indusa, drugą dla CA.

Niektóre wersje Synchromesha w połączeniu z programami narzędziowymi DOS-u XL oprócz samej przyspieszonej transmisji oferują też parę dodatkowych możliwości, m.in. można formatować pojedyncze ścieżki na dyskietce, każdą z innym przeplotem itp.

SuperSynchromesh

Istnieje jeszcze jedna wersja programu, zwana SuperSynchromesh, dająca 68,2 kbps. Do jego użycia konieczne jest zastosowanie DOS XL 2.35I2 i sterownika SuperSynchromesh (normalnie dostarczany przez producenta DOS XL 2.35I1 z programem Synchromesh zapewnia tylko 38,4 kbps). Sterownik w tej wersji działa na stacjach Indus GT i LDW Super 2000.

W stacjach z zainstalowanym rozszerzeniem RAM Charger SuperSynchromesh aktywuje buforowanie ścieżek.

Odpowiednikiem SuperSynchromesha jest znajdujący się na wyposażeniu SpartaDOS X sterownik INDUS.SYS, który instaluje szybką transmisję także w stacji CA-2001.

Protokół transmisji

Od programu bierze się umowna nazwa programowanego w ten sposób systemu turbo, który różni się od innych zastosowanym protokołem transmisji. Protokół ten zna też stacja XF551, acz w jej wypadku zastosowanie samego programu Synchromesh jest zbędne - stacja zna odpowiednie procedury sama z siebie.

Synchromesh

Dla zasygnalizowania stacji, że komputer żąda pracy w turbo, przy prędkości 38400 bps używany jest inny protokół transmisji będący - oczywiście - zmodyfikowaną wersją standardowego (patrz SIO).

Blok komendy (Command Frame) dla stacji, tak samo jak w standardzie, wysyłany jest z prędkością 19200 bps. Jednakże drugi bajt tego bloku, zawierający wartość bajtu DCMND bloku DCB, jest zwiększony o 128 (ORA #$80). Po wysłaniu komendy komputer, identycznie jak w standardzie, czeka - cały czas mając układ POKEY zaprogramowany na 19200 bps - na potwierdzenie jej przyjęcia. Negatywna odpowiedź urządzenia na taką komendę oznacza, że nie zna ono tego protokołu transmisji i nie może pracować w turbo zgodnym z XF-551.

Odpowiedź pozytywna ('A') jest sygnałem do przeprogramowania układu POKEY na większą prędkość. Komputer wstawia do licznika AUDF3/4 wartość $10; analogicznej operacji ze swojej strony dokonuje stacja dysków. Dalsza wymiana danych wywołana przez tę jedną komendę odbywa się w przyspieszonej transmisji. Po wykonaniu komendy następuje powrót do prędkości standardowej.

Ogólnie schemat wymiany danych przy odczycie jest następujący:

  • prędkość 19200 bps
  • komputer --> komenda 4 B + CRC --> urządzenie
  • komputer <-- potwierdzenie 'A' <-- urządzenie
  • przełączenie na 38400 bps
  • wykonanie
  • komputer <-- potwierdzenie 'C' <-- urządzenie
  • komputer <-- blok danych + CRC <-- urządzenie
  • przełączenie na 19200 bps
  • koniec.

Natomiast zapis wygląda tak:

  • prędkość 19200 bps
  • komputer --> komenda 4 B + CRC --> urządzenie
  • komputer <-- potwierdzenie 'A' <-- urządzenie
  • przełączenie na 38400 bps
  • komputer --> blok danych + CRC --> urządzenie
  • komputer <-- potwierdzenie 'A' <-- urządzenie
  • wykonanie
  • komputer <-- potwierdzenie 'C' <-- urządzenie
  • przełączenie na 19200 bps
  • koniec

Budzącym zakłopotanie niedopatrzeniem jest w tym wszystkim niemożność odpytania stacji na okoliczność wartości, jaką ma mieć licznik POKEYa w czasie przyspieszonej transmisji. Dodatkowym kłopotem jest to, że stację trzeba specjalnie zaprogramować, żeby w ogóle działała w turbo. XF-551 jest tej ostatniej wady na szczęście pozbawiona.

SuperSynchromesh

Protokół jest identyczny z tym opisanym powyżej. Jedyną różnicą jest szybkość transmisji: wynosi ona 68,2 kbps (wartość licznika POKEYa - $06).

Ogólnie schemat wymiany danych i pozostałe uwagi wyglądają tak samo jak powyżej (z tym wyjątkiem, że z tą szybkością nie działa XF551).

Personal tools