16 #ifndef __TAMTYPES_H__
17 #define __TAMTYPES_H__
19 #if !defined(_EE) && !defined(_IOP)
20 #error Either _EE or _IOP must be defined!
23 typedef unsigned char u8;
24 typedef unsigned short u16;
26 typedef volatile u8 vu8;
27 typedef volatile u16 vu16;
30 typedef unsigned int u32;
32 typedef unsigned long long u64;
34 typedef unsigned long u64;
38 typedef volatile u32 vu32;
39 typedef volatile u64 vu64;
44 typedef unsigned long u32;
45 typedef unsigned long long u64;
47 typedef volatile u32 vu32;
48 typedef volatile u64 vu64;
51 typedef signed char s8;
52 typedef signed short s16;
54 typedef volatile s8 vs8;
55 typedef volatile s16 vs16;
58 typedef signed int s32;
60 typedef signed long long s64;
62 typedef signed long s64;
66 typedef volatile s32 vs32;
67 typedef volatile s64 vs64;
72 typedef signed long s32;
73 typedef signed long long s64;
75 typedef volatile s32 vs32;
76 typedef volatile s64 vs64;
83 typedef volatile u32 vuiptr;
84 typedef volatile s32 vsiptr;
99 #define NULL (void *)0
102 static inline u8 _lb(u32 addr)
106 static inline u16 _lh(u32 addr) {
return *(vu16 *)addr; }
107 static inline u32 _lw(u32 addr) {
return *(vu32 *)addr; }
109 static inline void _sb(u8 val, u32 addr) { *(vu8 *)addr = val; }
110 static inline void _sh(u16 val, u32 addr) { *(vu16 *)addr = val; }
111 static inline void _sw(u32 val, u32 addr) { *(vu32 *)addr = val; }
114 static inline u64 _ld(u32 addr)
116 return *(vu64 *)addr;
118 static inline u128 _lq(u32 addr) {
return *(vu128 *)addr; }
119 static inline void _sd(u64 val, u32 addr) { *(vu64 *)addr = val; }
120 static inline void _sq(u128 val, u32 addr) { *(vu128 *)addr = val; }