1/* REGISTER AND FLAG DEFINITIONS FOR LEXICAL ANALYSIS (PART OF ASSEMBLING) */ 2 3#ifndef __REGS_TOKEN 4#define __REGS_TOKEN 5 6/** if you permutate the FLAGS-defines or the REGISTER-defines **/ 7/** then update in regs.c *flag_name[N_FLAGS+1] and *reg_name[N_REGISTERS+1] **/ 8 9/*** all 8 Bit registers must preceed the 16-bit registers ! ***/ 10#define R_EMPTY 0 11#define R_A 1 12#define R_B 2 13#define R_C 3 14#define R_D 4 15#define R_E 5 16#define R_H 6 17#define R_L 7 18#define R_IXh 8 19#define R_IXl 9 20#define R_IYh 10 21#define R_IYl 11 22#define R_I 12 23#define R_R 13 24#define R_AF 14 25#define R_BC 15 26#define R_DE 16 27#define R_HL 17 28#define R_SP 18 29#define R_IX 19 30#define R_IY 20 31#define R_AF_ 21 /* used only in syntax for EX AF,AF' */ 32#define R_ILLEGAL -1 33 34#define N_8BIT_REGS 13 35#define N_REGISTERS 21 /* N_8BIT_REGS+1 is the first 16-bit register */ 36 37 38#define F_EMPTY 0 39#define F_NZ 8 40#define F_Z 1 41#define F_NC 2 42#define F_C 3 /* !! must be R_C, because symbol C is carry or C-register !!*/ 43#define F_PO 4 /* asm.c: inside convert_arg: convert(reg,.. convert(flag,.. */ 44#define F_PE 5 45#define F_P 6 46#define F_M 7 47 48#define F_H 9 49#define F_NH 10 50#define F_N 11 51#define F_NN 12 52#define F_ILLEGAL -1 53 54#define N_FLAGS 8 /* number of flags in table flag (used by jp, ret and call) */ 55 56#endif 57