I know this 6502
instruction looks like it'd be a breakpoint
, and it is used as such, but it's also used for system call
s in some operating system
s for 6502 machines.
- Function: Push flags (OR'd with 0x10 to distinguish BRK from an IRQ) and return address; set B bit of flags; jump to IRQ vector.
- Updates flags: None
- Cycles: 7
- Opcode numbers:
dp $00 (7 cycles)
Though BRK is a 2-byte instruction, some assemblers seem to think that BRK is a one-byte instruction. In such a case, write your syscalls like this:
See also: 6502 instructions | 6502 addressing modes