KMK/JŻ IDE

From Atariki

(Różnice między wersjami)
Jump to: navigation, search
Wersja z dnia 04:28, 17 kwi 2005
KMK (Dyskusja | wkład)

← Previous diff
Wersja z dnia 04:31, 17 kwi 2005
KMK (Dyskusja | wkład)
(FDISK)
Next diff →
Linia 48: Linia 48:
==FDISK== ==FDISK==
 +
 +Program napisany ongiś przez [[KMK]], a służący do przygotowania dysku IDE do pracy; czyli głównie do popartycjonowania go.
 +
 +Pierwsza wersja (od 1.0 do 1.2) była napisana w [[Turbo BASIC XL]] i kompilowana, ale mimo wielu wysiłków i konwertowania coraz to większych części na podprogramy w asemblerze, nie chciała działać stabilnie. Z tego powodu ten kierunek działań został zarzucony i powstała napisana całkowicie od nowa w czystym asemblerze wersja 1.30, która wreszcie funkcjonowała w sposób przewidywalny. Dalsze prace rozwojowe, głównie poprawki błędów i ulepszenia w procedurach wykrywania dysków i dogadywania się z nimi, doprowadziły przez dziesięć kolejnych wersji do powstania FDISK-a 1.40.
 +
 +===Pełna autodetekcja===
 +
 +Program ten cechuje się między innymi tym, że teoretycznie jest w stanie skłonić do pracy każdy dysk ATA, byle sprawny. FDISK 1.40 zawiera bowiem między innymi procedurę sprawdzającą, czy podana przez dysk geometria jest rzeczywiście poprawna (co nie musi być prawdą w przypadku niektórych starych dysków ATA), a ponadto dysponuje dość długą, ale skuteczną procedurą, która metodą "brute force" wyszukuje poprawną konfigurację ze stuprocentową skutecznością, o ile tylko takowa istnieje (to znaczy, o ile dysk jest sprawny). Sprawia to, że pod KMK/JŻ IDE automatycznie wykrywana jest geometria również tych dysków, z którymi normalnie nie radzi sobie PC BIOS (gdzie parametry trzeba wklepać ręcznie).
 +
 +===Działanie===
 +
 +Po uruchomieniu program wyświetla trzy ramki. Ta na samej górze zawiera informację o nazwie programu i autorze (i uprzytamnia nam, że nazwa "KMK/JŻ IDE" jest, choć trafna, jednak zwyczajowa - wymyślili ją użytkownicy interfejsu, a nie autorzy). Na dole ekranu widać informację na temat nazwy dysku, jego geometrii (CHS), oraz pojemności. Pojemność dysku podawana jest w zaokrągleniu do pełnych jednostek w zwykłych megabajtach (gdzie 1 MB = 1048576 bajtów). Z tego powodu dane podawane przez FDISK różnią się od tego, co na temat pojemności dysku zazwyczaj twierdzi jego producent (dla którego 1 MB = 1000000 bajtów).
 +
 +====Menu główne====
 +
 +Na środku ekranu widnieje menu z następującymi opcjami:
 +
 +{{grafr|Fdisk-1.png}}
 +
 +* '''Surface test''' - po wybraniu tej opcji program będzie próbował sprawdzić, czy dysk nie ma uszkodzonych sektorów. Test przeprowadzany jest całymi ścieżkami, bez odczytu danych. FDISK zapamiętuje tylko, czy podczas weryfikacji którejkolwiek ze ścieżek wystąpił błąd. Jeśli tak - to po zakończeniu testu wyświetlane jest "BAD TRACKS DETECTED". Jeśli błędów nie ma, test kończy się powrotem do menu. Testowanie można w każdej chwili przerwać wciskając klawisz SHIFT.
 +
 +* '''Soft format''' - ta opcja ma na celu wywołanie wbudowanego formattera [[SpartaDOS X]] celem zapisania struktury systemu plików na popartycjonowanym dysku. Raczej nie będzie działać z innymi DOS-ami.
 +
 +* '''Exit to DOS''' - po wybraniu tej opcji następuje zakończenie programu i wyjście do DOS-u. Trzeba mieć na uwadze, że w przypadku DOS-ów, które trzymają interfejs użytkownika w osobnym pliku (jak DUP.SYS w [[MyDOS|MyDOS-ie]]), szczęśliwy powrót do DOS-u może zależeć od istnienia ramdysku, w którym znajduje się owa nierezydentna część DOS.
 +
 +Najważniejszą wszelako opcją jest '''Partitioning'''. Wybranie jej wywołuje na ekran następne menu, które pozwala na podzielenie dysku zgodnie z widzimisię oraz na pewne dodatkowe ustawienia.
 +
 +====Menu partycjonowania====
 +
 +{{grafr|Fdisk-2.png}}
 +
 +Lewa skrajna kolumna oznaczona '''LUN''' (od ''Logical UNit'') oznacza numery dysków w systemie operacyjnym, do których przypisane będą definiowane partycje.
 +
 +Kolumna '''Size''' to rozmiary partycji mierzone w fizycznych sektorach o wielkości 512 bajtów. Maksymalny możliwy rozmiar to 32767 sektorów - co odpowiada 65534 sektorom 256-bajtowym pod DOS-em. Zmiany dokonuje się po wciśnieniu klawisza '''Return'''.
 +
 +W kolumnie '''Type''' zaznacza się, który dysk jest dyskiem startowym, to znaczy tym, z którego komputer się zabootuje.
 +
 +Kolumna '''Stat.''' jest niewykorzystana.
 +
 +Przejścia między kolumnami wykonuje się klawiszem TAB.
 +
 +Okienko '''Total''' zawiera całkowitą liczbę 512-bajtowych sektorów dysku. Okienko '''Remain''' pokazuje liczbę sektorów 512-bajtowych, jakie pozostają wolne po dotychczasowych definicjach partycji. Okienko '''Spec.''' pokazuje geometrię CHS dysku.
 +
 +====Menu "Opts"====
 +
 +W prawym, dolnym rogu ekranu znajduje się dodatkowe menu sterujące, do którego przechodzi się klawiszem TAB:
 +
 +* '''Undo''' - powoduje skasowanie ostatnich zmian w tablicy pratycji i przywrócenie jej do stanu wyjściowego.
 +* '''Opts''' - wywołuje na ekran jeszcze jedno menu, o którym niżej.
 +* '''Write''' - zapis tablicy partycji na dysk.
 +* '''Erase''' - skasowanie (wyzerowanie) tablicy partycji na dysku.
 +* '''Cancel''' - powrót do menu głównego.
 +
 +{{grafr|Fdisk-3.png}}
 +
 +====Menu "Set Options"====
 +
 +Menu '''Set options''' wybiera dodatkowe parametry pracy interfejsu:
 +
 +* '''Number of retries''' - pierwotnie liczba prób odczytu po zgłoszeniu przez kontroler IDE błędu podczas wykonywania operacji READ SECTOR. Parametr ten nie jest używany przez bieżące wersje sterownika IDE.
 +* '''Drive redirection''' - definiuje numer partycji, na którą przekierowywane będą komendy wysyłane przez system lub programy do stacji D1. Normalnie powinno tu być D1.
 +* '''Boot type''' - normalnie powinno być tu wybrane ''pass'', co pozostawia dokonanie odczytu wstępnego pod kontrolą systemu operacyjnego. Przestawienie tego na ''control'' powoduje przejęcie ładowania przez wewnętrzny loader interfejsu, co pozwala na zabootowanie systemu z każdej partycji pod [[XL OS]] (który normalnie pozwala na boot jedynie z D1). W [[DracOS]] opcja ta nie ma żadnego znaczenia - tu system przejmuje od interfejsu numer dysku startowego jak ustawiono w tablicy partycji.
 +* '''Lock/Unlock a partition''' - powoduje nałożenie lub zdjęcie ochrony przed zapisem.
 +
 +Z każdego menu - oprócz głównego - można wyjść klawiszem '''Esc'''.
 +
 +===Ograniczenia FDISK-a 1.40===
 +
 +* program nie pozwala na definiowanie partycji większych niż 16 MB (chociaż interfejs takowe obsługuje)
 +* program ustawia wszystkie partycje w trybie emulacji sektorów 256-bajtowych
