rustyboy/src/serial.rs
2016-06-02 13:22:35 +02:00

36 lines
807 B
Rust

#[derive(Default, Debug)]
pub struct Serial {
data: u8,
control: u8,
}
impl Serial {
pub fn new() -> Serial {
Serial::default()
}
pub fn write_byte(&mut self, addr: u16, val: u8) {
match addr {
0xFF01 => {
println!("Serial: Write {:02X}", val);
self.data = val;
}
0xFF02 => self.control = val,
_ => panic!("Serial: Write {:02X} to {:04X} unsupported", val, addr),
}
}
pub fn read_byte(&self, addr: u16) -> u8 {
match addr {
0xFF01 => self.data,
0xFF02 => self.control,
_ => panic!("Serial: Read from {:04X} unsupported", addr),
}
}
pub fn serial_interrupt(&self) -> bool {
// TODO
false
}
}