Auf "A:\" zugreifen
-
Hallo ich bräuchte eien Tipp, wie ich mti (in)direkter Addressierung auf den gesamten Speicher z.b. des Diskettenlaufwerks zugreifen kann.
Bei C:\ kann ich es ja,aber auf A:\?
THX
-
Mit welchem OS? Waer fuer den Anfang mal ganz nuetzlich zu wissen. Und was verstehst du unter direkter Addressierung? Mir faellt jetzt kein Grund ein, warum es mit der Platte gehen sollte und mit der Diskette nicht.
-
OS ist nicht unbedingt nötig.. Gibt ja das BIOS.
!Tipp! Google-Eingabe (www.google.de): Assembler bios interrupt disk - der erste Eintrag ist schon gut...
-
Ich hab da alles (Spur formatieren,format auslesen...),nur das was ich wollte nicht gefunden(DATEN AUSLESEN).Außerdem ist alles für DOS geschrieben(Interrupts),funktionniert das unter Windows?
Wenn nein,gibt es solche Funktionen auch für Windows?
Woher weis ich welche Spur,Sektor... ich zum Lesen angeben muss .Sekotr weis ich aber was muss der Lesekopf wissen und wie viele Spuren gibt es?
und kann es nicht sein,dass ich bei Fehlern meine Hardware beschädige?TTTHHX
-
Hi
Welche Windows version meinst du? Win 3.1 Win95 Win98 NT3 NT4 ME W2k XP?
Also bis Windows 98 sollte das genauso gehen wie unter dos, da Windows ja nur auf Dos aufsetzt.
Alle anderen NT3/4 ME W2k und XP geht das nicht mehr. Da diese im Protected Mode arbeiten wo nur der Kernel zugriff auf die HW hat. Die Bisointerrupte normalerweise aber nur für den Realmode geschrieben sind. Der Kernel stellt dafür aber die notwendigen schnitstellen zur verfügung um auf die HW zuzugreifen zu können.Die Geometrie informationen für Disketten sind für fat formatierte Disketten normalerweise alle gleich. teile der informationen stehen auch im bootsektor ( wenn ich mich noch richtig erinnere). Aber um sowas solltest du dich doch unter windows > NT nicht mehr kümmern müssen, da das ja das Betriebsystem für dich übernimmt.
drumm die frage, was willst du machen? ggf können wir dann genauer auf dein problem eingehen. Momentan kann ich nur rate was du machen willst, und wo deine probleme liegen.
fals du angst hast deine hw zu beschädigen ( bei disketten könnte das durchaus im bereich des möglichen sein, fals ich da nicht grad wieder was mit dem c64 verwechsel
) nim doch einen pc simulator wie z.B. Bochs, VMware,... die arbeiten nur auf einem Disketten Image und nicht auf der orginalhw.
gruss
-
Unter NT geht's mit DeviceIoControl. Da machst du auch garantiert nix kaputt.
Wenn du das BIOS verwendest, ist es auch sehr unwahrscheinlich. Lesefunktion gibt's sehr wohl. Funktion 02h.
Die Geometrie ist nicht immer gleich. Erstens gibt es DD und HD Disketten, zweitens kann man die auch ziemlich exotisch formatieren. Es gibt aber sowohl im BIOS als auch unter NT die Möglichkeit, die Geometrie abzufragen.
-
Hi.
Termite schrieb:
Also bis Windows 98 sollte das genauso gehen wie unter dos, da Windows ja nur auf Dos aufsetzt. Alle anderen NT3/4 ME W2k und XP geht das nicht mehr. Da diese im Protected Mode arbeiten wo nur der Kernel zugriff auf die HW hat.
Noe, spaetestens ab Win95 hatte Windows ein "eigenes" Kernel, das von DOS weitgehend unabhaengig war. Unter Win95 gaebe es zB. einfach mal eine schoene Exception/Crash, wenn du in einem Windows-Programm versuchen wuerdest, BIOS-Funktionen zu benutzen.
Termite schrieb:
fals du angst hast deine hw zu beschädigen ( bei disketten könnte das durchaus im bereich des möglichen sein, fals ich da nicht grad wieder was mit dem c64 verwechsel
)
Jo, bei HDDs auch.
Gibt AFAIK so Spezialisten, die Teile der Firmware auf der Scheibe haben.
-
@Ringding:Weisst du wie ich unter winxp die geometrie abfrage.
Ganz konkret habe ich vor Dateien auf der Disk mit meinem Programm und einem kleinen Trick für unbefugter unsichtbar zu machen und dazu müsste mein programm halt einige speierstellen der Disk leicht verändern können.
-
IOCTL_DISK_GET_DRIVE_GEOMETRY_EX