* [[IDE JZ/KMK/FDISK|Opis programu FDISK]] * [[IDE JZ/KMK/FDISK|Opis programu FDISK]]

Wersja z dnia 04:31, 17 kwi 2005

Interfejs IDE, znany także jako "KMK/JŻ". Opracowany w roku 1995 przez Jacka Żuka (hardware) oraz KMK (software) interfejs równoległy przeznaczony do podłączania napędów IDE/AT-BUS do komputerów serii XE.

Interfejs wykorzystuje istniejący w systemie operacyjnym mechanizm pozwalający na podłączanie w standardowy, zdefiniowany przez Atari sposób urządzeń równoległych tak, by zostały automatycznie zainicjowane po włączeniu zasilania komputera (rodzaj tzw. plug-n-play). W związku z tym zastosowanie interfejsu nie wymaga w żaden sposób ingerencji w kod systemu operacyjnego.

Wewnętrzne oprogramowanie interfejsu pozwala na zaadresowanie dysków o pojemności do 8 GB (16777216 sektorów po 512 bajtów). Dysk można podzielić na 16 partycji o łącznej pojemności 8 GB (może to być 1 partycja o rozmiarze 8 GB). Jednak, ponieważ DOS-y normalnie nie pracują z sektorem o wielkości 512 bajtów, sterownik interfejsu ma dwa tryby pracy:

  • tryb "rzeczywisty", w którym transmitowane są sektory 512-bajtowe
  • tryb "emulacji", w którym 1 sektor 512-bajtowy wykorzystywany jest do zapisania dwóch sektorów 256-bajtowych

