driver.cpp

来自「Jazmyn is a 32-bit, protected mode, mult」· C++ 代码 · 共 65 行

CPP
65
字号
/*
 * Copyright (C) 2004, Thejesh AP. All rights reserved.
 */

#include <sys\types.h>
#include <stdlib.h>
#include <drivers\driver.h>

driver::driver(char* name)
{
        this->name = name;
}

driver::~driver()
{

}

void driver::enable_irq(int irq)
{
        byte val;
        if(irq>=0 && irq<=7)
        {
                val = inportb(0x21);
                val = val & ~(1<<irq);
                outportb(0x21,val);
        }
        else
        {
                irq = irq - 8;
                val = inportb(0xa1);
                val = val & ~(1<<irq);
                outportb(0xa1,val);
        }
        
}

void driver::disable_irq(int irq)
{
	  byte val;
        if(irq>=0 && irq<=7)
        {
                val = inportb(0x21);
                val = val | (1<<irq);
                outportb(0x21,val);
        }
        else
        {
                irq = irq - 8;
                val = inportb(0xa1);
                val = val | (1<<irq);
                outportb(0xa1,val);
        }
}

disk_driver::disk_driver(char *name,int type):driver(name)
{
	disk_type = type;
}

disk_driver::~disk_driver()
{

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?