GBDK 2020 Docs  4.1.1
API Documentation for GBDK 2020
types.h
Go to the documentation of this file.
1 
4 #ifndef ASM_TYPES_INCLUDE
5 #define ASM_TYPES_INCLUDE
6 
7 #if defined(__PORT_sm83)
8 #include <asm/sm83/types.h>
9 #elif defined(__PORT_z80)
10 #include <asm/z80/types.h>
11 #elif defined(__PORT_mos6502)
12 #include <asm/mos6502/types.h>
13 #else
14 #error Unrecognised port
15 #endif
16 
17 #ifndef OLDCALL
18 #if __SDCC_REVISION >= 12608
19 #define OLDCALL __sdcccall(0)
20 #else
21 #define OLDCALL
22 #endif
23 #endif
24 
25 #ifdef __SDCC
26 #define PRESERVES_REGS(...) __preserves_regs(__VA_ARGS__)
27 #define NAKED __naked
28 #define SFR __sfr
29 #define AT(A) __at(A)
30 #else
31 #define PRESERVES_REGS(...)
32 #define NAKED
33 #define SFR
34 #define AT(A)
35 #endif
36 
37 #ifndef NONBANKED
38 #define NONBANKED
39 #endif
40 #ifndef BANKED
41 #define BANKED
42 #endif
43 #ifndef CRITICAL
44 #define CRITICAL
45 #endif
46 #ifndef INTERRUPT
47 #define INTERRUPT
48 #endif
49 
53 typedef INT8 BOOLEAN;
54 
57 typedef INT8 BYTE;
60 typedef UINT8 UBYTE;
62 typedef INT16 WORD;
64 typedef UINT16 UWORD;
66 typedef INT32 LWORD;
68 typedef UINT32 ULWORD;
70 typedef INT32 DWORD;
72 typedef UINT32 UDWORD;
73 
80 typedef union _fixed {
81  struct {
84  };
85  struct {
86  UBYTE l;
87  UBYTE h;
88  } b;
91 
92 #endif
unsigned long UINT32
Definition: types.h:61
signed int INT16
Definition: types.h:52
signed long INT32
Definition: types.h:58
signed char INT8
Definition: types.h:46
unsigned int UINT16
Definition: types.h:55
unsigned char UINT8
Definition: types.h:49
INT8 BYTE
Definition: types.h:57
UINT8 UBYTE
Definition: types.h:60
UINT32 UDWORD
Definition: types.h:72
INT8 BOOLEAN
Definition: types.h:53
INT32 LWORD
Definition: types.h:66
UINT32 ULWORD
Definition: types.h:68
UINT16 UWORD
Definition: types.h:64
union _fixed fixed
INT16 WORD
Definition: types.h:62
INT32 DWORD
Definition: types.h:70
Definition: types.h:80
UWORD w
Definition: types.h:89
struct _fixed::@2 b
UBYTE l
Definition: types.h:82
UBYTE h
Definition: types.h:83