Tryb emulacji charakteryzuje się mniejszą szybkością operacji I/O niż tryb rzeczywisty - różnica jest szczególnie drastyczna przy zapisie.

Oprogramowanie interfejsu pozwala na start systemu z dowolnej partycji, co jest teoretycznie niemożliwe w XL OS. Sterownik interfejsu ucieka się w związku z tym do pewnego triku, który zapobiega przestawieniu numeru dysku startowego na D1:.

Spis treści

Lista dysków

Interfejs współpracuje ze wszystkimi znanymi (autorom) modelami twardych dysków oraz z kartami CF. Oto lista twardych dysków, które działają z całą pewnością:

  • Conner CP-3000: 40 MB, 3,5 cala
  • Conner CP-2088: 80 MB, 2,5 cala
  • Conner CP-30254H: 240 MB, 3,5 cala
  • Conner CFS-1621A: 1500 MB, 3,5 cala
  • Hitachi DK238A-43: 4.3GB, 2,5 cala
  • Maxtor 7345AT: 340 MB, 3,5 cala
  • Maxtor 91366U4: 13 GB, 3,5 cala
  • Maxtor 6YL080L0: 81 GB, 3,5 cala
  • Maxtor 6YL120L0: 122 GB, 3,5 cala
  • Quantum LPS170A: 163MB, 3,5 cala
  • Quantum Fireball 1080AT: 1.0GB, 3,5 cala
  • Quantum Fireball 1280AT: 1.3GB, 3,5 cala
  • Quantum Fireball EL: 4,9GB, 3,5 cala
  • Seagate ST-157A: 40 MB, 3,5 cala
  • Seagate ST-1102A: 81 MB, 3,5 cala
  • Seagate ST-9190AG: 164 MB, 2,5 cala
  • Seagate ST-3290A: 261 MB, 3,5 cala
  • Seagate ST-3660A: 540 MB, 3,5 cala
  • Seagate ST-3630A: 631 MB, 3,5 cala
  • Seagate ST-3850A: 810 MB, 3,5 cala
  • Seagate ST-32122A: 2 GB, 3,5 cala
  • Seagate ST-33232A: 3 GB, 3,5 cala
  • Western Digital WDC 130AB: 30 MB, 2,5 cala
  • Western Digital WDC AC2200F: 202MB, 3,5 cala
  • Western Digital Caviar 2850: 814 MB, 3,5 cala - z BIOS-em v.1.6 i nowszymi

