'*************************************************************************** ' ' Spur 79 zerschiessen einer 1.44 MB Disk in Laufwerk A ' ' entwickelt von / developed by : Thomas Gohel ' Fido : Thomas Gohel@2:2410/330.1 ' InterNet: author@pbsound.snafu.de ' Homepage: http://www.snafu.de/~pbsound/ ' '*************************************************************************** $COMPILE EXE CLS SetDiskFormat SektorFormat SektorLesen END FUNCTION SetDiskFormat public ! mov ah, &h18 ! mov ch, 79 ;'80 Spuren ! mov cl, 18 ;'18 Sektoren pro Spur ! mov dl, 0 ;'A = 1.44MB Laufwerk ! int &h13 ! jnc SetDiskFormatOk PRINT "Fehler" ! jmp SetDiskFormatEnde SetDiskFormatOk: PRINT "Ok" SetDiskFormatEnde: END FUNCTION FUNCTION SektorFormat public LOCAL Spur? LOCAL Kopie$, KopieSeg??, KopieOff?? Spur? = 79 Kopie$ = CHR$(Spur?, 0, 1, 1) KopieSeg?? = STRSEG(Kopie$) KopieOff?? = STRPTR(Kopie$) ! push es ! mov ah, &h05 ! mov al, 1 ;'einen Sektor formatieren ! mov dl, 0 ! mov dh, 0 ! mov ch, Spur? ! mov es, KopieSeg?? ! mov bx, KopieOff?? ! int &h13 ! pop es ! jnc SetFormatOk PRINT "Fehler beim Formatieren" ! jmp SetFormatEnde SetFormatOk: PRINT "Format ok" SetFormatEnde: END FUNCTION FUNCTION SektorLesen public LOCAL StartSpur?, EndSpur?, Zielspur?, Sektoren? LOCAL Kopie$, KopieSeg??, KopieOff?? Spur? = 79 Kopie$ = CHR$(Spur?, 0, 1, 2) KopieSeg?? = STRSEG(Kopie$) KopieOff?? = STRPTR(Kopie$) ! push es ! mov ah, &h02 ! mov al, 1 ! mov ch, Spur? ! mov cl, 1 ! mov dh, 0 ! mov dl, 0 ! mov es, KopieSeg?? ! mov bx, KopieOff?? ! int &h13 ! pop es ! jnc SektorLesenOk PRINT "Sektor konnte nicht gelesen werden" ! jmp SektorLesenEnde SektorLesenOk: PRINT "Sektor ist Ok" SektorLesenEnde: END FUNCTION