aboutsummaryrefslogtreecommitdiff
path: root/bunny/src/io.rs
blob: 08d8c841822793eb4f2b28ba11451e7f2d011869 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use x86_64::instructions::port::{Port, PortWrite};

const PIC1             : u16 = 0x20;
const PIC2             : u16 = 0xa0;
#[allow(unused)]
pub const PIC1_COMMAND : u16 = PIC1;
pub const PIC1_DATA    : u16 = PIC1;
#[allow(unused)]
pub const PIC2_COMMAND : u16 = PIC2 + 1;
pub const PIC2_DATA    : u16 = PIC2 + 1;

pub const PIC_DISABLE  : u8 = 0xff;

#[inline(always)]
pub unsafe fn out<T: PortWrite>(port: u16, value: T) {
    let mut p = Port::new(port);
    p.write(value)
}