Build Capital Quest for CoCo 3 with maps and emulator tests
This commit is contained in:
commit
9f7d6f4786
44 files changed
+6238
No files matched your search
@@ -0,0 +1,45 @@
|
||||
# Built by VCC Plus using its bundled CMOC/6809 tools. No emulator source needed.
|
||||
CMOC ?= cmoc
|
||||
PERL ?= perl
|
||||
WRITECOCOFILE ?= writecocofile
|
||||
INSTALL_LOADER ?= install-coco-boot-loader
|
||||
VCC_CONFIGURATION ?= Release
|
||||
ifeq ($(VCC_CONFIGURATION),Debug)
|
||||
OPTIM = -O2 -fno-omit-frame-pointer
|
||||
else
|
||||
OPTIM = -O2
|
||||
endif
|
||||
ifeq ($(VCC_CONFIGURATION),Test)
|
||||
CPPFLAGS += -DTEST_SEED=2709
|
||||
endif
|
||||
CPPFLAGS += -Iinclude
|
||||
CFLAGS = --coco --intermediate --deps --stack-space=2048 $(OPTIM)
|
||||
SOURCES = main.c src/quiz.c src/ui.c src/states.c src/map_data.c
|
||||
OBJECTS = $(SOURCES:%.c=obj/%.o)
|
||||
.PHONY: all build disk clean assets test
|
||||
all: disk
|
||||
build: build/CAPITAL.bin
|
||||
disk: build/CAPITAL.dsk
|
||||
build/CAPITAL.bin: $(OBJECTS)
|
||||
@mkdir -p build
|
||||
"$(CMOC)" --coco --intermediate --org=2000 --limit=7800 -o $@ $(OBJECTS) -lgime -linput -lbcontrol -lhirestxt
|
||||
obj/%.o: %.c include/quiz.h include/ui.h include/map_data.h Makefile
|
||||
@mkdir -p $(dir $@)
|
||||
"$(CMOC)" $(CPPFLAGS) $(CFLAGS) --intdir=$(dir $@) -c -o $@ $<
|
||||
obj/boot.bin: tools/boot.c Makefile
|
||||
@mkdir -p obj
|
||||
"$(CMOC)" --dos -O0 --limit=2800 -o $@ $<
|
||||
build/CAPITAL.dsk: build/CAPITAL.bin obj/boot.bin
|
||||
$(PERL) -e 'print chr(255) x (35*18*256)' > $@
|
||||
"$(INSTALL_LOADER)" $@ obj/boot.bin
|
||||
"$(WRITECOCOFILE)" $@ build/CAPITAL.bin
|
||||
assets:
|
||||
python3 tools/prepare_assets.py
|
||||
test:
|
||||
@mkdir -p build
|
||||
cc -std=c99 -Wall -Wextra -Werror -DHOST_TEST -Iinclude tests/test_quiz.c src/quiz.c src/states.c -o build/test_quiz
|
||||
./build/test_quiz
|
||||
python3 tests/check_assets.py
|
||||
clean:
|
||||
rm -rf obj build
|
||||
-include $(OBJECTS:.o=.d)
|
||||
Reference in new issue
Block a user