[Back to TSR SWAG index] [Back to Main SWAG index] [Original]
PROGRAM NoBoot ;
{$M 1024, 0, 0 }     { TSR : reserve 1K stack no heap   }
{$S-}                { Needed in a TSR }
Uses
   Crt,    { Sound }
   Dos,
   KeyIntr ;
Var
   OldInt09 : Pointer ;
{$F+}
Procedure NewInt09 ; Interrupt ;
Begin
   EnableInterrupts ;                        { Delete key }
   If ControlPressed and AltPressed and (ReadScanCode = $53) then
   Begin
      ResetKeyboard ;                         { Ignore key }
      EOI ;
      Sound( 880 ) ;                          { optional }
      Delay( 100 ) ;
      Sound( 440 ) ;
      Delay( 100 ) ;
      NoSound ;
   End
   Else
      CallInterrupt( OldInt09 ) ;
End ;
BEGIN
   GetIntVec( $09, OldInt09 ) ;
   SetIntVec( $09, Addr(NewInt09) ) ;
   Keep( 0 ) ;                                 { make this a TSR }
END.
[Back to TSR SWAG index] [Back to Main SWAG index] [Original]