GBDK 2020 Docs
4.2.0
API Documentation for GBDK 2020
incbin.h
Go to the documentation of this file.
1
10
#ifndef _INCBIN_H
11
#define _INCBIN_H
12
13
#include <
stdint.h
>
14
15
25
#define INCBIN_EXTERN(VARNAME) extern const uint8_t VARNAME[]; \
26
extern const void __size_ ## VARNAME; \
27
extern const void __bank_ ## VARNAME;
28
37
#define INCBIN_SIZE(VARNAME) ( (uint16_t) & __size_ ## VARNAME )
38
47
#ifndef BANK
48
#define BANK(VARNAME) ( (uint8_t) & __bank_ ## VARNAME )
49
#endif
50
68
#define INCBIN(VARNAME, FILEPATH) void __func_ ## VARNAME(void) __banked __naked { \
69
__asm \
70
_ ## VARNAME:: \
71
1$: \
72
.incbin FILEPATH \
73
2$: \
74
___size_ ## VARNAME = (2$-1$) \
75
.globl ___size_ ## VARNAME \
76
.local b___func_ ## VARNAME \
77
___bank_ ## VARNAME = b___func_ ## VARNAME \
78
.globl ___bank_ ## VARNAME \
79
__endasm; \
80
}
81
82
#endif
// _INCBIN_H
stdint.h