FDISK

Program napisany ongiś przez KMK, a służący do przygotowania dysku IDE do pracy; czyli głównie do popartycjonowania go.

Pierwsza wersja (od 1.0 do 1.2) była napisana w Turbo BASIC XL i kompilowana, ale mimo wielu wysiłków i konwertowania coraz to większych części na podprogramy w asemblerze, nie chciała działać stabilnie. Z tego powodu ten kierunek działań został zarzucony i powstała napisana całkowicie od nowa w czystym asemblerze wersja 1.30, która wreszcie funkcjonowała w sposób przewidywalny. Dalsze prace rozwojowe, głównie poprawki błędów i ulepszenia w procedurach wykrywania dysków i dogadywania się z nimi, doprowadziły przez dziesięć kolejnych wersji do powstania FDISK-a 1.40.

Pełna autodetekcja

Program ten cechuje się między innymi tym, że teoretycznie jest w stanie skłonić do pracy każdy dysk ATA, byle sprawny. FDISK 1.40 zawiera bowiem między innymi procedurę sprawdzającą, czy podana przez dysk geometria jest rzeczywiście poprawna (co nie musi być prawdą w przypadku niektórych starych dysków ATA), a ponadto dysponuje dość długą, ale skuteczną procedurą, która metodą "brute force" wyszukuje poprawną konfigurację ze stuprocentową skutecznością, o ile tylko takowa istnieje (to znaczy, o ile dysk jest sprawny). Sprawia to, że pod KMK/JŻ IDE automatycznie wykrywana jest geometria również tych dysków, z którymi normalnie nie radzi sobie PC BIOS (gdzie parametry trzeba wklepać ręcznie).

Działanie

Po uruchomieniu program wyświetla trzy ramki. Ta na samej górze zawiera informację o nazwie programu i autorze (i uprzytamnia nam, że nazwa "KMK/JŻ IDE" jest, choć trafna, jednak zwyczajowa - wymyślili ją użytkownicy interfejsu, a nie autorzy). Na dole ekranu widać informację na temat nazwy dysku, jego geometrii (CHS), oraz pojemności. Pojemność dysku podawana jest w zaokrągleniu do pełnych jednostek w zwykłych megabajtach (gdzie 1 MB = 1048576 bajtów). Z tego powodu dane podawane przez FDISK różnią się od tego, co na temat pojemności dysku zazwyczaj twierdzi jego producent (dla którego 1 MB = 1000000 bajtów).

Menu główne

Na środku ekranu widnieje menu z następującymi opcjami:

Grafika:Fdisk-1.png

  • Surface test - po wybraniu tej opcji program będzie próbował sprawdzić, czy dysk nie ma uszkodzonych sektorów. Test przeprowadzany jest całymi ścieżkami, bez odczytu danych. FDISK zapamiętuje tylko, czy podczas weryfikacji którejkolwiek ze ścieżek wystąpił błąd. Jeśli tak - to po zakończeniu testu wyświetlane jest "BAD TRACKS DETECTED". Jeśli błędów nie ma, test kończy się powrotem do menu. Testowanie można w każdej chwili przerwać wciskając klawisz SHIFT.
  • Soft format - ta opcja ma na celu wywołanie wbudowanego formattera SpartaDOS X celem zapisania struktury systemu plików na popartycjonowanym dysku. Raczej nie będzie działać z innymi DOS-ami.
  • Exit to DOS - po wybraniu tej opcji następuje zakończenie programu i wyjście do DOS-u. Trzeba mieć na uwadze, że w przypadku DOS-ów, które trzymają interfejs użytkownika w osobnym pliku (jak DUP.SYS w MyDOS-ie), szczęśliwy powrót do DOS-u może zależeć od istnienia ramdysku, w którym znajduje się owa nierezydentna część DOS.

