program HdcSc;
const
  {$I HDCDEF.INC}
type
  Str10     = string[10];
  Wrkstring = string[80];
var
  I         :integer;
  Stp       :boolean;
  Ch        :char;
  Gap3_Len  :integer;
  Sekt_Size :integer;
  Buffer    :array[1..1024] of byte;
  Maxtrack  :integer;
  Maxsek    :integer;

{$I HDCROUT.INC}

begin
  clrscr;
  writeln('Abgleich Routine fuer den Winchester Controller [V 0.1]');
  writeln;
  HDC_Init;
  writeln('Der Test kann mit Tastendruck beendet werden !');
  writeln;
  writeln('Es werden nur fehlerhafte Sektoren mit einer Bildschirmausgabe');
  writeln('quittiert: >nn< nn=Statusregister. Erfolgt keine Ausgabe, so ist');
  writeln('die Hard-Disk fehlerfrei.');
  writeln;
  Maxsek:=Anzahl_Zylinder*Sektoren_pro_Spur*Anzahl_Koepfe;
  writeln('Anzahl der Sektoren = ',Maxsek);
  writeln;
  writeln(' Testing all Sectors ... ');
  I:=0;
  repeat
    Readsec(I);
    I:=I+1;
    Stp:=keypressed
  until (I >= Maxsek) or Stp;
  if Stp then
  begin
    read(kbd,Ch);
    writeln;
    writeln('Programm abgebrochen.')
  end;
  HDC_Deselect
end.
