//
-// RMAC - Reboot's Macro Assembler for all Atari computers
+// RMAC - Renamed Macro Assembler for all Atari computers
// SECT.H - Code Generation, Fixups and Section Management
-// Copyright (C) 199x Landon Dyer, 2011-2019 Reboot and Friends
+// Copyright (C) 199x Landon Dyer, 2011-2021 Reboot and Friends
// RMAC derived from MADMAC v1.07 Written by Landon Dyer, 1986
// Source utilized with the kind permission of Landon Dyer
//
#define D_ZEROFILL(n) {chcheck(n); memset(chptr, 0, n); chptr+=n; sloc+=n; \
ch_size+=n; if (orgactive) orgaddr+=n;}
-#define NSECTS 16 // Max. number of sections
+//OK, this is bad, mmkay? The constants defined in rmac.h are used as indices into an array which means that this was never meant to be defined this way--at least if it was, it was a compromise that has come home to bite us all in the ass. !!! FIX !!!
+//#define NSECTS 16 // Max. number of sections
+#define NSECTS 256 // Max. number of sections
// Tunable (storage) definitions
#define CH_THRESHOLD 32 // Minimum amount of space in code chunk
#define FU_SEXT 0x0010 // Ok to sign extend
#define FU_PCREL 0x0020 // Subtract PC first
+#define FU_PCRELX 0x1000000 // 030 variant
#define FU_EXPR 0x0040 // Expression (not symbol) follows
#define FU_GLOBAL 0x0080 // Mark global symbol