diff options
| author | SND\weimingzhi_cp <SND\weimingzhi_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2010-05-07 04:31:29 +0000 |
|---|---|---|
| committer | SND\weimingzhi_cp <SND\weimingzhi_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97> | 2010-05-07 04:31:29 +0000 |
| commit | 2d5a9a02425951f4efed764d135be96867eb532f (patch) | |
| tree | d94be7649ef8ccb627df551ac69f5d4a6a941cb6 /libpcsxcore/psxmem.h | |
| parent | 6a4fd490f8c754883bee9468be8d35dc7a651cee (diff) | |
| download | pcsxr-2d5a9a02425951f4efed764d135be96867eb532f.tar.gz | |
preparing for refactor/cleanup, moved all definations into .c files, other minor cleanups. (Breaks Mac OS X and maybe windows as well for now, will fix later.)
git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@47542 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'libpcsxcore/psxmem.h')
| -rw-r--r-- | libpcsxcore/psxmem.h | 111 |
1 files changed, 55 insertions, 56 deletions
diff --git a/libpcsxcore/psxmem.h b/libpcsxcore/psxmem.h index 0af77f5c..535addba 100644 --- a/libpcsxcore/psxmem.h +++ b/libpcsxcore/psxmem.h @@ -24,11 +24,11 @@ #if defined(__BIGENDIAN__) -#define _SWAP16(b) ((((unsigned char*)&(b))[0]&0xff) | (((unsigned char*)&(b))[1]&0xff)<<8) -#define _SWAP32(b) ((((unsigned char*)&(b))[0]&0xff) | ((((unsigned char*)&(b))[1]&0xff)<<8) | ((((unsigned char*)&(b))[2]&0xff)<<16) | (((unsigned char*)&(b))[3]<<24)) +#define _SWAP16(b) ((((unsigned char *)&(b))[0] & 0xff) | (((unsigned char *)&(b))[1] & 0xff) << 8) +#define _SWAP32(b) ((((unsigned char *)&(b))[0] & 0xff) | ((((unsigned char *)&(b))[1] & 0xff) << 8) | ((((unsigned char *)&(b))[2] & 0xff) << 16) | (((unsigned char *)&(b))[3] << 24)) -#define SWAP16(v) ((((v)&0xff00)>>8) +(((v)&0xff)<<8)) -#define SWAP32(v) ((((v)&0xff000000ul)>>24) + (((v)&0xff0000ul)>>8) + (((v)&0xff00ul)<<8) +(((v)&0xfful)<<24)) +#define SWAP16(v) ((((v) & 0xff00) >> 8) +(((v) & 0xff) << 8)) +#define SWAP32(v) ((((v) & 0xff000000ul) >> 24) + (((v) & 0xff0000ul) >> 8) + (((v) & 0xff00ul)<<8) +(((v) & 0xfful) << 24)) #define SWAPu32(v) SWAP32((u32)(v)) #define SWAPs32(v) SWAP32((s32)(v)) @@ -45,94 +45,93 @@ #endif -s8 *psxM; +extern s8 *psxM; #define psxMs8(mem) psxM[(mem) & 0x1fffff] -#define psxMs16(mem) (SWAP16(*(s16*)&psxM[(mem) & 0x1fffff])) -#define psxMs32(mem) (SWAP32(*(s32*)&psxM[(mem) & 0x1fffff])) -#define psxMu8(mem) (*(u8*)&psxM[(mem) & 0x1fffff]) -#define psxMu16(mem) (SWAP16(*(u16*)&psxM[(mem) & 0x1fffff])) -#define psxMu32(mem) (SWAP32(*(u32*)&psxM[(mem) & 0x1fffff])) +#define psxMs16(mem) (SWAP16(*(s16 *)&psxM[(mem) & 0x1fffff])) +#define psxMs32(mem) (SWAP32(*(s32 *)&psxM[(mem) & 0x1fffff])) +#define psxMu8(mem) (*(u8 *)&psxM[(mem) & 0x1fffff]) +#define psxMu16(mem) (SWAP16(*(u16 *)&psxM[(mem) & 0x1fffff])) +#define psxMu32(mem) (SWAP32(*(u32 *)&psxM[(mem) & 0x1fffff])) #define psxMs8ref(mem) psxM[(mem) & 0x1fffff] -#define psxMs16ref(mem) (*(s16*)&psxM[(mem) & 0x1fffff]) -#define psxMs32ref(mem) (*(s32*)&psxM[(mem) & 0x1fffff]) -#define psxMu8ref(mem) (*(u8*) &psxM[(mem) & 0x1fffff]) -#define psxMu16ref(mem) (*(u16*)&psxM[(mem) & 0x1fffff]) -#define psxMu32ref(mem) (*(u32*)&psxM[(mem) & 0x1fffff]) +#define psxMs16ref(mem) (*(s16 *)&psxM[(mem) & 0x1fffff]) +#define psxMs32ref(mem) (*(s32 *)&psxM[(mem) & 0x1fffff]) +#define psxMu8ref(mem) (*(u8 *)&psxM[(mem) & 0x1fffff]) +#define psxMu16ref(mem) (*(u16 *)&psxM[(mem) & 0x1fffff]) +#define psxMu32ref(mem) (*(u32 *)&psxM[(mem) & 0x1fffff]) -s8 *psxP; +extern s8 *psxP; #define psxPs8(mem) psxP[(mem) & 0xffff] -#define psxPs16(mem) (SWAP16(*(s16*)&psxP[(mem) & 0xffff])) -#define psxPs32(mem) (SWAP32(*(s32*)&psxP[(mem) & 0xffff])) -#define psxPu8(mem) (*(u8*) &psxP[(mem) & 0xffff]) -#define psxPu16(mem) (SWAP16(*(u16*)&psxP[(mem) & 0xffff])) -#define psxPu32(mem) (SWAP32(*(u32*)&psxP[(mem) & 0xffff])) +#define psxPs16(mem) (SWAP16(*(s16 *)&psxP[(mem) & 0xffff])) +#define psxPs32(mem) (SWAP32(*(s32 *)&psxP[(mem) & 0xffff])) +#define psxPu8(mem) (*(u8 *)&psxP[(mem) & 0xffff]) +#define psxPu16(mem) (SWAP16(*(u16 *)&psxP[(mem) & 0xffff])) +#define psxPu32(mem) (SWAP32(*(u32 *)&psxP[(mem) & 0xffff])) #define psxPs8ref(mem) psxP[(mem) & 0xffff] -#define psxPs16ref(mem) (*(s16*)&psxP[(mem) & 0xffff]) -#define psxPs32ref(mem) (*(s32*)&psxP[(mem) & 0xffff]) -#define psxPu8ref(mem) (*(u8*) &psxP[(mem) & 0xffff]) -#define psxPu16ref(mem) (*(u16*)&psxP[(mem) & 0xffff]) -#define psxPu32ref(mem) (*(u32*)&psxP[(mem) & 0xffff]) +#define psxPs16ref(mem) (*(s16 *)&psxP[(mem) & 0xffff]) +#define psxPs32ref(mem) (*(s32 *)&psxP[(mem) & 0xffff]) +#define psxPu8ref(mem) (*(u8 *)&psxP[(mem) & 0xffff]) +#define psxPu16ref(mem) (*(u16 *)&psxP[(mem) & 0xffff]) +#define psxPu32ref(mem) (*(u32 *)&psxP[(mem) & 0xffff]) -s8 *psxR; +extern s8 *psxR; #define psxRs8(mem) psxR[(mem) & 0x7ffff] -#define psxRs16(mem) (SWAP16(*(s16*)&psxR[(mem) & 0x7ffff])) -#define psxRs32(mem) (SWAP32(*(s32*)&psxR[(mem) & 0x7ffff])) +#define psxRs16(mem) (SWAP16(*(s16 *)&psxR[(mem) & 0x7ffff])) +#define psxRs32(mem) (SWAP32(*(s32 *)&psxR[(mem) & 0x7ffff])) #define psxRu8(mem) (*(u8* )&psxR[(mem) & 0x7ffff]) -#define psxRu16(mem) (SWAP16(*(u16*)&psxR[(mem) & 0x7ffff])) -#define psxRu32(mem) (SWAP32(*(u32*)&psxR[(mem) & 0x7ffff])) +#define psxRu16(mem) (SWAP16(*(u16 *)&psxR[(mem) & 0x7ffff])) +#define psxRu32(mem) (SWAP32(*(u32 *)&psxR[(mem) & 0x7ffff])) #define psxRs8ref(mem) psxR[(mem) & 0x7ffff] #define psxRs16ref(mem) (*(s16*)&psxR[(mem) & 0x7ffff]) #define psxRs32ref(mem) (*(s32*)&psxR[(mem) & 0x7ffff]) -#define psxRu8ref(mem) (*(u8* )&psxR[(mem) & 0x7ffff]) +#define psxRu8ref(mem) (*(u8 *)&psxR[(mem) & 0x7ffff]) #define psxRu16ref(mem) (*(u16*)&psxR[(mem) & 0x7ffff]) #define psxRu32ref(mem) (*(u32*)&psxR[(mem) & 0x7ffff]) -s8 *psxH; +extern s8 *psxH; #define psxHs8(mem) psxH[(mem) & 0xffff] -#define psxHs16(mem) (SWAP16(*(s16*)&psxH[(mem) & 0xffff])) -#define psxHs32(mem) (SWAP32(*(s32*)&psxH[(mem) & 0xffff])) -#define psxHu8(mem) (*(u8*) &psxH[(mem) & 0xffff]) -#define psxHu16(mem) (SWAP16(*(u16*)&psxH[(mem) & 0xffff])) -#define psxHu32(mem) (SWAP32(*(u32*)&psxH[(mem) & 0xffff])) +#define psxHs16(mem) (SWAP16(*(s16 *)&psxH[(mem) & 0xffff])) +#define psxHs32(mem) (SWAP32(*(s32 *)&psxH[(mem) & 0xffff])) +#define psxHu8(mem) (*(u8 *)&psxH[(mem) & 0xffff]) +#define psxHu16(mem) (SWAP16(*(u16 *)&psxH[(mem) & 0xffff])) +#define psxHu32(mem) (SWAP32(*(u32 *)&psxH[(mem) & 0xffff])) #define psxHs8ref(mem) psxH[(mem) & 0xffff] -#define psxHs16ref(mem) (*(s16*)&psxH[(mem) & 0xffff]) -#define psxHs32ref(mem) (*(s32*)&psxH[(mem) & 0xffff]) -#define psxHu8ref(mem) (*(u8*) &psxH[(mem) & 0xffff]) -#define psxHu16ref(mem) (*(u16*)&psxH[(mem) & 0xffff]) -#define psxHu32ref(mem) (*(u32*)&psxH[(mem) & 0xffff]) +#define psxHs16ref(mem) (*(s16 *)&psxH[(mem) & 0xffff]) +#define psxHs32ref(mem) (*(s32 *)&psxH[(mem) & 0xffff]) +#define psxHu8ref(mem) (*(u8 *)&psxH[(mem) & 0xffff]) +#define psxHu16ref(mem) (*(u16 *)&psxH[(mem) & 0xffff]) +#define psxHu32ref(mem) (*(u32 *)&psxH[(mem) & 0xffff]) -u8** psxMemWLUT; -u8** psxMemRLUT; +extern u8 **psxMemWLUT; +extern u8 **psxMemRLUT; #define PSXM(mem) (psxMemRLUT[(mem) >> 16] == 0 ? NULL : (u8*)(psxMemRLUT[(mem) >> 16] + ((mem) & 0xffff))) #define PSXMs8(mem) (*(s8 *)PSXM(mem)) -#define PSXMs16(mem) (SWAP16(*(s16*)PSXM(mem))) -#define PSXMs32(mem) (SWAP32(*(s32*)PSXM(mem))) +#define PSXMs16(mem) (SWAP16(*(s16 *)PSXM(mem))) +#define PSXMs32(mem) (SWAP32(*(s32 *)PSXM(mem))) #define PSXMu8(mem) (*(u8 *)PSXM(mem)) -#define PSXMu16(mem) (SWAP16(*(u16*)PSXM(mem))) -#define PSXMu32(mem) (SWAP32(*(u32*)PSXM(mem))) +#define PSXMu16(mem) (SWAP16(*(u16 *)PSXM(mem))) +#define PSXMu32(mem) (SWAP32(*(u32 *)PSXM(mem))) -#define PSXMu32ref(mem) (*(u32*)PSXM(mem)) +#define PSXMu32ref(mem) (*(u32 *)PSXM(mem)) #if !defined(PSXREC) && (defined(__x86_64__) || defined(__i386__) || defined(__ppc__)) && !defined(NOPSXREC) #define PSXREC #endif -int psxMemInit(); +int psxMemInit(); void psxMemReset(); void psxMemShutdown(); -u8 psxMemRead8 (u32 mem); -u16 psxMemRead16(u32 mem); -u32 psxMemRead32(u32 mem); +u8 psxMemRead8 (u32 mem); +u16 psxMemRead16(u32 mem); +u32 psxMemRead32(u32 mem); void psxMemWrite8 (u32 mem, u8 value); void psxMemWrite16(u32 mem, u16 value); void psxMemWrite32(u32 mem, u32 value); void *psxMemPointer(u32 mem); -#endif /* __PSXMEMORY_H__ */ - +#endif |
