You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
1.2 KiB

#include<linux/config.h>
.globl mouse_interrupt
mouse_interrupt:
pushl %eax
pushl %ebx
pushl %ecx
pushl %edx
push %ds
movl $0x10,%eax
mov %ax,%ds #call
#inb %ax,%ds
#call readmouse #c
#$0x60,inb
#AL
#
xor %eax,%eax
inb $0x60,%al
pushl %eax
call readmouse
addl $4,%esp
xor %eax,%eax
inb $0x60,%al
pushl %eax
call readmouse
addl $4,%esp
xor %eax,%eax
inb $0x60,%al #
pushl %eax
call readmouse
addl $4,%esp
xor %eax,%eax
inb $0x60,%al
pushl %eax
call readmouse
addl $4,%esp
#mouse_interupt 8259A(EOI)
movb $0x20,%al
outb %al,$0xA0
outb %al,$0x20
pop %ds
popl %edx
popl %ecx
popl %ebx
popl %eax
iret