port-work; won't compile or even work
[ppcskel.git] / types.h
1 /*
2         BootMii - a Free Software replacement for the Nintendo/BroadOn bootloader.
3         Requires mini.
4
5 # This code is licensed to you under the terms of the GNU GPL, version 2;
6 # see file COPYING or http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt
7 */
8
9 #ifndef __TYPES_H__
10 #define __TYPES_H__
11
12 typedef unsigned char u8;
13 typedef unsigned short u16;
14 typedef unsigned int u32;
15 typedef unsigned long long u64;
16
17 typedef signed char s8;
18 typedef signed short s16;
19 typedef signed int s32;
20 typedef signed long long s64;
21
22 typedef volatile unsigned char vu8;
23 typedef volatile unsigned short vu16;
24 typedef volatile unsigned int vu32;
25 typedef volatile unsigned long long vu64;
26
27 typedef volatile signed char vs8;
28 typedef volatile signed short vs16;
29 typedef volatile signed int vs32;
30 typedef volatile signed long long vs64;
31
32 typedef unsigned int size_t;
33 typedef signed int ssize_t;
34
35 #define NULL ((void *)0)
36
37 /* These types must be 16-bit, 32-bit or larger integer */
38 typedef int                             INT;
39 typedef unsigned int    UINT;
40
41 /* These types must be 8-bit integer */
42 typedef signed char             CHAR;
43 typedef unsigned char   UCHAR;
44 typedef unsigned char   BYTE;
45
46 /* These types must be 16-bit integer */
47 typedef short                   SHORT;
48 typedef unsigned short  USHORT;
49 typedef unsigned short  WORD;
50 typedef unsigned short  WCHAR;
51
52 /* These types must be 32-bit integer */
53 typedef long                    LONG;
54 typedef unsigned long   ULONG;
55 typedef unsigned long   DWORD;
56
57 /* Boolean type */
58 typedef enum { FALSE = 0, TRUE } BOOL;
59
60 #endif
61