Repository URL to install this package:
|
Version:
9.0~240925-3.fc42 ▾
|
idapro-debugsource
/
usr
/
src
/
debug
/
idapro-9.0~240925-3.fc42.x86_64
/
module
/
kr1878
/
ins.cpp
|
|---|
#include "kr1878.hpp"
const instruc_t Instructions[] =
{
{ "", 0 }, // Unknown Operation
{ "mov", CF_USE2|CF_CHG1 },
{ "cmp", CF_USE1|CF_USE2 }, // Compare
{ "add", CF_USE1|CF_USE2|CF_CHG1 }, // Addition
{ "sub", CF_USE1|CF_USE2|CF_CHG1 }, // Subtract
{ "and", CF_USE1|CF_USE2|CF_CHG1 }, // Logical AND
{ "or", CF_USE1|CF_USE2|CF_CHG1 }, // Logical Inclusive OR
{ "xor", CF_USE1|CF_USE2|CF_CHG1 }, // Logical Exclusive OR
{ "movl", CF_USE2|CF_CHG1 },
{ "cmpl", CF_USE1|CF_USE2 }, // Compare
{ "addl", CF_USE1|CF_USE2|CF_CHG1 }, // Addition
{ "subl", CF_USE1|CF_USE2|CF_CHG1 }, // Subtract
{ "bic", CF_USE1|CF_USE2|CF_CHG1 },
{ "bis", CF_USE1|CF_USE2|CF_CHG1 },
{ "btg", CF_USE1|CF_USE2|CF_CHG1 },
{ "btt", CF_USE1|CF_USE2|CF_CHG1 },
{ "swap", CF_USE1|CF_CHG1 },
{ "neg", CF_USE1|CF_CHG1 },
{ "not", CF_USE1|CF_CHG1 },
{ "shl", CF_USE1|CF_CHG1 }, // Shift Left
{ "shr", CF_USE1|CF_CHG1 }, // Shift Right
{ "shra", CF_USE1|CF_CHG1 }, // Arithmetic Shift Right
{ "rlc", CF_USE1|CF_CHG1 }, // Rotate Left
{ "rrc", CF_USE1|CF_CHG1 }, // Rotate Right
{ "adc", CF_USE1|CF_CHG1 }, // Add with Carry
{ "sbc", CF_USE1|CF_CHG1 }, // Subtract with Carry
{ "ldr", CF_USE2|CF_CHG1 },
{ "mtpr", CF_USE2|CF_CHG1 },
{ "mfpr", CF_USE2|CF_CHG1 },
{ "push", CF_USE1 },
{ "pop", CF_CHG1 },
{ "sst", CF_USE1 },
{ "cst", CF_USE1 },
{ "tof", 0 },
{ "tdc", 0 },
{ "jmp", CF_USE1|CF_STOP|CF_JUMP }, // Jump
{ "jsr", CF_USE1|CF_CALL }, // Jump to Subroutine
{ "jnz", CF_USE1|CF_JUMP }, // Jump
{ "jz", CF_USE1|CF_JUMP }, // Jump
{ "jns", CF_USE1|CF_JUMP }, // Jump
{ "js", CF_USE1|CF_JUMP }, // Jump
{ "jnc", CF_USE1|CF_JUMP }, // Jump
{ "jc", CF_USE1|CF_JUMP }, // Jump
{ "ijmp", CF_STOP }, // Jump
{ "ijsr", CF_STOP }, // Jump to Subroutine
{ "rts", CF_STOP }, // Return from Subroutine
{ "rtsc", CF_USE1|CF_STOP }, // Return from Subroutine
{ "rti", CF_STOP }, // Return from Interrupt
{ "nop", 0 }, // No Operation
{ "wait", 0 },
{ "stop", 0 },
{ "reset", 0 },
{ "sksp", 0 },
};
CASSERT(qnumber(Instructions) == KR1878_last);