Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!clyde!rutgers!seismo!vrdxhq!tom From: tom@vrdxhq.UUCP Newsgroups: comp.sys.ibm.pc Subject: Re: Masking ints while setting interrupt vectors Message-ID: <3423@vrdxhq.UUCP> Date: Wed, 15-Apr-87 18:36:41 EST Article-I.D.: vrdxhq.3423 Posted: Wed Apr 15 18:36:41 1987 Date-Received: Fri, 17-Apr-87 05:01:08 EST References: <5523@shemp.UCLA.EDU> Organization: Verdix Corporation, Chantilly, VA Lines: 44 Keywords: interrupts, masking Summary: masking off interrupts There are two ways to do it. One way is simply to turn off interrupts and turn them on again ... PUSHF CLI << your code to install vector >> POPF Or, you can mask off the timer interrupt at the 8259 interrupt controller via ... ; get the current mask MOV DL, 021H ; 21h is mask port in AT IN AH, DL ; save current mask PUSH AX ; mask off the timer OR AH, Timer_interrupt ; i don't know which line it is ; put new mask to 8259 OUT AH, DL << insert vector installation code here >> ; restore old mask POP AX OUT AH, DL I'm sure I got some of the operand orders wrong, cause I don't have any books in front of me, but you get the idea ... Also, the literal Timer_interrupt should be replaced with 3 or 4 or 2 or whatever the timer interrupt into the 8259 is.