diff --git a/.gitignore b/.gitignore index 8bb62f8..39ff145 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,9 @@ # Reference copy of original binary orig +# Output directory +out + # Output files *.SYS *.BIN diff --git a/.travis.yml b/.travis.yml index a4fd139..4cdcf00 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,8 +4,7 @@ language: c install: - git clone https://github.com/cc65/cc65 /tmp/cc65 && - make -C /tmp/cc65 bin apple2 apple2enh && - /tmp/cc65/bin/cc65 --version + make -C /tmp/cc65 ca65 ld65 script: - make CC65=/tmp/cc65/bin diff --git a/Makefile b/Makefile index abc84fe..ba6ae9b 100644 --- a/Makefile +++ b/Makefile @@ -3,9 +3,16 @@ CC65 = ~/dev/cc65/bin CAFLAGS = --target apple2enh --list-bytes 0 CCFLAGS = --config apple2-asm.cfg -TARGETS = prodos.mod.BIN ns.clock.system.SYS cricket.system.SYS \ - test.BIN \ - date.BIN set.time.BIN set.date.BIN +OUTDIR = out + +TARGETS = \ + $(OUTDIR)/prodos.mod.BIN \ + $(OUTDIR)/ns.clock.system.SYS \ + $(OUTDIR)/cricket.system.SYS \ + $(OUTDIR)/test.BIN \ + $(OUTDIR)/date.BIN \ + $(OUTDIR)/set.time.BIN \ + $(OUTDIR)/set.date.BIN # For timestamps MM = $(shell date "+%m") @@ -19,12 +26,13 @@ all: $(TARGETS) HEADERS = $(wildcard *.inc) clean: - rm -f *.o - rm -f $(TARGETS) + rm -f $(OUTDIR)/*.o + rm -f $(OUTDIR)/*.list + rm -f $(OUTDIR)/$(TARGETS) -%.o: %.s $(HEADERS) +$(OUTDIR)/%.o: %.s $(HEADERS) $(CC65)/ca65 $(CAFLAGS) $(DEFINES) --listing $(basename $@).list -o $@ $< -%.BIN %.SYS: %.o +$(OUTDIR)/%.BIN $(OUTDIR)/%.SYS: $(OUTDIR)/%.o $(CC65)/ld65 $(CCFLAGS) -o $@ $< xattr -wx prodos.AuxType '00 20' $@