Protokół floppy dysku
Ustaw konfigurację
Pakiet kontrolera flopy dysku zawiera 4 linie fizyczne (niezależnie od liczby dołączonych dysków) - TYP URZADZENIA=5.
W słowie 1 opisu linii logicznej należy podać:
Słowo | Bity | Znaczenie |
---|---|---|
1 | 0-7 | typ stacji napędowej:
|
8-15 | protekcja formatowania:
|
Dołącz linię
Polecenie sterujące "dołącz linię" przekazuje pole sterujące opisujące sposób zapisania informacji na dyskietce włożonej do stacji:
Słowo | Bity | Znaczenie |
---|---|---|
+0 | 4-7 | licznik retransmisji |
8-15 | liczba sektorów na ścieżce | |
+1 | 0-7 | długość sektora:
|
8-15 | liczba cylindrów (40, 80) | |
+2 | 0-7 | liczba powierzchni (1, 2) |
8-15 | numer pierwszego sektora na ścieżce (IBM PC=1) |
Transmituj
Pole sterujące „transmituj” zawiera 4 słowa parametrów transmisji i 3 słowa parametrów zwracanych.
Pierwsze słowo na bitach 5-7 zawiera kod operacji:
- 1 - formatowanie ścieżki
- 2 - odczyt zawartości dysku
- 3 - zapis na dysk
- 4 - zapisanie znacznika błędnego sektora
Znaczenie zawartości pola jest zależne od zadanej operacji.
Formatowanie ścieżki
Słowo | Bity | Znaczenie |
---|---|---|
+1 | 0-15 | nieistotne |
+2 | 0-15 | nieistotne |
+3 | 0-15 | numer sektora początkowego formatowanej ścieżki |
Operacje transmisji
Operacje transmisji (zapis lub odczyt z dysku) wymagają pola sterującego:
Słowo | Bity | Znaczenie |
---|---|---|
+0 | 3 | ignorowane będą błędy CRC odczytu |
5-7 | kod operacji: odczyt = 2, pisanie = 3 | |
11-15 | numer bloku pamięci MERY | |
+1 | 0-15 | adres bufora MERY |
+2 | 0-15 | długość transmisji w słowach pomniejszona o 1 |
+3 | 0-15 | numer sektora początkowego transmisji |
Zapisanie znacznika błędnego sektora
Słowo | Bity | Znaczenie |
---|---|---|
+1 | 0-15 | nieistotne |
+2 | 0-15 | nieistotne |
+3 | 0-15 | numer sektora |
Pole parametrów zwracanych
Pole parametrów zwracanych zawiera 3 słowa:
Słowo | Bity | Znaczenie |
---|---|---|
+0 | 0-15 | liczba przesłanych poprawnie słów (tylko czytanie lub pisanie) |
+1 | 0-15 | 1 i 2 bajt stanu i błędów: |
0 | awaria sprzętu, brak dyskietki | |
1 | błąd transmisji (przyczyna opisana dalej) | |
10 | wystąpił błąd CRC dane/adresy | |
13 | nieznalezione pole adresowe | |
14 | ochrona przed zapisem | |
15 | brak danych | |
+2 | 0-7 | 3 bajt stanu i błędów: |
1 | odczytany znacznik błędnego sektora | |
2 | błąd CRC danych |
Źródło: Protokół flopy dysku, Amepol