180 lines
		
	
	
	
		
			4.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			180 lines
		
	
	
	
		
			4.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
 | |
|  * See the copyright notice in the ACK home directory, in the file "Copyright".
 | |
|  */
 | |
| #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",
 |