/* */
/* */
/* */
-/* (C) 1998-2000 Ullrich von Bassewitz */
-/* Wacholderweg 14 */
-/* D-70597 Stuttgart */
-/* EMail: uz@musoftware.de */
+/* (C) 1998-2010 Ullrich von Bassewitz */
+/* Roemerstrasse 52 */
+/* D-70794 Filderstadt */
+/* EMail: uz@cc65.org */
/* */
/* */
/* This software is provided 'as-is', without any expressed or implied */
+#include "strbuf.h"
+
+
+
/*****************************************************************************/
/* Data */
/*****************************************************************************/
/* Config file tokens */
typedef enum {
CFGTOK_NONE,
- CFGTOK_INTCON,
- CFGTOK_STRCON,
- CFGTOK_IDENT,
+ CFGTOK_INTCON, /* Integer constant */
+ CFGTOK_STRCON, /* String constant */
+ CFGTOK_IDENT, /* Identifier */
+ CFGTOK_PLUS,
+ CFGTOK_MINUS,
+ CFGTOK_MUL,
+ CFGTOK_DIV,
+ CFGTOK_LPAR,
+ CFGTOK_RPAR,
CFGTOK_LCURLY,
CFGTOK_RCURLY,
CFGTOK_SEMI,
CFGTOK_LOAD,
CFGTOK_RUN,
CFGTOK_ALIGN,
+ CFGTOK_ALIGN_LOAD,
CFGTOK_OFFSET,
+ CFGTOK_OPTIONAL,
CFGTOK_RO,
CFGTOK_RW,
CFGTOK_BSS,
CFGTOK_ZP,
- CFGTOK_WPROT,
CFGTOK_O65,
CFGTOK_BIN,
CFGTOK_LUNIX,
CFGTOK_OSA65,
CFGTOK_CC65,
+ CFGTOK_OPENCBM,
CFGTOK_CONDES,
+ CFGTOK_STARTADDRESS,
+
+ CFGTOK_VALUE,
+ CFGTOK_WEAK,
+
CFGTOK_SEGMENT,
CFGTOK_LABEL,
CFGTOK_COUNT,
CFGTOK_CONSTRUCTOR,
CFGTOK_DESTRUCTOR,
+ CFGTOK_INTERRUPTOR,
CFGTOK_DECREASING,
- CFGTOK_INCREASING
+ CFGTOK_INCREASING,
+
+ CFGTOK_DEFAULT
} cfgtok_t;
/* Current token and attributes */
-#define CFG_MAX_IDENT_LEN 255
extern cfgtok_t CfgTok;
-extern char CfgSVal [CFG_MAX_IDENT_LEN+1];
+extern StrBuf CfgSVal;
extern unsigned long CfgIVal;
/* Error location */