aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorB. Watson <urchlay@slackware.uk>2022-11-16 02:09:57 -0500
committerB. Watson <urchlay@slackware.uk>2022-11-16 02:47:14 -0500
commitbd5f42cd72a25d82e5e9f5f88967e50bc09549a6 (patch)
tree00253ea5762b8a0ff5e46691d56c2139fa4b2231 /Makefile
parent74cf24049dc79387e9a4f865d85ef86f886e8589 (diff)
downloaddla-asm-bd5f42cd72a25d82e5e9f5f88967e50bc09549a6.tar.gz
dla.atr: add autorun.sys, which requires XIO 40 (exec binary file), so switch to MyDOS.
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile24
1 files changed, 18 insertions, 6 deletions
diff --git a/Makefile b/Makefile
index deed51a..427a3b7 100644
--- a/Makefile
+++ b/Makefile
@@ -9,6 +9,8 @@ PERL=perl
CC=cc
CFLAGS=-O2 -Wall
+.PHONY: all disk test disktest realtest tnfs clean distclean
+
all: dla.xex dla2csv dla2csv.xex dla2img.sh
dla.xex: dla.s io.s dlatbl.s xex.inc printint.s render.s drunkwalk.s dlaver.h
@@ -32,17 +34,27 @@ dla2csv: dla2csv.c dlaver.h
# turn off unused parameter warnings because cc65 insists on complaining
# that argc and argv are unused.
+# note that using 0x2d00 for the start address makes the atari crash
+# when exiting dla2csv.xex in MyDOS 4.50, but 0x2800 is fine. 0x2000
+# also works, but not all DOSes have MEMLO set that low...
dla2csv.xex: dla2csv.c dlaver.h
- $(CL65) $(CL65FLAGS) -t atari -W -unused-param -m dla2csv.map -o $@ dla2csv.c
+ $(CL65) $(CL65FLAGS) -t atari -W -unused-param -m dla2csv.map --start-addr 0x2800 -o $@ dla2csv.c
-disk: dla.atr
+autorun.sys: autorun.s about.dat
+ $(CL65) $(CL65FLAGS) -l about.list -t none -o autorun.sys autorun.s
+
+about.dat: text2screen.pl ABOUT.txt
+ perl text2screen.pl < ABOUT.txt > about.dat
# dla.atr.in is just a DOS 2.0s disk image.
-dla.atr: all
+dla.atr: dla.xex dla2csv.xex autorun.sys dla.atr.in
cp dla.atr.in dla.atr
+ axe -w autorun.sys dla.atr
axe -w dla.xex dla.atr
axe -w dla2csv.xex dla.atr
+disk: dla.atr
+
test: all
atari800 dla.xex
@@ -57,13 +69,13 @@ tnfs: all
sh tnfs.sh dla.xex dla2csv.xex dla.atr
clean:
- rm -f dla.xex dla2csv dla2csv.xex dla.list dla.labels *.o dla.atr
+ rm -f dla.xex dla2csv dla2csv.xex autorun.sys dla.list dla.labels *.o dla.atr
distclean: clean
- rm -f dlatbl.s dlaver.inc dlaver.h
+ rm -f dlatbl.s dlaver.inc dlaver.h about.dat
# this rule isn't actually used by the other targets, it's just
# handy for writing little "test.c" programs and being able to
# say "make test.xex".
%.xex: %.c
- $(CL65) $(CL65FLAGS) -t atari -W -unused-param -o $@ $<
+ $(CL65) $(CL65FLAGS) --start-addr 0x2800 -t atari -W -unused-param -o $@ $<