X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=rmac.h;h=44ed972d9e97e4493ea8ea4e7e8d563f7e6b0fcd;hb=e298f2149d654ec5c5db99f96066ec62d77f8550;hp=a23acafd77a251bf76c4254c3c01af917c995448;hpb=1df6df8dae6679e81b24a547bfc491474117391c;p=rmac diff --git a/rmac.h b/rmac.h index a23acaf..44ed972 100644 --- a/rmac.h +++ b/rmac.h @@ -259,38 +259,11 @@ PTR #define SIZP 0x0080 // .p (FPU pakced decimal real) #define SIZQ 0x0100 // .q (quad word) -// RISC register bank definitions (used in extended symbol attributes also) -#define BANK_N 0x0000 // No register bank specified -#define BANK_0 0x0001 // Register bank zero specified -#define BANK_1 0x0002 // Register bank one specified #define EQUATEDREG 0x0008 // Equated register symbol #define UNDEF_EQUR 0x0010 #define EQUATEDCC 0x0020 #define UNDEF_CC 0x0040 -// Construct binary constants at compile time -// Code by Tom Torfs - -// Helper macros -#define HEX__(n) 0x##n##LU -#define B8__(x) \ - ((x&0x0000000FLU)?1:0) \ -+((x&0x000000F0LU)?2:0) \ -+((x&0x00000F00LU)?4:0) \ -+((x&0x0000F000LU)?8:0) \ -+((x&0x000F0000LU)?16:0) \ -+((x&0x00F00000LU)?32:0) \ -+((x&0x0F000000LU)?64:0) \ -+((x&0xF0000000LU)?128:0) - -// User macros -#define B8(d) ((uint8_t)B8__(HEX__(d))) -#define B16(dmsb,dlsb) (((uint16_t)B8(dmsb)<<8) + B8(dlsb)) -#define B32(dmsb,db2,db3,dlsb) (((uint32_t)B8(dmsb)<<24) \ -+ ((uint32_t)B8(db2)<<16) \ -+ ((uint32_t)B8(db3)<<8) \ -+ B8(dlsb)) - // Optimisation defines enum { @@ -321,7 +294,6 @@ extern int robjproc; extern int dsp56001; extern int err_flag; extern int err_fd; -extern int regbank; extern char * firstfname; extern int list_fd; extern int list_pag; @@ -339,6 +311,10 @@ extern int activecpu; extern int activefpu; extern uint32_t org68k_address; extern int org68k_active; +extern int *regbase; +extern int *regtab; +extern int *regcheck; +extern int *regaccept; // Exported functions void strtoupper(char * s);