{***********************************************************************}
{									}
{ __ResetIsr  Reestablish the original vector for an ISR		}
{									}
{ function  __ResetIsr(IntType : byte; Ident : _IdentStr) : word;	}
{									}
{	      IntType	The interrupt type, or vector.	For this vector }
{			__ResetIsr checks for the installation of an	}
{			ISR control block using __IsInsIsr.		}
{	      Ident	The ISR identification.  It must match exactly	}
{			the string specified in the ISR control block	}
{			when the ISR was installed.			}
{									}
{ Description This function checks for the presence of an installed	}
{	      ISR using the function __IsInsIsr.  If the ISR is found,	}
{	      the previous vector is reestablished.  In this case,	}
{	      the program segment (not a pointer)is returned as the	}
{	      function value.  If the ISR cannot be detected, the value }
{	      of the function is zero.					}
{									}
{ Version     4.00 (C)Copyright Blaise Computing Inc.  1987		}
{_______________________________________________________________________}

function __ResetIsr(IntType : byte; Ident : _IdentStr) : word;

  var
    PSPPtr,EnvPtr,PrevVector : pointer;

  begin {__ResetIsr}

    if (__IsInsIsr(IntType,Ident,PSPPtr,EnvPtr,PrevVector)) then
       begin
	 SetIntVec(IntType,PrevVector);
	 __ResetIsr := _VectorAddr(PSPPtr)._Seg
       end
    else
       __ResetIsr := 0

  end;	{__ResetIsr}
