Znalazłem w jednym z magazynów Universal Interface podłączany przez DMA. Są schematy, niestety nie ma wsadów do GALi.
Do poczytania jednak może być :)
tłumaczenie trochę kanciaste :)
Atari ST wyposażony jest standardowo w wiele interfejsów wystarczających dla drukarek, modemów czy systemów MIDI. Dodatkowo posiada port ROM i magistralę DMA. Przedstawiamy MAUDE, uniwersalny wzmacniacz DMA mc-Atari i pokazujemy, jak podłączyć dysk twardy komputera.
Obecnie dostępnych jest wiele rozwiązań zewnętrznych producentów umożliwiających podłączenie urządzeń peryferyjnych innych niż oryginalne (np. poprzez prosty port I/O). Jednak większość z nich całkowicie zajmuje jeden z istniejących interfejsów i często nie pozwala już na użycie odpowiedniego portu. Alternatywa systemu magistralnego wymaga (z wyjątkiem modeli MegaST) ingerencji w komputer, co nie jest dla każdego.
Ponadto nie jesteś odporny na zmiany w komputerze dokonane przez Atari. Na przykład, jeśli odkręcisz Atari 1040 ST zakupiony w 1988 roku, znajdziesz płytę główną, która została całkowicie zmieniona w porównaniu do poprzednich modeli, i prawie nie ma już miejsca nad procesorem, aby „podłączyć się” do magistrali systemowej. Jest miejsce na blitter; ale to małe pocieszenie.
Podstawowe pomysły
Magistrala DMA stanowi jedyną (choć nie najłatwiejszą) alternatywę podłączenia urządzeń peryferyjnych do Atari ST bez wspomnianych wyżej wad. Aby to zrobić, odpowiedni interfejs musi być zgodny z protokołem ACSI (Atari Computer System Interface) w takim stopniu, aby możliwe było adresowanie kilku różnych urządzeń na magistrali DMA. Kto chce blokować połączenie z drukarką laserową?
Interfejs przedstawiony tutaj zapewnia interfejs pomiędzy Atari ST DMABus i łatwiejszą w obsłudze magistralą I/O.
Interfejs został właściwie opracowany w celu opracowania kompletnego interfejsu magistrali SCSI ze sterownikiem NCR 5380 (SCSI = Small Computer System Interface).
Marzyłem o dyskach optycznych, CD-ROM-ach, gigantycznych dyskach twardych itp. W rezultacie powstała część 1 (dekoder magistrali, rejestr adresowy, sterowanie magistralą we/wy) interfejsu, zaimplementowana z dwoma GAL i transceiverem magistrali (GAL1, GAL2 ALS245).
Ponieważ chcesz załadować cały system Atari ST z dysku twardego, a zbudowanie systemu kompatybilnego z ACSI z kontrolerem NCR bez ograniczeń jest zbyt skomplikowane, bootowanie ROM (część 2 projektu) zostało opracowane w tym samym czasie, co część 1 (GAL3, GAL4, GAL5, EPROM).
Dysk twardy OMTI na Atari ST
Po przetestowaniu części 1 i 2 (bez kontrolera NCR) chęć podłączenia dysku twardego stała się coraz silniejsza, więc po prostu dostosowałem sygnały do IBM PC/XTBus (część 3, GAL 6) i podłączyłem dysk twardy OMTI sterownik napędu.
Niestety podczas testów okazało się, że bootowanie ROMu zadziałało tylko wtedy, gdy procesor w Atari ST miał dostęp tylko do obszaru RAM.
Powodem tego była zbyt wysoka szybkość transferu rozruchu ROM (2 MB/s).
Niestety, kontroler DMA Atari ST przestaje działać, gdy procesor uzyskuje dostęp do obszaru ROM i opuszcza określoną siatkę taktowania RAM.
Ten problem został rozwiązany za pomocą monoflopu, który zmniejsza szybkość przesyłania danych podczas rozruchu ROM. Do kompletnego interfejsu brakowało jedynie wyjścia DMA do podłączenia dodatkowych urządzeń do magistrali DMA (część 4, także GAL6 i ALS245).
Swoją drogą, mimo marzeń wszystkich, do dziś nie zbudowano interfejsu magistrali SCSI.
Jednak wiele pracy włożono w ten interfejs i połączenie IEEE-488. Gdy tylko te projekty otrząsną się z początkowych problemów, zaprezentujemy je w mc.
Jak już stało się jasne, interfejs (rysunek 1) jest praktycznie w całości zbudowany z GAL (GAL = Generic Array Logic).
Aby lepiej zrozumieć obwód, należy poznać kilka podstawowych właściwości GAL. Opis tych bardzo uniwersalnych i elastycznych elementów konstrukcyjnych można znaleźć w artykule Thomasa Schlengera-Klinka w mc, wydanie 1/88 ze strony 66, więc mogę to tutaj streścić.
GAL 20V8 lub 16V8 ma osiem programowalnych komórek wyjściowych i odpowiednio do 20 lub 16 wejść. Każde z wyjść może służyć jako wejście, rejestr lub normalne wyjście. Do jednego wyjścia przypisanych jest na stałe osiem linii produktowych programowalnej matrycy logicznej.
Wyrażenie logiczne może zatem zawierać maksymalnie osiem terminów (tj. osiem operacji OR operacji AND).
W przypadku korzystania z wyjść TriState (z wyjątkiem rejestrów) jedna z linii produktów służy do sterowania sygnałem włączającym.
Wszystkie rejestry w bloku mają wspólny zegar i wspólny sygnał włączający wyjście.
Te dwa sygnały można sterować tylko z zewnątrz za pomocą pinu (1, 13 lub 11).
Nie ma również możliwości asynchronicznego resetowania rejestru (bez resetowania).
Uniwersalny interfejs, część 1
Serce obwodu (część 1) składa się z dwóch GALi, 20V8 (GAL1) i 16V8 (GAL2).
GAL1 służy do generowania sygnałów sterujących, dekodowania adresu urządzenia DMA oraz jako kontroler przerwań. GAL2 zawiera 5-bitowy rejestr podadresów i rejestr kontrolny. Zegar rejestru (CLK1) wymagany dla obu GAL jest generowany w GALI z sygnałów /SEL i /RESET Atari ST. Opis nazw sygnałów zamieszczono w Tabeli I (magistrala Atari STDMA) i Tabeli 2 (Sygnały sterujące interfejsem).
Aby odróżnić reset od normalnego dostępu (można stosować tylko górne zbocze), potrzeba czegoś w rodzaju „pamięci krótkotrwałej”.
Jest to realizowane za pomocą kondensatora, rezystora i diody Schottky'ego, aby opóźnić górne zbocze sygnału /RESET.
Dioda Schottky'ego uniezależnia stałą czasową od obciążenia sygnału /RESET z innych urządzeń na magistrali DMA Atari ST.
Dodatnie zbocze sygnału generowanego w ten sposób (/DRESET) jest w rzeczywistości zbyt wolne, aby można je było wykorzystać jako sygnał wejściowy dla GAL, ponieważ zgodnie z arkuszem danych GAL wymagają czasu narastania mniejszego niż 5 ns (z mojego doświadczenia wynika, że to poważna sprawa).
W tym przypadku nie stanowi to problemu, ponieważ /DRESET jest używane tylko razem z rejestrami taktowanymi za pomocą CLKI. Liczy się tylko posiadanie określonego niskiego lub wysokiego poziomu w momencie impulsu zegarowego.
Protokół ACSI
W przypadku protokołu ACSI urządzenie jest wybierane poprzez wydanie bajtu polecenia z linią adresową A1 na niskim poziomie. Parametry są zawsze zapisywane lub odczytywane, gdy A1 ma wysoki poziom. Bajt polecenia zawiera adres urządzenia w trzech górnych bitach i polecenie w pięciu dolnych bitach (zazwyczaj
polecenie magistrali SCSI klasy 0).
Zgodnie z protokołem ACSI przesyłanych jest następnie pięć bajtów parametrów (Al = high), następnie następuje transmisja danych przez DMA i na koniec odczytywany jest bajt stanu (również przy A1 = high).
Przesyłanie bajtu parametru i bajtu stanu żądane jest za pomocą przerwania.
Prezentowany tutaj interfejs odpowiada protokołowi ACSI jedynie w zakresie bajtu poleceń, ale to powinno w zupełności wystarczyć do kompatybilności z innymi urządzeniami.
Nawet jeśli oprogramowanie zapyta inne urządzenie o wszystkie osiem adresów urządzeń za pomocą polecenia ACSI, nie spowoduje to żadnych uszkodzeń, ponieważ przerwanie żądające bajtów parametrów nie występuje w przypadku tego interfejsu.
Jeśli bajt polecenia jest wysyłany na magistralę DMA, trzy górne bity (adres urządzenia) są porównywane przez GALI z adresem, który można ustawić za pomocą przełączników DIP, a pięć dolnych bitów (właściwie polecenie) jest przechowywanych jako podadres w GAL2 .
Jeśli adres urządzenia odpowiada ustawionemu adresowi, rejestr zezwolenia jest ustawiany w GAL1, w przeciwnym razie jest usuwany.
Z ośmiu adresów urządzeń tylko siedem może zostać użytych ze względu na ograniczenia GAL. Można jednak uczynić cnotę konieczności i użyć ósmego adresu, aby całkowicie uniemożliwić dostęp do interfejsu.
W tym celu czwarty przełącznik DIP (rysunek 2) jest połączony szeregowo z trzema pozostałymi przełącznikami. Jeśli jest otwarty, ustawiony jest niedekodowany adres 0 i interfejs nie może zostać zaadresowany. W tym samym celu do wtyczki 3 można także podłączyć zewnętrzny przełącznik.
5-bitowy podadres, buforowane linie danych i sygnały sterujące (patrz tabela 2) zapewniają małą magistralę peryferyjną z przestrzenią adresową wynoszącą 32 bajty.
Jednakże adresy 8 i 9 na interfejsie są już zajęte. Adres 8 jest używany podczas rozruchu ROM, a adres 9 służy do zapisu 2-bitowego rejestru sterującego w GAL2.
Bit 0 tego rejestru jest dostępny jako DMAENAB (Tabela 3) na złączu urządzeń peryferyjnych. Nie znalazł jeszcze dalszego zastosowania.
Bit 1 umożliwia wyprowadzenie przerwania na magistralę DMA. Podczas RESETU oba bity są ustawiane na logiczne „1”, co oznacza, że dozwolone są przerwania. Pozwala to zapobiec przerwaniom na interfejsie niezależnie od podłączonych urządzeń peryferyjnych.
Przerwanie sterowania
Wejście przerwania na magistrali Atari DMA jest również wykorzystywane przez kontroler dyskietek, a przerwanie zewnętrzne mogłoby zakłócić dostęp do dyskietki. To, czy interfejs utworzył przerwanie (tzn. stan /INTIN), można sprawdzić poprzez dostęp do odczytu z A1 = 0. Jeśli /INTIN jest aktywne, otrzymasz 1 na bicie 7.
Linie na złączu urządzeń peryferyjnych ważne przy podłączaniu prostych urządzeń peryferyjnych (np. 8255) to SA0-SA4, D0-D7, R/W, /CLK2. CLK2 to sygnał trwający około 250 ns, który pojawia się przy każdym dostępie do interfejsu, jeśli A1 = 1 i interfejs został wcześniej wybrany.
Sygnały /IOW i /IOR są również przydatne, ponieważ łączą CLK2 z sygnałem R/W i mogą być podłączone bezpośrednio do pinów /WR lub /RD na przykład 8255. Oznacza to, że można podłączyć wiele wysoce zintegrowanych komponentów peryferyjnych, pod warunkiem, że mają one czas dostępu krótszy niż 200 ns.
Według arkusza danych są to na przykład 8255A-5, kontroler dyskietek WD1793 i kontroler magistrali IEC uPD 7210, żeby wymienić tylko najciekawsze.
Sposób konkretnego zaadresowania interfejsu można znaleźć w przykładowym programie na rysunku 3.
Ważne jest, aby nigdy nie zapomnieć uniemożliwić procedurze obsługi VBL dostęp do kontrolera dyskietek (flock, ustaw $43E na wartość inną niż 0).
W przeciwnym razie Twój program będzie czasami działał niepoprawnie i trudno będzie znaleźć przyczynę tego.
Rozruch ROM, część 2
Jeśli chcesz podłączyć system dysku twardego do komputera za pośrednictwem magistrali SCSI lub magistrali PC, chcesz także mieć możliwość uruchamiania systemu z dysku twardego.
Aby to zrobić, musisz zintegrować sterownik dysku twardego z systemem i móc pracować bez dysku rozruchowego. Koncepcyjnie nie można użyć przedstawionego tutaj interfejsu do zbudowania systemu dysku twardego kompatybilnego z dyskiem twardym Atari ST SH20S, chyba że włożysz trochę więcej wysiłku w użycie zewnętrznego mikroprocesora.
Kontroler dysku twardego magistrali PC ma prawie identyczny zestaw instrukcji jak dysk twardy AtariST, ale adresowanie tego dysku twardego odbywa się za pomocą sektorów, głowic i cylindrów, a nie bezwzględnego numeru bloku. Kiedy komputer się uruchamia, BIOS Atari ST próbuje odczytać sektor rozruchowy o długości 512 bajtów z każdego z ośmiu możliwych urządzeń DMA. W tym celu boot ROM tego interfejsu odpowiada na polecenie odczytu ACSI (odpowiada podadresowi 8) i przesyła 512 bajtów do komputera poprzez DMA.
Implementacja odbyła się z trzema GAL 16V8 (GAL3, GAL4, GAL5), Monofiopem 7415123 i oczywiście EPROMem (2764 - 27512).
Układy GAL zawierają 9-bitowy licznik bajtów (sektor lub blok ma 512 bajtów) i 7-bitowy rejestr adresowy bloku, co razem daje 16-bitowy adres EPROM.
Zawierają także logikę dla przerwań i żądań DMA, a także „maszynę stanu” z czterema stanami jako kontrolerem.
Jeśli komputer wyda polecenie odczytu ACSI (wyświetlane przez GAL1 przy DECODE i przez GAL2 przy DEV8), 9-bitowy licznik jest ustawiany na 0 i żądany jest bajt parametru poprzez przerwanie.
Dla każdego przesłanego bajtu parametru licznik jest zwiększany o 1, gdy licznik osiągnie 2 (trzeci bajt), bajt parametru jest ładowany do rejestru adresowego bloku, a gdy licznik osiągnie 4, przechodzi w stan przesyłania DMA, przy czym licznik ponownie ustawia się na 0.
Po przesłaniu 512 bajtów przez DMA licznik jest ponownie kasowany, rejestr adresowy bloku jest ustawiany na 1 i ponownie tworzone jest przerwanie. Następnie komputer odczytuje bajt stanu z adresu EPROM $200. Następnie rozruch ROM powraca do stanu początkowego.
Bajt stanu powinien mieć wartość 0, w przeciwnym razie blok odczytu zostanie odrzucony przez BIOS.
Rysunek 4 przedstawia program dla ROMBoot, który z kolei może czytać i uruchamiać inne programy z ROM. W aktualnej wersji procedury taki program musi być napisany specjalnie w tym celu.
Ponadto musi umożliwiać pełną relokację, ponieważ nie można z góry określić adresu załadunku.
Adres wywoławczy wynika z adresu początkowego powiększonego o cztery, tak aby przed nim można było dodać polecenie BRA.
Oznacza to, że do wywoływania z dyskietki i do wywoływania z bootowania z ROM-u wymagana jest tylko jedna wersja programu. Sam program startowy działa w 1024-bajtowym buforze dyskowym BIOS-u (jest tam ładowany przez BIOS), dlatego należy zachować ostrożność podczas wywoływania niektórych funkcji BIOS-u/XBIOS-u.
Jednakże w starszej wersji TOS (6.2.86) procedura odczytu dla DMABus zawiera mały błąd.
Pierwszy bajt parametru jest nadal wyprowadzany z A1 = 0, co oznacza
a) inne urządzenie może sprawiać wrażenie zaadresowanego i
b) w związku z tym interfejs się wylogowuje i ponownie dezaktywuje bootowanie ROM.
Aby to naprawić, musisz zmienić bajt $293 w ROM U7 z $88 $ na $8A (użyj EPROM 200ns). Błąd został poprawiony w TOS z dnia 27 kwietnia 1987 (Blitter-TOS).
Interfejs magistrali PC, część 3
Sygnały wymagane do podłączenia kart PC dostarczane są przez GAL6. Są to /IOR, /lOW, IBMRESET, wejście przerwania (aktywny wysoki) i wejście żądania DMA (aktywny wysoki). W przeciwnym razie wystarczy rozdzielić pięć dostępnych linii adresowych pomiędzy dziesięć linii A0...A10 magistrali PC.
Przynależna płyta magistrali PC z dwoma gniazdami łączy SA0...SA3 z A0...A3 i SA4 z A5, AB, A9.
Linie adresowe A4, A6, A7 są podłączone do masy. Oznacza to, że adresy we/wy $00...$0F i $320...$32F mogą być adresowane na magistrali PC.
Sygnały magistrali komputera PC IRO5, DRQ3 i DACK3 są również podłączone. To przypisanie jest oczywiście specjalnie dostosowane do wymagań kontrolerów dysków twardych, takich jak OMTI 5520A/B.
Kolejny ważny sygnał - AEN - jest solidnie podłączony do masy. Wysoki poziom na tej linii ma na celu zapobieganie dekodowaniu wejścia/wyjścia na interfejsie komputera PC podczas DMA. W przypadku większości kart niski poziom AEN nie powinien powodować żadnych problemów z transferem DMA, jeśli wybierzesz adres odpowiedniego portu danych (np. kontroler dysku twardego OMTI) lub nieużywany adres. Szczególnie nadaje się do tego adres rejestru sterującego interfejsu (9), który jest chroniony przed dostępem DMA.
Z napięć na magistrali PC (+5 V, -5 V, +12 V, -12 V) oprócz 5 V podłączone jest tylko +12 V (zawsze zgodnie z wymaganiami sterownika OMTI). Wszystkie karty PC, dla których można ustawić adres we/wy i które nie wymagają dodatkowych sygnałów, można podłączyć bezpośrednio.
Dotyczy to na przykład przetwornika A/D prezentowanego w mc, wydanie 3/88. Warunkiem jest jednak to, aby odpowiednia karta była wystarczająco szybka, ponieważ nie ma możliwości spowolnienia dostępu do magistrali DMA Atari ST. W przeciwieństwie do tego, nawet najszybszy terminal AT jest spowolniony, jeśli chodzi o dostęp do wejść/wyjść. Jeśli masz wątpliwości, po prostu wypróbuj lub zapoznaj się z arkuszem danych.
Buforowane wyjście DMA, część 4
Jeśli chcesz podłączyć więcej niż jedno urządzenie peryferyjne do magistrali DMA Atari ST, każde urządzenie musi także posiadać gniazdo wyjściowe, aby można było podłączyć dodatkowe lub istniejące urządzenia. W samym Atari ST nie ma sterowniów magistrali, co oznacza, że magistrala może zostać szybko przeciążona.
Wbrew powszechnemu przekonaniu, problemem nie jest kontroler DMA, ale kontroler dyskietek WD1772, który dzieli linie danych z magistralą DMA. Interfejs magistrali WD1772 może sterować tylko 1,6mA (co odpowiada około czterem obciążeniom LS).
Kontroler DMA Atari ST (tabela 4) potrafi prawdopodobnie znacznie więcej.
W przypadku dysku twardego Atari SH205 buforowana jest tylko magistrala danych.
Jeśli oprócz danych buforujesz inne sygnały, będzie to tylko niepotrzebnie kosztować więcej czasu dostępu, a przy ósmym urządzeniu w łańcuchu ważna jest każda nanosekunda.
Idąc za przykładem dysku twardego SH205, w przedstawionym interfejsie buforowana jest tylko magistrala danych. Sygnały sterujące dla ALS245 (SH205 ma tylko LS245) pochodzą z GAL6. Podczas dostępu do zapisu bufor jest zawsze włączony, podczas dostępu do odczytu jest włączony tylko na czas trwania sygnałów /ACK lub /SEL, oczywiście tylko wtedy, gdy sam interfejs nie jest wybrany.
Kabel magistrali DMA
Oddzielny rozdział należy poświęcić kablowi magistrali DMA. Część problemu leży w niebuforowanym wyjściu Atari ST. Znacznie bardziej problematyczne jest jednak wykorzystanie sygnałów TTL do szybkiej transmisji danych. Krótko mówiąc, prosty kabel taśmowy nie nadaje się do podłączenia interfejsu. W przypadku stosowania złączy zaciskanych ważne i wrażliwe sygnały sterujące zatrzymują się pośrodku pomiędzy liniami danych, co prowadzi do problematycznych przesłuchów. Najlepszy i najdroższy jest kabel ekranowany, w którym każda żyła jest skręcona z własnym przewodem uziemiającym.
Można również zastosować kabel taśmowy, jeśli po zaciśnięciu wtyczek oddzielisz od siebie wszystkie kable i połączysz wszystkie kable do transmisji danych w jedną żyłę, ewentualnie z jednym lub dwoma kablami uziemiającymi. Pozostałe żyłki można bez problemu połączyć w drugą nić. Oddzielne kable taśmowe dla linii danych i reszty również działają, ale nie można już używać złączy zaciskanych.
Dysk twardy
Do tej pory interfejs służył wyłącznie do łączenia dysków twardych z kontrolerami dysków PC typu OMTI 5520A/B. Powiązane oprogramowanie obsługuje podłączenie maksymalnie czterech kontrolerów OMTI, każdy z dwoma napędami, co daje w sumie osiem napędów w jednym urządzeniu DMA. Drugi interfejs nie jest obecnie obsługiwany przez oprogramowanie dysku twardego. Nawet jeśli do interfejsu podłączysz cztery kontrolery dysków twardych, nadal możliwe jest podłączenie innych urządzeń peryferyjnych, ponieważ kontroler OMTI zajmuje tylko cztery podadresy. Można także podłączyć inne kontrolery dysków twardych komputerów PC, pod warunkiem, że mogą one współpracować z istniejącymi sygnałami magistrali komputera. Przetestowano NDC 5427 firmy NCL. Ten kontroler jest trochę tańszy niż OMTI, ale nie obsługuje przeplotu 1 (tj. jest znacznie wolniejszy) ani ścieżek zapasowych. Dodatkowo wymaga napięcia -12V i nie można ustawić adresu, więc można zastosować tylko jeden kontroler.
Oprogramowanie
Istnieją oczywiście programy wspierające interfejs. Oprogramowanie składa się ze sterownika dysku twardego (MHDISK1.PRG), programu formatującego (MHFORMAT.PRG), modułu partycjonowania (MHPART.PRG) i kilku narzędzi. Sterownik dysku twardego można uruchomić z poziomu rozruchu pamięci ROM lub klikając na niego jak zwykły program. Potrzebujesz tego ostatniego, szczególnie jeśli chcesz zintegrować dodatkowe programy z bootowaniem ROM i nie są one jeszcze wolne od błędów.
Ponieważ „sektor rozruchowy” jest odczytywany z komponentu ROM, a nie z dysku twardego, można bez problemu włączyć jednocześnie system dysku twardego i komputer. Po załadowaniu sterownika dysku twardego cierpliwie czeka na uruchomienie wszystkich podłączonych dysków. Nie jest to możliwe w systemie, w którym sektor rozruchowy jest odczytywany z dysku (np. SH205), w przeciwnym razie musiałbyś ustawić limit czasu rozruchu DMA w BIOS-ie na nieznośnie długi dla wszystkich ośmiu urządzeń.
Program formatujący jest w stanie automatycznie rozpoznać typ zastosowanego kontrolera - tj. OMTI 5520 lub OMTI 5527 - i tym samym dostosować się do ilości sektorów/ścieżki (17 = MFM, 26 = RLL). Program odczytuje typ dysku twardego i listę uszkodzonych ścieżek z pliku parametrów, który zawiera już wiele informacji o dyskach twardych i ich parametrach.
Po sformatowaniu przeprowadzany jest test dysku twardego, z możliwością wyboru pomiędzy testem czystego odczytu (szybki) a testem, w którym zapisywanych jest kilka różnych wzorców (wolny).
Następnie przydzielane są ścieżki zapasowe i parametry dysku twardego są rejestrowane w pierwszym sektorze dysku twardego.
Za pomocą programu do partycjonowania możesz podzielić pojedynczy dysk twardy na maksymalnie 16 partycji i w ten sposób wykorzystać nawet bardzo duże dyski twarde. Pojedyncza partycja jest obecnie ograniczona do 16 MB, chociaż nowsza wersja TOS z 27.04.87 (Blitter-TOS) prawdopodobnie może również zarządzać 32 MB. Jednak zarządzanie dużą partycją jest nieco powolne.
Partycje
Podział, który ma sens dla własnych celów, często staje się widoczny dopiero podczas pracy. Program do partycjonowania obsługuje zatem późniejszą modyfikację partycji bez utraty danych na nienaruszonych partycjach. Myślę, że szczególnie w przypadku większych dysków sensowne jest nie dzielenie całego dysku od razu na początku, ale w razie potrzeby dodanie dodatkowych partycji. Możliwa jest także tymczasowa dezaktywacja partycji bez utraty danych, np. podczas testowania podejrzanych programów lub jeśli masz łącznie więcej niż 14 partycji GEM. GEMDOS może zarządzać tylko 16 napędami, z których dwa są już przydzielone na dyskietki.
Kolejną rzeczą, na którą warto zwrócić uwagę w przypadku sterownika dysku twardego, jest to, że jest on współbieżny i dlatego może być wywoływany przez procedury przerwań, gdy liczba zmiennych ($43E) wynosi „0”. Poziom przerwania musi wynosić cztery lub pięć. Pozwala to na przykład na napisanie bufora dla Signum na dużym dysku twardym. Dla tych, którzy mają już inny dysk twardy, dostępna jest specjalna wersja sterownika, która nie używa nazw dysków C, D, E i F. Jednak rozruch ROMu jest wtedy bezużyteczny.
Zwykły sterownik, jak wszystkie znane mi sterowniki do dysków twardych, jest bardzo uparty i montuje się jako dysk C, nie biorąc pod uwagę żadnych strat.
Było miło :) Do widzenia.