016
09.09.2024, 17:53 Uhr
Ordoban
|
Na das scheint ja gut geklappt zu haben. Die Abweichungen in der 5. Zeile sind nicht weiter tragisch, wichtig sind hier nur bestimmte Felder in den ersten 3 Zeilen. Dass Initialisieren und Sektor lesen ohne Fehler geklappt hat ist auch ein gutes Zeichen. Die Mechanik und Elektronik ist also soweit in Ordnung.
Der MBR... hmm... ja. Der Boot-Code ist noch OK, 2 Bytes Abweichung können auch daher kommen, dass vorher DCP3.0 drauf installiert war. Die Festplatten-Parameter fehlen vollständig, stehen alle auf "00". Die Partitionstabelle ist leer. Die einsame "80" besagt, dass der erste Eintrag der Partitionstabelle gebootet wird.
Das alles ist aber keine Erklärung dafür, dass MWINCH 0 Köpfe meldet, und neue Parameter wegen E/A-Fehler nicht schreiben kann. Es kann eigendlich nur noch sein, dass in dem "DISK TABLE" Sektor auch Müll drin steht. In diesem Sektor (Zylinder 0, Kopf 0, Sektor 8) steht neben dem Schriftzug "DISK TABLE" mehrmals die Anzahl Zylinder und Köpfe. Der Aufbau dieses Sektors ist eine Eigencreation von Robotron, und nirgends in der Dokumentation beschrieben. Und ich hatte heute früh auf dem Weg zur Arbeit noch gedacht: Eigendlich hätte ich den "DISK TABLE"-Sektor auch gleich mit zeigen lassen sollen.
Die Lösung für den ganzen Schlamassel wird sein, beide Sektoren mit "00" zu überschreiben. Dadurch sieht MWINCH eine "fabrikneue" Festplatte und benutzt die Vorgabeparameter (820 Zylinder, 6 Köpfe). Dadurch ist zumindest eine Neu-Einrichtung möglich.
Kontroller initialisieren (wie oben):
Quellcode: | 12s 920=0 s 936=8 s 946 ff,00,04,00,11,00,02,00 o 4a,01 o 4a,00 d 910#4 s 913=0
|
Disktable-Sektor anzeigen lassen. Musst du nicht machen, gibt aber Bonuspunkte. Der Inhalt ist ansich egal, wir überschreiben den sowieso.
Quellcode: | s 92b=4 s 931=7 s 936 00,02,00,00 512s 946=0 o 4a,01 o 4a,00 d 910#4 s 913=0 d 946#100 (Foto machen) d a46#100 (Foto machen)
|
Dann lass es uns löschen:
Kommando 6=Sektor(en) schreiben
Quellcode: | s 936 00,02,00,00 |
Anzahl Bytes=512
Speicher mit 0 füllen. Diese 00 werden dann auf die Festplatte geschrieben.
Sektornummer 0 (der zählt von 0 bis 16 statt 1 bis 17!)
Quellcode: | o 4a,01 o 4a,00 d 910#4 s 913=0
|
Sektornummer 7
Quellcode: | o 4a,01 o 4a,00 d 910#4 s 913=0
|
Reboot. Die Festplatte sollte jetzt GO anzeigen, wenn man versucht davon zu booten, fährt sich der CM1910 fest. Wir booten also von Diskette.
Jetzt einrichten mit MWINCH. Das sollte nun 820 Zylinder und 6 Köpfe anzeigen. Das stimmt natürlich nicht. 1. Konfigurationsmenü 2. neuen Festplattentyp vereinbaren 3. 3 (K5504.20) 4. Rückkehr zum Hauptmenü 5. Soll... ?? Ja! 6. Partitionierungsmenü 7. Neuen Urladeblock erstellen 8. Vorgabe? Nein! 9. Zuweisen einer Partition 10. Nummer 1 11. DCP 12. Erster Zylinder 0 13. Anzahl Zylinder 610 (oder so...) 14. Rückkehr zum Einrichtungsmenü 15. Soll geschrieben werden? Ja! 16. Reboot - Es kann sein, dass die Festplatte jetzt NOGO anzeigt 17. Schauen, welche Laufwerksbuchstaben beim Boot von den Spezial-Diskettentreibern zugewiesen werden. C sollte nicht dabei sein! 18. format c: /u 19. sys c: fertig
Es ist möglich, dass die Festplatte auf NOGO bleibt. Die sollte mit Eingabe von B trotzdem booten. -- Gruß Stefan |