nibble8 0.2.0

Yet another Rust implementation of a Chip-8 interpreter, using sdl2.
pub fn get_bit_from_byte(bit: usize, byte: &u8) -> bool {
    let mask = 0b10000000 >> bit;
    let value = (byte & mask) >> (7 - bit);
    value == 1
}

#[cfg(test)]
mod test {
    use super::*;

    #[test]
    fn it_works() {
        let byte = 0b11011100;
        assert_eq!(get_bit_from_byte(0, &byte), true);
        assert_eq!(get_bit_from_byte(1, &byte), true);
        assert_eq!(get_bit_from_byte(2, &byte), false);
        assert_eq!(get_bit_from_byte(3, &byte), true);
        assert_eq!(get_bit_from_byte(4, &byte), true);
        assert_eq!(get_bit_from_byte(5, &byte), true);
        assert_eq!(get_bit_from_byte(6, &byte), false);
        assert_eq!(get_bit_from_byte(7, &byte), false);
    }
}