aboutsummaryrefslogtreecommitdiff
path: root/BUILD.txt
blob: e5d373eea51d8407497c84b6986f1e5b1f8a7c6a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
To build the DLA suite, you need a Unix/GNU like system (which might
even be modern Windows), with the following software installed:

- Required: A "make" command. This can be GNU or BSD make. The
  Makefile doesn't use any special features, so pretty much any
  version should be OK.

- Required: "cl65", from CC65, the cross-compiler for the 6502. Any
  recent version should do; I used 2.19.

- Optional: "perl", the Perl 5 interpreter. Only used to generate the
  files dlatbl.s, dlaver.inc, and dlaver.h. These files are part
  of the source distribution, so you only need Perl if you're going
  to modify the data tables (the mkdlatbl.pl script), or change the
  version number (mkver.pl).

- Optional: "cc", a host C compiler (e.g. gcc or clang). Only used for
  compiling dla2csv for the host.

- Optional: "axe", only needed for "make disk". Get it here:
  https://slackware.uk/~urchlay/repos/bw-atari8-tools/

You should be able to build everything from a terminal by typing
"make" in the source directory. This will build dla.xex, dla2csv.xex,
and (if possible) dla2csv for the host.

If you want a disk image, you can try "make disk", which will create
dla.atr (if you have axe on your $PATH).

Ideally, all the software should be found in your $PATH. If not,
you can set the full paths by defining them on the make command line.
Example that sets all 3:

make CL65=/opt/cc65/bin/cl65 PERL=/usr/local/perl/bin/perl5 CC=/usr/bin/clang

Also you could set CFLAGS and CL65FLAGS, if you can think of a reason
to do that.

If you have trouble building on Linux, ask me for help. I can be found
on irc.libera.chat in the ##atari channel, as user name Urchlay. If
you have trouble on other OSes, ask someone who actually knows about
your OS (not me, I don't do Windows or Mac).

Other make targets:

make test - runs dla.xex in atari800
make disktest - runs dla.atr in atari800
make realtest - serves dla.atr as drive 1, via atariserver (for testing
                on real hardware)
make clean - does what you expect
make distclean - also removes generated files