예제 #1
0
파일: pit.c 프로젝트: Rhoin/RhKernel
void pit_init()
{
	int32_t div = 1193180 / 10;
	outportb(PIT_CMD, PIT_BINARY|PIT_MODE3|PIT_RW_BOTH|PIT_COUNTER0);
	outportb(PIT_CHANNEL0, div & 0xFF);
	outportb(PIT_CHANNEL0, div >> 8);
	irq_installHandler(IRQ0, &pit_handler);
}
예제 #2
0
void keyboard_install(void)
{
    irq_installHandler(IRQ_KEYBOARD, keyboard_handler); // Installs 'keyboard_handler' to IRQ_KEYBOARD

    while (inportb(0x64) & 1) // wait until buffer is empty
    {
        inportb(0x60);
    }
}
예제 #3
0
파일: timer.c 프로젝트: davekessener/Kernel
void timer_install(void)
{
	set_timer_phase(100);

	irq_installHandler(INT_CLOCK, timer_handler);
}