{$M $4000,550000,550000}
program nodebug;

uses crt;

{$L nodeb.obj}
procedure PIQ_Stop_System; far; external;
procedure keyboard_aus; far; external;
procedure keyboard_ein; far; external;
procedure no_stepping; far; external;
procedure protected_stopping; far; external;
procedure check_auf_Vector(check : longint); far; external;
procedure Restore_checkVector; far; external;
function  Vector_OK(check : longint) : boolean; far; external;
procedure Copy_int21_int3; far; external;

begin;
 clrscr;
 writeln('Checksumme auf Int3-Vector');
 check_auf_Vector(12345678);
 writeln('Keyboard ausschalten');
 keyboard_aus;
 writeln('Stepping-Falle');
 no_stepping;
 writeln('PIQ-Trick');
 PIQ_Stop_System;
 writeln('Protected-Mode switching');
 Protected_stopping;
 writeln('Vector-Checking');
 If NOT Vector_Ok(12345678) then begin;
   clrscr;
   writeln('Na na, nicht debuggen !');
   halt(0);
 end;
 writeln('Check-Vector wieder herstellen');
 Restore_checkVector;
 writeln('Keyboard wieder einschalten');
 keyboard_ein;
 writeln('Und wir sind im Programm');
 readln;
end.
