MODULE NoDelete;
(* $StackChk- *)

IMPORT
  y := SYSTEM,

  d := Dos,
  e := Exec;

VAR
  signal :LONGSET;
  dummy :e.PROC;

PROCEDURE NewDeleteFunc(name{1}: e.LSTRPTR): BOOLEAN;
(* $SaveAllRegs+ *)
(* $DeallocPars- *)

BEGIN
  (* we don't want anything to be deleted...
   * return with success, though we haven't done
   * anything
   *)
  RETURN TRUE;
END NewDeleteFunc;

BEGIN
  dummy := e.SetFunction(d.base, -72, y.VAL(e.PROC, NewDeleteFunc));
  d.PrintF("NoDelete Installed!\n\n"
           "Now it should be hard to destroy your work...\n"
           "Any delete will be canceled. Try a \"delete SYS:#? all\" :)\n"
           "NoDelete is SUCKSware\n"
           "SUCKS rules, join now!\n"
           "\o$VER: NoDelete.mod 45.10024 (07.04.95)\o");
  (* wait forever and a day *)
  signal := e.Wait(LONGSET{});
END NoDelete.
