windows-nt/Source/XPSP1/NT/sdktools/masm/asmtab.h
2020-09-26 16:20:57 +08:00

52 lines
991 B
C

/* asmtab.h -- include file for microsoft 80x86 assembler
**
** microsoft (r) macro assembler
** copyright (c) microsoft corp 1986. all rights reserved
**
** randy nevin
*/
#define NOTFOUND ((USHORT)-1)
#define KEYWORDS struct s_ktab
#define KEYSYM struct s_key
struct segp {
USHORT index;
char type;
};
struct opcentry {
UCHAR opcb;
UCHAR mr;
char opct;
char cpumask;
};
/* masks and flags to extract operand reference types */
#define F_W 0x40 /* first operand is write */
#define S_W 0x20 /* second operand is write */
struct pseudo {
char type;
char kind;
};
KEYWORDS {
KEYSYM FARSYM * FARSYM *kt_table; /* ptr to hash table */
int kt_size; /* size of hash table */
};
KEYSYM {
KEYSYM FARSYM *k_next; /* pointer to next ident */
char FARSYM *k_name; /* pointer to name */
USHORT k_hash; /* actual hash value */
USHORT k_token; /* token type. note more than 255 opcodes */
};
USHORT CODESIZE iskey PARMS((struct s_ktab FAR *));