Najważniejszą wszelako opcją jest Partitioning. Wybranie jej wywołuje na ekran następne menu, które pozwala na podzielenie dysku zgodnie z widzimisię oraz na pewne dodatkowe ustawienia.

Menu partycjonowania

Grafika:Fdisk-2.png

Lewa skrajna kolumna oznaczona LUN (od Logical UNit) oznacza numery dysków w systemie operacyjnym, do których przypisane będą definiowane partycje.

Kolumna Size to rozmiary partycji mierzone w fizycznych sektorach o wielkości 512 bajtów. Maksymalny możliwy rozmiar to 32767 sektorów - co odpowiada 65534 sektorom 256-bajtowym pod DOS-em. Zmiany dokonuje się po wciśnieniu klawisza Return.

W kolumnie Type zaznacza się, który dysk jest dyskiem startowym, to znaczy tym, z którego komputer się zabootuje.

Kolumna Stat. jest niewykorzystana.

Przejścia między kolumnami wykonuje się klawiszem TAB.

Okienko Total zawiera całkowitą liczbę 512-bajtowych sektorów dysku. Okienko Remain pokazuje liczbę sektorów 512-bajtowych, jakie pozostają wolne po dotychczasowych definicjach partycji. Okienko Spec. pokazuje geometrię CHS dysku.

Menu "Opts"

W prawym, dolnym rogu ekranu znajduje się dodatkowe menu sterujące, do którego przechodzi się klawiszem TAB:

  • Undo - powoduje skasowanie ostatnich zmian w tablicy pratycji i przywrócenie jej do stanu wyjściowego.
  • Opts - wywołuje na ekran jeszcze jedno menu, o którym niżej.
  • Write - zapis tablicy partycji na dysk.
  • Erase - skasowanie (wyzerowanie) tablicy partycji na dysku.
  • Cancel - powrót do menu głównego.

Grafika:Fdisk-3.png

Menu "Set Options"

Menu Set options wybiera dodatkowe parametry pracy interfejsu:

  • Number of retries - pierwotnie liczba prób odczytu po zgłoszeniu przez kontroler IDE błędu podczas wykonywania operacji READ SECTOR. Parametr ten nie jest używany przez bieżące wersje sterownika IDE.
  • Drive redirection - definiuje numer partycji, na którą przekierowywane będą komendy wysyłane przez system lub programy do stacji D1. Normalnie powinno tu być D1.
  • Boot type - normalnie powinno być tu wybrane pass, co pozostawia dokonanie odczytu wstępnego pod kontrolą systemu operacyjnego. Przestawienie tego na control powoduje przejęcie ładowania przez wewnętrzny loader interfejsu, co pozwala na zabootowanie systemu z każdej partycji pod XL OS (który normalnie pozwala na boot jedynie z D1). W DracOS opcja ta nie ma żadnego znaczenia - tu system przejmuje od interfejsu numer dysku startowego jak ustawiono w tablicy partycji.
  • Lock/Unlock a partition - powoduje nałożenie lub zdjęcie ochrony przed zapisem.

Z każdego menu - oprócz głównego - można wyjść klawiszem Esc.

Ograniczenia FDISK-a 1.40

  • program nie pozwala na definiowanie partycji większych niż 16 MB (chociaż interfejs takowe obsługuje)
  • program ustawia wszystkie partycje w trybie emulacji sektorów 256-bajtowych

Zobacz też

Personal tools