X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fjaguar.h;h=d83cd6aec958139e58a19e4cb9d80e1780538bbf;hb=94e1e961b57f253b760298ab0bae96a7de6d20fa;hp=96d7b4c78a70c173bbcb2e4323d53b16b64c2f02;hpb=f95620384355f3db89f779e1e7be59260ecfc6ff;p=virtualjaguar diff --git a/src/jaguar.h b/src/jaguar.h index 96d7b4c..d83cd6a 100644 --- a/src/jaguar.h +++ b/src/jaguar.h @@ -2,6 +2,7 @@ #define __JAGUAR_H__ #include "types.h" +#include "memory.h" // For "UNKNOWN" enum void JaguarInit(void); void JaguarReset(void); @@ -23,33 +24,11 @@ void JaguarExecuteNew(void); // Exports from JAGUAR.CPP -extern uint8 jaguarMainRAM[]; -extern uint8 jaguarMainROM[]; -extern uint8 jaguarBootROM[]; -extern uint8 jaguarCDBootROM[]; extern bool BIOSLoaded; extern bool CDBIOSLoaded; extern int32 jaguarCPUInExec; extern uint32 jaguarMainROMCRC32, jaguarROMSize, jaguarRunAddress; extern char * jaguarEepromsPath; -extern const char * whoName[9]; - -// Some handy macros to help converting native endian to big endian (jaguar native) -// & vice versa - -#define SET64(r, a, v) r[(a)] = ((v) & 0xFF00000000000000) >> 56, r[(a)+1] = ((v) & 0x00FF000000000000) >> 48, \ - r[(a)+2] = ((v) & 0x0000FF0000000000) >> 40, r[(a)+3] = ((v) & 0x000000FF00000000) >> 32, \ - r[(a)+4] = ((v) & 0xFF000000) >> 24, r[(a)+5] = ((v) & 0x00FF0000) >> 16, \ - r[(a)+6] = ((v) & 0x0000FF00) >> 8, r[(a)+7] = (v) & 0x000000FF -#define GET64(r, a) (((uint64)r[(a)] << 56) | ((uint64)r[(a)+1] << 48) | \ - ((uint64)r[(a)+2] << 40) | ((uint64)r[(a)+3] << 32) | \ - ((uint64)r[(a)+4] << 24) | ((uint64)r[(a)+5] << 16) | \ - ((uint64)r[(a)+6] << 8) | (uint64)r[(a)+7]) -#define SET32(r, a, v) r[(a)] = ((v) & 0xFF000000) >> 24, r[(a)+1] = ((v) & 0x00FF0000) >> 16, \ - r[(a)+2] = ((v) & 0x0000FF00) >> 8, r[(a)+3] = (v) & 0x000000FF -#define GET32(r, a) ((r[(a)] << 24) | (r[(a)+1] << 16) | (r[(a)+2] << 8) | r[(a)+3]) -#define SET16(r, a, v) r[(a)] = ((v) & 0xFF00) >> 8, r[(a)+1] = (v) & 0xFF -#define GET16(r, a) ((r[(a)] << 8) | r[(a)+1]) // Various clock rates