Path: utzoo!dptcdc!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!osu-cis!sppy00!jmv From: jmv@sppy00.UUCP (Jim Vickroy) Newsgroups: comp.sys.ibm.pc Subject: Re: Question 3 of 3 for assembly language programmers. Keywords: How to uninstall TSR's? Message-ID: <299@sppy00.UUCP> Date: 18 Apr 89 15:24:36 GMT References: <4498@tekigm2.MEN.TEK.COM> Reply-To: jmv@sppy00.UUCP (Jim Vickroy) Distribution: na Organization: Online Computer Library Center, Dublin, Ohio. Lines: 31 In article <4498@tekigm2.MEN.TEK.COM> alanr@tekigm2.MEN.TEK.COM (Alan Rovner) writes: => =>Suppose I have a TSR already installed and working ok, and I want to disable =>it and return its memory back to DOS. Can this be done without rebooting? =>I was thinking of passing a command line argument like -u to uninstall =>the TSR. But I don't know the assembly language details. Thanks in advance =>for any info. Interrupt handlers get their information through the registers (see, for example, INT 21H). What many interrupt handlers, therefore, do is define a "deinstall" function along with all of the other functions of the particular interrupt. Somthing like passing a FFH in AH (usually the register to pass function numbers) would deinstall (actually disable unless your handler is smart enough to physically deinstall itself and return it's memory back to DOS). The problem with the -u is that there is no "reliable" (of course this is debatable) way to check if your handler has already been installed. jim -- ============================================================================== :::: ::: :: :: : : Jim Vickroy |OC| ||| || || | | Technical Services Department |LC| ||| || || | | Online Computer Library Center, Inc. :::: ::: :: :: : : Dublin, Ohio ------------------------------------------------------------------------------ UUCP: {att|pyramid|killer}!osu-cis!sppy00!jmv domain: jmv@sppy00.uucp USSNAIL: 6565 Frantz Rd., Dublin, Ohio 43017-0702 ------------------------------------------------------------------------------ "Hey, wow man ... pooby shooby" -cm ==============================================================================