Path: utzoo!mnetor!uunet!lll-winken!lll-tis!ames!nrl-cmf!mailrus!tut.cis.ohio-state.edu!bloom-beacon!oberon!sdcrdcf!hplabs!hp-pcd!hpcvlx!everett From: everett@hpcvlx.HP.COM (Everett Kaser) Newsgroups: comp.sys.ibm.pc Subject: Re: Need Help w/ IRQ? ISR on HP Vectra Message-ID: <1180012@hpcvlx.HP.COM> Date: 12 Apr 88 16:51:08 GMT References: <358@ga.ecn.purdue.edu> Organization: Hewlett-Packard Co., Corvallis, OR, USA Lines: 50 I assume (and we all know what that makes out of 'u' and 'me', huh?) that you're taking over interrupt 9, the keyboard hardware interrupt. I'm also assuming that you're saving the old interrupt vector and restoring it before you return to DOS (unless you're a terminate-stay-resident, of course). You see, there are many questions about your situation that makes an answer difficult. However, here is the skeleton of an ISR that I've used that might help. ; int9isr: push ax push bx push cx push dx push si push di push bp push ds push es in al,60h ; get keyboard data byte ; ; at this point test the scan code in AL for a value that you want, or do ; whatever with it that you do. ; then, ; in al,61h ; reset keyboard mov ah,al or al,80h out 61h,al xchg ah,al out 61h,al mov al,20h ; send End-Of-Interrupt command to out 20h,al ; the interrupt controller pop es pop ds pop bp pop di pop si pop dx pop cx pop bx pop ax iret ; ; I hope that this helps. Everett Kaser !hplabs!hp-pcd!everett