/* REGISTER AND FLAG DEFINITIONS FOR LEXICAL ANALYSIS (PART OF ASSEMBLING) */ #ifndef __REGS_TOKEN #define __REGS_TOKEN /** if you permutate the FLAGS-defines or the REGISTER-defines **/ /** then update in regs.c *flag_name[N_FLAGS+1] and *reg_name[N_REGISTERS+1] **/ /*** all 8 Bit registers must preceed the 16-bit registers ! ***/ #define R_EMPTY 0 #define R_A 1 #define R_B 2 #define R_C 3 #define R_D 4 #define R_E 5 #define R_H 6 #define R_L 7 #define R_IXh 8 #define R_IXl 9 #define R_IYh 10 #define R_IYl 11 #define R_I 12 #define R_R 13 #define R_AF 14 #define R_BC 15 #define R_DE 16 #define R_HL 17 #define R_SP 18 #define R_IX 19 #define R_IY 20 #define R_AF_ 21 /* used only in syntax for EX AF,AF' */ #define R_ILLEGAL -1 #define N_8BIT_REGS 13 #define N_REGISTERS 21 /* N_8BIT_REGS+1 is the first 16-bit register */ #define F_EMPTY 0 #define F_NZ 8 #define F_Z 1 #define F_NC 2 #define F_C 3 /* !! must be R_C, because symbol C is carry or C-register !!*/ #define F_PO 4 /* asm.c: inside convert_arg: convert(reg,.. convert(flag,.. */ #define F_PE 5 #define F_P 6 #define F_M 7 #define F_H 9 #define F_NH 10 #define F_N 11 #define F_NN 12 #define F_ILLEGAL -1 #define N_FLAGS 8 /* number of flags in table flag (used by jp, ret and call) */ #endif