fn brk(&mut self) -> bool {
        self.pc += 1;
        self.flags.set(Flags::I, true);

        self.push(((self.pc >> 8) & 0x00FF) as u8);
        self.push((self.pc & 0x00FF) as u8);

        // we're pushing the status flag in a S/W context
        self.flags.set(Flags::B, true);

        todo!()
    }
// BRK: Force break
// BRK initiates a software interrupt similar to a hardware
// interrupt (IRQ). The return address pushed to the stack is
// PC + 2
// https://wiki.nesdev.org/w/index.php?title=CPU_interrupts
Force break
BRK initiates a software interrupt similar to a hardware
interrupt (IRQ).
Force break BRK initiates a software interrupt similar to a hardware interrupt ( IRQ ) .
fn brk(&mut self) -> bool {
        self.pc += 1;
        self.flags.set(Flags::I, true);
        self.push(((self.pc >> 8) & 0x00FF) as u8);
        self.push((self.pc & 0x00FF) as u8);
        // we're pushing the status flag in a S/W context
        self.flags.set(Flags::B, true);
        todo!()
    }
fn brk ( & mut self ) -> bool { self . pc += 1 ; self . flags . set ( Flags :: I , true ) ; self . push ( ( ( self . pc >> 8 ) & 0x00FF ) as u8 ) ; self . push ( ( self . pc & 0x00FF ) as u8 ) ; // we're pushing the status flag in a S/W context self . flags . set ( Flags :: B , true ) ; todo ! ( ) }
BRK: Force break
BRK initiates a software interrupt similar to a hardware
interrupt (IRQ).
BRK : Force break BRK initiates a software interrupt similar to a hardware interrupt ( IRQ ) .
&mut self