ketovchanin
28-09-2009, 11:10
Археологам посвящается.
Восстановить сектор 0 можно, если скопировать его с рабочей дискеты на сбойную.
Теперь дискету можно отформатировать или отдать на съедение какой нибудь проге для восстановления.
Бывает что FAT повреждена и диск не читается никак, тогда можно выполнить format a: /Q - это удалит FAT, но возможно(всё таки порой винда записывает файлы в очень странном порядке) файлы можно будет восстановить.
Замечено, что после восстановления сектора 0, дискета через начинает сбоить опять, поэтому имейте ввиду, что важные данные записывать на неё нельзя.
моя прога для восстановления сектора 0. http://webfile.ru/3957539
program my_track_0;
uses windows;
const sector_0:array[0..511] of char =
(#$EB,#$3C,#$90,#$57,#$49,#$4E,#$49,#$4D,#$41,#$47,#$45,#$00,#$02,#$01,#$01,#$00,#$02,#$E0,#$00,#$40 ,#$0B,#$F0,#$09,#$00,#$12,#$00,#$02,#$00,#$00,#$00,#$00,#$00,
#$00,#$00,#$00,#$00,#$00,#$00,#$29,#$30,#$09,#$F0,#$51,#$20,#$20,#$20,#$20,#$20,#$20,#$20,#$20,#$20, #$20,#$20,#$46,#$41,#$54,#$31,#$32,#$20,#$20,#$20,#$FA,#$33,
#$C0,#$8E,#$D0,#$BC,#$00,#$7C,#$B8,#$B0,#$07,#$8E,#$D8,#$8E,#$C0,#$B9,#$00,#$01,#$8B,#$F1,#$BF,#$00, #$03,#$F3,#$A5,#$B8,#$D0,#$07,#$50,#$8E,#$D8,#$8E,#$C0,#$B8,
#$64,#$01,#$50,#$CB,#$FB,#$BE,#$B4,#$01,#$E8,#$3A,#$00,#$B8,#$01,#$02,#$B9,#$01,#$00,#$BA,#$80,#$00, #$33,#$DB,#$8E,#$C3,#$BB,#$00,#$7C,#$06,#$53,#$CD,#$13,#$72,
#$0A,#$26,#$81,#$3E,#$FE,#$7D,#$55,#$AA,#$75,#$01,#$CB,#$BE,#$B9,#$02,#$E8,#$14,#$00,#$B4,#$01,#$CD, #$16,#$74,#$06,#$32,#$E4,#$CD,#$16,#$EB,#$F4,#$32,#$E4,#$CD,
#$16,#$33,#$D2,#$CD,#$19,#$FC,#$AC,#$0A,#$C0,#$74,#$08,#$56,#$B4,#$0E,#$CD,#$10,#$5E,#$EB,#$F3,#$C3, #$44,#$69,#$73,#$6B,#$20,#$66,#$6F,#$72,#$6D,#$61,#$74,#$74,
#$65,#$64,#$20,#$77,#$69,#$74,#$68,#$20,#$57,#$69,#$6E,#$49,#$6D,#$61,#$67,#$65,#$20,#$34,#$2E,#$30, #$30,#$20,#$28,#$63,#$29,#$20,#$31,#$39,#$39,#$33,#$2D,#$39,
#$37,#$20,#$47,#$69,#$6C,#$6C,#$65,#$73,#$20,#$56,#$6F,#$6C,#$6C,#$61,#$6E,#$74,#$0D,#$0A,#$42,#$6F, #$6F,#$74,#$73,#$65,#$63,#$74,#$6F,#$72,#$20,#$66,#$72,#$6F,
#$6D,#$20,#$43,#$2E,#$48,#$2E,#$20,#$48,#$6F,#$63,#$68,#$73,#$74,#$84,#$74,#$74,#$65,#$72,#$0D,#$0A, #$0D,#$0A,#$4E,#$6F,#$20,#$53,#$79,#$73,#$74,#$65,#$6D,#$64,
#$69,#$73,#$6B,#$2E,#$20,#$42,#$6F,#$6F,#$74,#$69,#$6E,#$67,#$20,#$66,#$72,#$6F,#$6D,#$20,#$68,#$61, #$72,#$64,#$64,#$69,#$73,#$6B,#$0D,#$0A,#$00,#$00,#$00,#$00,
#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00, #$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,
#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00, #$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,
#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00, #$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,
#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00,#$00, #$00,#$00,#$00,#$00,#$00,#$43,#$61,#$6E,#$6E,#$6F,#$74,#$20,
#$6C,#$6F,#$61,#$64,#$20,#$66,#$72,#$6F,#$6D,#$20,#$68,#$61,#$72,#$64,#$64,#$69,#$73,#$6B,#$2E,#$0A, #$0D,#$49,#$6E,#$73,#$65,#$72,#$74,#$20,#$53,#$79,#$73,#$74,
#$65,#$6D,#$64,#$69,#$73,#$6B,#$20,#$61,#$6E,#$64,#$20,#$70,#$72,#$65,#$73,#$73,#$20,#$61,#$6E,#$79, #$20,#$6B,#$65,#$79,#$2E,#$0A,#$0D,#$00,#$00,#$00,#$55,#$AA);
var
hFile: THandle;
br,TmpHi: DWORD;
begin
hFile := CreateFile(PChar('\\.\A:'),
GENERIC_WRITE,FILE_SHARE_READ,nil,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0);
if hFile = INVALID_HANDLE_VALUE then Exit;
if SetFilePointer(hFile,0,@TmpHi,FILE_BEGIN) = 0 then
if not WriteFile(hFile,sector_0,512,br,nil) then
Exit;
CloseHandle(hFile);
end.
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.