//
-// RMAC - Reboot's Macro Assembler for the Atari Jaguar Console System
+// RMAC - Reboot's Macro Assembler for all Atari computers
// TOKEN.H - Token Handling
-// Copyright (C) 199x Landon Dyer, 2017 Reboot and Friends
+// Copyright (C) 199x Landon Dyer, 2011-2017 Reboot and Friends
// RMAC derived from MADMAC v1.07 Written by Landon Dyer, 1986
// Source utilised with the kind permission of Landon Dyer
//
#define IFENT struct _ifent
// Tunable definitions
-#define LNSIZ 256 // Maximum size of a line of text
+#define LNSIZ 1024 // Maximum size of a line of text
#define TOKBUFSIZE 400 // Size of token-line buffer
#define QUANTUM 4096L // # bytes to eat at a time from a file
#define LNBUFSIZ (QUANTUM*2) // Size of file's buffer
#define DOTW 'W' // .w or .W
#define DOTL 'L' // .l or .L
#define DOTI 'I' // .l or .L
+#define DOTX 'X' // .x or .X
+#define DOTD 'D' // .d or .D
+#define DOTP 'P' // .p or .P
+#define DOTQ 'Q' // .q or .Q (essentially an alias for P)
#define ENDEXPR 'E' // End of expression
// ^^ operators
#define MULTX 64 // Multiple-character tokens
#define DOT 128 // [bwlsBWSL] for what follows a `.'
-// "special" string types
-#define NORMAL 0 // Standard for PC/ST/whatever
-#define A8INT 1 // Atari 800 ATASCII translation
-#define PETSCII 2 // lol
-#define ORICSCII 3 // lolol
-
// Conditional assembly structures
IFENT {
IFENT * if_prev; // Ptr prev .if state block (or NULL)
// Exported variables
extern int lnsave;
-extern int curlineno;
+extern uint16_t curlineno;
extern char * curfname;
extern WORD cfileno;
extern TOKEN * tok;
extern INOBJ * cur_inobj;
extern int mjump_align;
extern char * string[];
-extern int stringtype;
// Exported functions
int include(int, char *);