summary refs log tree commit diff
path: root/pc-thing/instructions_new/xor.ts
blob: 135e1cf23de2e078727b6a6933e8175fc1a29992 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
import { PC } from "../pc.ts";

export default {
    function(this: PC, [reg1, reg2, reg3]: number[]) {
        const r1 = this.lib.parseReg(reg1);
        const r2 = this.lib.parseReg(reg2);
        const r3 = this.lib.parseReg(reg3);
        this.returnFlag = +((this.registers[r2] ^ this.registers[r3]) != 0);
        this.registers[r1] = this.registers[r2] ^ this.registers[r3];
    },
    args: 3
}