Posted on 2005-03-14 05:12:19 by ChiefA
The computer program must write a byte to port 37Ah with bit 4 set. It must also enable the interrupt in the PIC.

mov dx,37ah
mov al,10h
out dx,al
in al,21h
or al,1
out 21h,al

Pin 10 must be driven high, then low to produce an interrupt. By reading from port 379h, the pin status can be checked by means of bit 6.
Posted on 2005-03-14 08:08:27 by Sephiroth3
Let it be noted that IRQ7 is not all that stable and is not entirely consistant across PCs.
Posted on 2005-03-14 21:26:47 by SpooK
Many thanks for this information...
How can save and restore previous IRQ in PIC?
Posted on 2005-03-15 03:01:23 by ChiefA
I don't think you can do that. If you have to process IRQs out of order, you must use specific EOIs (write 60h + IRQ number to port 21h)
Posted on 2005-03-15 04:28:26 by Sephiroth3
How put code for PROCESS of IRQ7?
Why this not work in WinXP SP2
        mov dx,IOAddr
        in  ax,dx
        mov result,ax
Have protection?
WinXP 'say' : privileged instruction - for        in  ax,dx
Posted on 2005-03-16 12:52:06 by ChiefA
You would have to code a driver for such code as it requires ring0 previlage as you have discovered.
Posted on 2005-03-16 21:07:23 by roticv