From: Oliver Schmidt
Date: Mon, 20 Jul 2015 16:00:56 +0000 (+0200)
Subject: Merge pull request #179 from greg-king5/overlay
X-Git-Tag: V2.16~248
X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=1d5ed2e2a7c112c2578888c3d9bd83149b643901;hp=1072f7d6f7f343b4dcc48739d482f01a2abc24fb;p=cc65
Merge pull request #179 from greg-king5/overlay
Add overlay-samples make-rules.
---
diff --git a/samples/Makefile b/samples/Makefile
index 79988ea70..951706ce6 100644
--- a/samples/Makefile
+++ b/samples/Makefile
@@ -44,7 +44,7 @@ endif
C1541 = c1541
# --------------------------------------------------------------------------
-# System dependent settings
+# System-dependent settings
# The Apple machines need the start address adjusted when using TGI
LDFLAGS_mandelbrot_apple2 = --start-addr 0x4000
@@ -81,10 +81,10 @@ LDFLAGS_tgidemo_atari = -D __RESERVED_MEMORY__=0x2000
.PRECIOUS: %.o
.o:
- @$(LD) $(LDFLAGS_$(basename $@)_$(SYS)) -o $@ -t $(SYS) -m $@.map $^ $(CLIB)
+ @$(LD) $(LDFLAGS_$(@F)_$(SYS)) -o $@ -t $(SYS) -m $@.map $^ $(CLIB)
# --------------------------------------------------------------------------
-# List of executables. This list could be made target dependent by checking
+# List of executables. This list could be made target-dependent by checking
# $(SYS).
EXELIST = ascii \
@@ -103,13 +103,23 @@ EXELIST = ascii \
tgidemo
# --------------------------------------------------------------------------
-# Rules how to make each one of the binaries
+# Rules to make the binaries
.PHONY: all
all: $(EXELIST)
# --------------------------------------------------------------------------
-# Rule to make a disk with all samples. Needs the c1541 program that comes
+# Overlay rules. Overlays need special ld65 configuration files. Also, the
+# overlay file-names are shortenned to fit the Atari's 8.3-character limit.
+
+multdemo: multidemo.o
+ @$(LD) -o $@ -C $(SYS)-overlay.cfg -m $@.map $^ $(CLIB)
+
+ovrldemo: overlaydemo.o
+ @$(LD) -o $@ -C $(SYS)-overlay.cfg -m $@.map $^ $(CLIB)
+
+# --------------------------------------------------------------------------
+# Rule to make a CBM disk with all samples. Needs the c1541 program that comes
# with the VICE emulator.
.PHONY: disk
@@ -125,7 +135,7 @@ samples.d64: all
done
# --------------------------------------------------------------------------
-# Cleanup rules
+# Clean-up rules
.PHONY: clean
clean:
@@ -134,3 +144,4 @@ clean:
.PHONY: zap
zap: clean
$(RM) $(EXELIST) samples.d64
+ $(RM) multdemo.? ovrldemo.?
diff --git a/samples/README b/samples/README
index 5997fc8d0..edd06ff02 100644
--- a/samples/README
+++ b/samples/README
@@ -11,6 +11,7 @@ Please note:
the programs manually.
* The makefile specifies the C64 as the default target platform, because all
+ but one
of the programs run on this platform. When compiling for another platform,
you will have to change the line that specifies the target system at the
top of the makefile.