Working on initializers

git-svn-id: svn://svn.cc65.org/cc65/trunk@411 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cuz
2000-10-30 20:48:11 +00:00
parent 3fde2841f1
commit 72e32b332b
8 changed files with 139 additions and 92 deletions

View File

@@ -49,34 +49,37 @@
/* Import size */
#define IMP_ABS 0x00 /* Import as normal value */
#define IMP_ZP 0x01 /* Import as zero page symbol */
#define IMP_MASK_SIZE 0x01 /* Size mask */
#define IMP_ABS 0x00 /* Import as normal value */
#define IMP_ZP 0x01 /* Import as zero page symbol */
#define IMP_MASK_SIZE 0x01 /* Size mask */
#define IS_IMP_ABS(x) (((x) & IMP_MASK_SIZE) == IMP_ABS)
#define IS_IMP_ZP(x) (((x) & IMP_MASK_SIZE) == IMP_ZP)
#define IS_IMP_ABS(x) (((x) & IMP_MASK_SIZE) == IMP_ABS)
#define IS_IMP_ZP(x) (((x) & IMP_MASK_SIZE) == IMP_ZP)
/* Export size */
#define EXP_ABS 0x00 /* Export as normal value */
#define EXP_ZP 0x01 /* Export as zero page value */
#define EXP_MASK_SIZE 0x01 /* Size mask */
#define EXP_ABS 0x00 /* Export as normal value */
#define EXP_ZP 0x20 /* Export as zero page value */
#define EXP_MASK_SIZE 0x20 /* Size mask */
#define IS_EXP_ABS(x) (((x) & EXP_MASK_SIZE) == EXP_ABS)
#define IS_EXP_ZP(x) (((x) & EXP_MASK_SIZE) == EXP_ZP)
#define IS_EXP_ZP(x) (((x) & EXP_MASK_SIZE) == EXP_ZP)
/* Export value type */
#define EXP_CONST 0x00 /* Mask bit for const values */
#define EXP_EXPR 0x02 /* Mask bit for expr values */
#define EXP_MASK_VAL 0x02 /* Value mask */
#define EXP_CONST 0x00 /* Mask bit for const values */
#define EXP_EXPR 0x40 /* Mask bit for expr values */
#define EXP_MASK_VAL 0x40 /* Value mask */
#define IS_EXP_CONST(x) (((x) & EXP_MASK_VAL) == EXP_CONST)
#define IS_EXP_EXPR(x) (((x) & EXP_MASK_VAL) == EXP_EXPR)
/* Export initializer flag */
#define EXP_INIT 0x04 /* Mask bit for initializer export */
#define EXP_MASK_INIT 0x04 /* Value mask */
#define EXP_INIT_MIN 0x01 /* Minimum value */
#define EXP_INIT_MAX 0x1F /* Maximum value */
#define EXP_INIT_DEF 0x18 /* Default value */
#define EXP_MASK_INIT 0x1F /* Initializer value mask */
#define IS_EXP_INIT(x) (((x) & EXP_MASK_INIT) == EXP_INIT)
#define IS_EXP_INIT(x) (((x) & EXP_MASK_INIT) != 0)
#define GET_EXP_INIT_VAL(x) ((x) & EXP_MASK_INIT)