2019-09-09 03:26:46 +02:00
|
|
|
TOOLCHAIN := $(DEVKITARM)
|
|
|
|
COMPARE ?= 0
|
|
|
|
|
2020-12-16 19:29:02 +01:00
|
|
|
ifeq ($(CC),)
|
|
|
|
HOSTCC := gcc
|
|
|
|
else
|
|
|
|
HOSTCC := $(CC)
|
|
|
|
endif
|
2019-09-09 03:26:46 +02:00
|
|
|
|
2020-12-16 19:29:02 +01:00
|
|
|
ifeq ($(CXX),)
|
|
|
|
HOSTCXX := g++
|
|
|
|
else
|
|
|
|
HOSTCXX := $(CXX)
|
2019-09-09 03:26:46 +02:00
|
|
|
endif
|
2020-11-25 16:37:50 +01:00
|
|
|
|
2020-12-16 19:29:02 +01:00
|
|
|
ifneq (,$(wildcard $(TOOLCHAIN)/base_tools))
|
|
|
|
include $(TOOLCHAIN)/base_tools
|
|
|
|
else
|
|
|
|
export PATH := $(TOOLCHAIN)/bin:$(PATH)
|
2020-11-25 16:37:50 +01:00
|
|
|
PREFIX := arm-none-eabi-
|
|
|
|
OBJCOPY := $(PREFIX)objcopy
|
2020-12-16 19:29:02 +01:00
|
|
|
export CC := $(PREFIX)gcc
|
|
|
|
export AS := $(PREFIX)as
|
|
|
|
endif
|
|
|
|
export CPP := $(PREFIX)cpp
|
|
|
|
export LD := $(PREFIX)ld
|
2020-11-25 16:37:50 +01:00
|
|
|
|
2019-09-09 03:26:46 +02:00
|
|
|
ifeq ($(OS),Windows_NT)
|
|
|
|
EXE := .exe
|
|
|
|
else
|
|
|
|
EXE :=
|
|
|
|
endif
|
|
|
|
|
|
|
|
ASFLAGS := -mcpu=arm7tdmi
|
|
|
|
ARFLAGS := rc
|
|
|
|
|
|
|
|
SYSCALLS := IntrWait \
|
|
|
|
RegisterRamReset \
|
|
|
|
Sqrt \
|
|
|
|
MusicPlayerOpen \
|
|
|
|
SoundBiasReset \
|
|
|
|
SoundDriverVSyncOn \
|
|
|
|
Mod \
|
|
|
|
VBlankIntrWait \
|
|
|
|
MusicPlayerStart \
|
|
|
|
SoundDriverVSyncOff \
|
|
|
|
HuffUnComp \
|
|
|
|
SoftResetExram \
|
|
|
|
MusicPlayerFadeOut \
|
|
|
|
LZ77UnCompWram \
|
|
|
|
SoundDriverMain \
|
|
|
|
SoundBiasChange \
|
|
|
|
LZ77UnCompVram \
|
|
|
|
ArcTan2 \
|
|
|
|
MusicPlayerStop \
|
|
|
|
DivArm \
|
|
|
|
ModArm \
|
|
|
|
SoundDriverVSync \
|
|
|
|
SoundDriverInit \
|
|
|
|
BgAffineSet \
|
|
|
|
Diff8bitUnFilterWram \
|
|
|
|
MultiBoot \
|
|
|
|
MidiKey2Freq \
|
|
|
|
Div \
|
|
|
|
Diff8bitUnFilterVram \
|
|
|
|
ArcTan \
|
|
|
|
ObjAffineSet \
|
|
|
|
SoftResetRom \
|
|
|
|
SoundDriverMode \
|
|
|
|
RLUnCompWram \
|
|
|
|
BitUnPack \
|
|
|
|
SoundChannelClear \
|
|
|
|
CpuFastSet \
|
|
|
|
CpuSet \
|
|
|
|
Diff16bitUnFilter \
|
|
|
|
SoundBiasSet \
|
|
|
|
MusicPlayerContinue \
|
|
|
|
SoftReset \
|
|
|
|
RLUnCompVram
|
|
|
|
|
|
|
|
ASM_SRCS := libagbsyscall.s
|
|
|
|
ASM_OBJS := $(foreach syscall, $(SYSCALLS), $(syscall).o)
|
|
|
|
|
|
|
|
LIB := libagbsyscall.a
|
|
|
|
|
|
|
|
.PHONY: all clean
|
|
|
|
|
|
|
|
all: $(LIB)
|
|
|
|
@:
|
|
|
|
|
|
|
|
clean:
|
|
|
|
rm -f $(LIB) $(ASM_OBJS)
|
|
|
|
|
|
|
|
$(LIB): $(ASM_OBJS)
|
|
|
|
$(AR) $(ARFLAGS) $@ $^
|
|
|
|
|
|
|
|
$(ASM_OBJS): libagbsyscall.s
|
|
|
|
$(AS) $(ASFLAGS) --defsym L_$(*F)=1 -o $@ $<
|