From 75a9d9fc5f23da695ff29eea6e955019059b3208 Mon Sep 17 00:00:00 2001 From: jean Date: Fri, 12 Mar 1999 16:03:09 +0000 Subject: [PATCH] replaced by irqhand.c svn path=/trunk/; revision=293 --- reactos/ntoskrnl/hal/x86/irqhand.asm | 124 --------------------------- 1 file changed, 124 deletions(-) delete mode 100644 reactos/ntoskrnl/hal/x86/irqhand.asm diff --git a/reactos/ntoskrnl/hal/x86/irqhand.asm b/reactos/ntoskrnl/hal/x86/irqhand.asm deleted file mode 100644 index 90fe1dda3ca..00000000000 --- a/reactos/ntoskrnl/hal/x86/irqhand.asm +++ /dev/null @@ -1,124 +0,0 @@ -; -; This module has code to handle IRQs -; - -%include "internal/i386/segment.inc" - -bits 32 -section .text -extern _KiInterruptDispatch - -%macro IRQ_HANDLER_FIRST 1 -global _irq_handler_%1 -_irq_handler_%1: - - ; - ; Save registers - ; - pusha - push ds - push es - - mov eax,0xceafbeef - push eax - - ; - ; Load DS - ; - mov ax,KERNEL_DS - mov ds,ax - mov es,ax - - ; - ; Mask the corresponding vector at the PIC - ; NOTE: Since lower priority interrupts are masked until an EOI - ; is sent to the PIC this preserves the IRQL semantics. - ; - in al,0x21 - or al,1<<%1 - out 0x21,al - - ; - ; Call the irq dispatcher (passing the IRQ number as an argument) - ; - push dword %1 - call _KiInterruptDispatch - - ; - ; Restore stack, registers and return to interrupted routine - ; - pop eax - - pop eax - - pop es - pop ds - popa - iret -%endmacro - -%macro IRQ_HANDLER_SECOND 1 -global _irq_handler_%1 -_irq_handler_%1: - ; - ; Save registers - ; - pusha - push ds - push es - - mov eax,0xceafbeef - push eax - - ; - ; Load DS - ; - mov ax,KERNEL_DS - mov ds,ax - mov es,ax - - ; - ; Mask the related vector at the PIC - ; - in al,0xa1 - or al,1<<(%1-8) - out 0xa1,al - - ; - ; Call the irq dispatcher - ; - push dword %1 - call _KiInterruptDispatch - - ; - ; Restore stack, registers and return to the interrupted routine - ; - pop eax - - pop eax - - pop es - pop ds - popa - iret -%endmacro - - -IRQ_HANDLER_FIRST 0 -IRQ_HANDLER_FIRST 1 -IRQ_HANDLER_FIRST 2 -IRQ_HANDLER_FIRST 3 -IRQ_HANDLER_FIRST 4 -IRQ_HANDLER_FIRST 5 -IRQ_HANDLER_FIRST 6 -IRQ_HANDLER_FIRST 7 -IRQ_HANDLER_SECOND 8 -IRQ_HANDLER_SECOND 9 -IRQ_HANDLER_SECOND 10 -IRQ_HANDLER_SECOND 11 -IRQ_HANDLER_SECOND 12 -IRQ_HANDLER_SECOND 13 -IRQ_HANDLER_SECOND 14 -IRQ_HANDLER_SECOND 15 - -