m68k 0.1.5

A safe Rust M68000 family CPU emulator
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//! Interrupt handling.

use super::cpu::CpuCore;

impl CpuCore {
    /// Set pending interrupt level.
    pub fn set_irq(&mut self, level: u8) {
        self.int_level = (level & 7) as u32;
    }

    /// Check if an interrupt should be serviced.
    pub fn check_interrupts(&self) -> bool {
        let mask = self.int_mask >> 8;
        self.int_level == 7 || self.int_level > mask
    }
}