177 lines
4.1 KiB
C
177 lines
4.1 KiB
C
|
#define RCSID3 "$Header$"
|
||
|
|
||
|
/*
|
||
|
* INTEL 8086 keywords
|
||
|
*/
|
||
|
|
||
|
0, R16, 0, "ax",
|
||
|
0, R16, 1, "cx",
|
||
|
0, R16, 2, "dx",
|
||
|
0, R16, 3, "bx",
|
||
|
0, R16, 4, "sp",
|
||
|
0, R16, 5, "bp",
|
||
|
0, R16, 6, "si",
|
||
|
0, R16, 7, "di",
|
||
|
0, R8, 0, "al",
|
||
|
0, R8, 1, "cl",
|
||
|
0, R8, 2, "dl",
|
||
|
0, R8, 3, "bl",
|
||
|
0, R8, 4, "ah",
|
||
|
0, R8, 5, "ch",
|
||
|
0, R8, 6, "dh",
|
||
|
0, R8, 7, "bh",
|
||
|
0, RSEG, 0, "es",
|
||
|
0, RSEG, 1, "cs",
|
||
|
0, RSEG, 2, "ss",
|
||
|
0, RSEG, 3, "ds",
|
||
|
0, PREFIX, 046, "eseg",
|
||
|
0, PREFIX, 056, "cseg",
|
||
|
0, PREFIX, 066, "sseg",
|
||
|
0, PREFIX, 076, "dseg",
|
||
|
0, PREFIX, 0360, "lock",
|
||
|
0, PREFIX, 0362, "rep",
|
||
|
0, PREFIX, 0362, "repne",
|
||
|
0, PREFIX, 0362, "repnz",
|
||
|
0, PREFIX, 0363, "repe",
|
||
|
0, PREFIX, 0363, "repz",
|
||
|
0, NOOP_1, 047, "daa",
|
||
|
0, NOOP_1, 057, "das",
|
||
|
0, NOOP_1, 067, "aaa",
|
||
|
0, NOOP_1, 077, "aas",
|
||
|
0, NOOP_1, 0220, "nop",
|
||
|
0, NOOP_1, 0230, "cbw",
|
||
|
0, NOOP_1, 0231, "cwd",
|
||
|
0, NOOP_1, 0233, "wait",
|
||
|
0, NOOP_1, 0234, "pushf",
|
||
|
0, NOOP_1, 0235, "popf",
|
||
|
0, NOOP_1, 0236, "sahf",
|
||
|
0, NOOP_1, 0237, "lahf",
|
||
|
0, NOOP_1, 0244, "movsb",
|
||
|
0, NOOP_1, 0245, "movs",
|
||
|
0, NOOP_1, 0246, "cmpsb",
|
||
|
0, NOOP_1, 0247, "cmps",
|
||
|
0, NOOP_1, 0252, "stosb",
|
||
|
0, NOOP_1, 0253, "stos",
|
||
|
0, NOOP_1, 0254, "lodsb",
|
||
|
0, NOOP_1, 0255, "lods",
|
||
|
0, NOOP_1, 0256, "scasb",
|
||
|
0, NOOP_1, 0257, "scas",
|
||
|
0, NOOP_1, 0316, "into",
|
||
|
0, NOOP_1, 0317, "iret",
|
||
|
0, NOOP_1, 0327, "xlat",
|
||
|
0, NOOP_1, 0364, "hlt",
|
||
|
0, NOOP_1, 0365, "cmc",
|
||
|
0, NOOP_1, 0370, "clc",
|
||
|
0, NOOP_1, 0371, "stc",
|
||
|
0, NOOP_1, 0372, "cli",
|
||
|
0, NOOP_1, 0373, "sti",
|
||
|
0, NOOP_1, 0374, "cld",
|
||
|
0, NOOP_1, 0375, "std",
|
||
|
0, NOOP_2, 0324+012<<8, "aam",
|
||
|
0, NOOP_2, 0325+012<<8, "aad",
|
||
|
0, JOP, 0340, "loopne",
|
||
|
0, JOP, 0340, "loopnz",
|
||
|
0, JOP, 0341, "loope",
|
||
|
0, JOP, 0341, "loopz",
|
||
|
0, JOP, 0342, "loop",
|
||
|
0, JOP, 0343, "jcxz",
|
||
|
0, JOP, 0160, "jo",
|
||
|
0, JOP, 0161, "jno",
|
||
|
0, JOP, 0162, "jb",
|
||
|
0, JOP, 0162, "jnae",
|
||
|
0, JOP, 0163, "jae",
|
||
|
0, JOP, 0163, "jnb",
|
||
|
0, JOP, 0164, "je",
|
||
|
0, JOP, 0164, "jz",
|
||
|
0, JOP, 0165, "jne",
|
||
|
0, JOP, 0165, "jnz",
|
||
|
0, JOP, 0166, "jbe",
|
||
|
0, JOP, 0166, "jna",
|
||
|
0, JOP, 0167, "ja",
|
||
|
0, JOP, 0167, "jnbe",
|
||
|
0, JOP, 0170, "js",
|
||
|
0, JOP, 0171, "jns",
|
||
|
0, JOP, 0172, "jp",
|
||
|
0, JOP, 0172, "jpe",
|
||
|
0, JOP, 0173, "jnp",
|
||
|
0, JOP, 0173, "jpo",
|
||
|
0, JOP, 0174, "jl",
|
||
|
0, JOP, 0174, "jnge",
|
||
|
0, JOP, 0175, "jge",
|
||
|
0, JOP, 0175, "jnl",
|
||
|
0, JOP, 0176, "jle",
|
||
|
0, JOP, 0176, "jng",
|
||
|
0, JOP, 0177, "jg",
|
||
|
0, JOP, 0177, "jnle",
|
||
|
0, PUSHOP, 0, "push",
|
||
|
0, PUSHOP, 1, "pop",
|
||
|
0, IOOP, 0344, "inb",
|
||
|
0, IOOP, 0345, "in",
|
||
|
0, IOOP, 0346, "outb",
|
||
|
0, IOOP, 0347, "out",
|
||
|
0, ADDOP, 000, "addb",
|
||
|
0, ADDOP, 001, "add",
|
||
|
0, ADDOP, 010, "orb",
|
||
|
0, ADDOP, 011, "or",
|
||
|
0, ADDOP, 020, "adcb",
|
||
|
0, ADDOP, 021, "adc",
|
||
|
0, ADDOP, 030, "sbbb",
|
||
|
0, ADDOP, 031, "sbb",
|
||
|
0, ADDOP, 040, "andb",
|
||
|
0, ADDOP, 041, "and",
|
||
|
0, ADDOP, 050, "subb",
|
||
|
0, ADDOP, 051, "sub",
|
||
|
0, ADDOP, 060, "xorb",
|
||
|
0, ADDOP, 061, "xor",
|
||
|
0, ADDOP, 070, "cmpb",
|
||
|
0, ADDOP, 071, "cmp",
|
||
|
0, ROLOP, 000, "rolb",
|
||
|
0, ROLOP, 001, "rol",
|
||
|
0, ROLOP, 010, "rorb",
|
||
|
0, ROLOP, 011, "ror",
|
||
|
0, ROLOP, 020, "rclb",
|
||
|
0, ROLOP, 021, "rcl",
|
||
|
0, ROLOP, 030, "rcrb",
|
||
|
0, ROLOP, 031, "rcr",
|
||
|
0, ROLOP, 040, "salb",
|
||
|
0, ROLOP, 040, "shlb",
|
||
|
0, ROLOP, 041, "sal",
|
||
|
0, ROLOP, 041, "shl",
|
||
|
0, ROLOP, 050, "shrb",
|
||
|
0, ROLOP, 051, "shr",
|
||
|
0, ROLOP, 070, "sarb",
|
||
|
0, ROLOP, 071, "sar",
|
||
|
0, INCOP, 000, "incb",
|
||
|
0, INCOP, 001, "inc",
|
||
|
0, INCOP, 010, "decb",
|
||
|
0, INCOP, 011, "dec",
|
||
|
0, NOTOP, 020, "notb",
|
||
|
0, NOTOP, 021, "not",
|
||
|
0, NOTOP, 030, "negb",
|
||
|
0, NOTOP, 031, "neg",
|
||
|
0, NOTOP, 040, "mulb",
|
||
|
0, NOTOP, 041, "mul",
|
||
|
0, NOTOP, 050, "imulb",
|
||
|
0, NOTOP, 051, "imul",
|
||
|
0, NOTOP, 060, "divb",
|
||
|
0, NOTOP, 061, "div",
|
||
|
0, NOTOP, 070, "idivb",
|
||
|
0, NOTOP, 071, "idiv",
|
||
|
0, CALLOP, 020+(0350<<8), "call",
|
||
|
0, CALLOP, 040+(0351<<8), "jmp",
|
||
|
0, CALFOP, 030+(0232<<8), "callf",
|
||
|
0, CALFOP, 050+(0352<<8), "jmpf",
|
||
|
0, LEAOP, 0215, "lea",
|
||
|
0, LEAOP, 0304, "les",
|
||
|
0, LEAOP, 0305, "lds",
|
||
|
0, ESC, 0, "esc",
|
||
|
0, INT, 0, "int",
|
||
|
0, RET, 0303, "ret",
|
||
|
0, RET, 0313, "retf",
|
||
|
0, XCHG, 0, "xchgb",
|
||
|
0, XCHG, 1, "xchg",
|
||
|
0, TEST, 0, "testb",
|
||
|
0, TEST, 1, "test",
|
||
|
0, MOV, 0, "movb",
|
||
|
0, MOV, 1, "mov",
|