rustyboy/src/serial.rs
2017-01-17 17:56:11 +01:00

36 lines
810 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
}
}