24 lines
445 B
C
24 lines
445 B
C
|
#include <system.h>
|
||
|
#include "pic.h"
|
||
|
|
||
|
void i86_pic_remap(int pic1, int pic2)
|
||
|
{
|
||
|
// Send ICW1
|
||
|
outportb(0x20, 0x11);
|
||
|
outportb(0xA0, 0x11);
|
||
|
|
||
|
// send ICW2
|
||
|
outportb(0x21, pic1); // remap pics
|
||
|
outportb(0xA1, pic2);
|
||
|
|
||
|
// send ICW3
|
||
|
outportb(0x21, 4);
|
||
|
outportb(0xA1, 2);
|
||
|
|
||
|
// Send ICW4
|
||
|
outportb(0x21, 0x01);
|
||
|
outportb(0xA1, 0x01);
|
||
|
|
||
|
outportb(0x21, 0x00);
|
||
|
}
|