Digimon World 3 decomp
The European version, SLES_039.36
Loading...
Searching...
No Matches
include_asm.h
Go to the documentation of this file.
1
#ifndef INCLUDE_ASM_H
2
#define INCLUDE_ASM_H
3
4
#if !defined(M2CTX) && !defined(PERMUTER) && !defined(SKIP_ASM)
5
6
/*
7
* FOLDER is relative to the version's splat output, ASM_DIR (asm/<version>),
8
* which the Makefile defines: INCLUDE_ASM("main/nonmatchings/pad", NAME)
9
* includes asm/us/main/nonmatchings/pad/NAME.s when building VERSION=us.
10
*/
11
#ifndef ASM_DIR
12
#error "ASM_DIR is not defined: the Makefile gives it, as asm/<version>"
13
#endif
14
15
#ifndef INCLUDE_ASM
16
#define INCLUDE_ASM(FOLDER, NAME) \
17
__asm__( \
18
".section .text\n" \
19
" .set noat\n" \
20
" .set noreorder\n" \
21
" .include \"" ASM_DIR "/" FOLDER "/" #NAME ".s\"\n" \
22
" .set reorder\n" \
23
" .set at\n" \
24
)
25
#endif
26
#ifndef INCLUDE_RODATA
27
#define INCLUDE_RODATA(FOLDER, NAME) \
28
__asm__( \
29
".section .rodata\n" \
30
" .include \"" ASM_DIR "/" FOLDER "/" #NAME ".s\"\n" \
31
".section .text" \
32
)
33
#endif
34
35
#if defined(INCLUDE_ASM_USE_MACRO_INC) && INCLUDE_ASM_USE_MACRO_INC
36
__asm__(
".include \"include/macro.inc\"\n"
);
37
#else
38
__asm__(
".include \"include/labels.inc\"\n"
);
39
#endif
40
41
#else
42
43
#ifndef INCLUDE_ASM
44
#define INCLUDE_ASM(FOLDER, NAME)
45
#endif
46
#ifndef INCLUDE_RODATA
47
#define INCLUDE_RODATA(FOLDER, NAME)
48
#endif
49
50
#endif
/* !defined(M2CTX) && !defined(PERMUTER) */
51
52
#endif
/* INCLUDE_ASM_H */
include
include_asm.h
Generated by
1.9.8