X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=rmac.c;h=0ae0f6201b9b33c8f3d4f02a4cfd6918da1c9abc;hb=7d748dc6e2259984c9093c48d84ae1ed280632ad;hp=473f372cc4344f42d6c6956c41de6bb8023a7e99;hpb=5559ac02922836380db93969986836bb004c8b37;p=rmac diff --git a/rmac.c b/rmac.c index 473f372..0ae0f62 100644 --- a/rmac.c +++ b/rmac.c @@ -45,6 +45,10 @@ int dsp56001; // Assembling DSP 56001 code int list_fd; // File to write listing to int segpadsize; // Segment padding size int endian; // Host processor endianess (0 = LE, 1 = BE) +int *regbase; // Points to current DFA register table (base) +int *regtab; // Points to current DFA register table (tab) +int *regcheck; // Points to current DFA register table (check) +int *regaccept; // Points to current DFA register table (accept) char * objfname; // Object filename pointer char * firstfname; // First source filename char * cmdlnexec; // Executable name, pointer to ARGV[0] @@ -284,6 +288,11 @@ int ParseOptimization(char * optstring) return OK; } +extern int reg68base[53]; +extern int reg68tab[222]; +extern int reg68check[222]; +extern int reg68accept[222]; + // // Process command line arguments and do an assembly // @@ -321,6 +330,10 @@ int Process(int argc, char ** argv) dsp_orgmap[0].start = 0; // Initialize 56001 org initial address dsp_orgmap[0].memtype = ORG_P; // Initialize 56001 org start segment m6502 = 0; // 6502 mode off by default + regbase = reg68base; // Initialise DFA register tables + regtab = reg68tab; // Idem + regcheck = reg68check; // Idem + regaccept = reg68accept; // Idem // Initialize modules InitSymbolTable(); // Symbol table