dreamcast/example/arm/Makefile
Zack Buhman 0ff0aa5346 example/aica_gdrom: play audio read from gdrom
This still has issues, notably:

Despite the first 16kbytes of audio being loaded prior to starting the
AICA ARM7 CPU, the GDROM drive returns "busy" for the following
~48kbytes. This in turn causes the AICA to play audio from
uninitialized memory.

There is also a separate issue where the timing of changing the start
address of the audio channel causes a faint popping sound throughout
the audio playback.

I should do more timing experiments with the GDROM drive, and improve
this example to play the audio with fewer artifacts.
2024-03-04 16:40:25 +08:00

43 lines
744 B
Makefile

MAKEFILE_PATH := $(abspath $(lastword $(MAKEFILE_LIST)))
DIR := $(dir $(MAKEFILE_PATH))
LIB ?= .
OPT ?= -O3
GENERATED ?=
AARCH = -march=armv4 -mlittle-endian
CARCH = -mno-thumb-interwork -march=armv4 -mtune=arm7di -mlittle-endian
CFLAGS += -I$(dir $(MAKEFILE_PATH))/../..
CXXFLAGS += -std=c++2a
OBJARCH = -O elf32-littlearm -B armv4
TARGET = arm-none-eabi-
include base.mk
channel.elf: LDSCRIPT = main.lds
channel.elf: start.o channel.o audio.pcm.o
sh4_interrupt.elf: LDSCRIPT = main.lds
sh4_interrupt.elf: start.o sh4_interrupt.o
clean:
find -P \
-regextype posix-egrep \
-regex '.*\.(o|d|bin|elf|gch)$$' \
-exec rm {} \;
.SUFFIXES:
.INTERMEDIATE:
.SECONDARY:
.PHONY: all clean
%: RCS/%,v
%: RCS/%
%: %,v
%: s.%
%: SCCS/s.%