| 1 | ### -*-makefile-*- |
| 2 | ### (c) 2021 Mark Wooding |
| 3 | |
| 4 | ###----- Licensing notice --------------------------------------------------- |
| 5 | ### |
| 6 | ### This file is part of ZX Fizzbuzz. |
| 7 | ### |
| 8 | ### ZX Fizzbuzz is free software: you can redistribute it and/or modify it |
| 9 | ### under the terms of the GNU Lesser General Public License as published |
| 10 | ### by the Free Software Foundation; either version 3 of the License, or |
| 11 | ### (at your option) any later version. |
| 12 | ### |
| 13 | ### ZX Fizzbuzz is distributed in the hope that it will be useful, but |
| 14 | ### WITHOUT ANY WARRANTY; without even the implied warranty of |
| 15 | ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| 16 | ### Lesser General Public License for more details. |
| 17 | ### |
| 18 | ### You should have received a copy of the GNU Lesser General Public |
| 19 | ### License along with ZX Fizzbuzz. If not, see |
| 20 | ### <https://www.gnu.org/licenses/>. |
| 21 | |
| 22 | all: |
| 23 | clean:: |
| 24 | |
| 25 | TARGETS = |
| 26 | CLEANFILES = $(TARGETS) |
| 27 | |
| 28 | CLEANFILES += spectrum-fb.img |
| 29 | spectrum-fb.img: spectrum.s fizzbuzz.s |
| 30 | z80asm -o $@ $^ |
| 31 | |
| 32 | TARGETS += spectrum-fizzbuzz.tap |
| 33 | spectrum-fizzbuzz.tap: tapify spectrum-loader.tap spectrum-fb.img |
| 34 | { cat spectrum-loader.tap; \ |
| 35 | ./tapify 3 fb 0x7000 0x8000 <spectrum-fb.img; } \ |
| 36 | >$@.new && mv $@.new $@ |
| 37 | |
| 38 | CLEANFILES += zx81-fb.img |
| 39 | zx81-fb.img: zx81.s fizzbuzz.s |
| 40 | z80asm -o $@ $^ |
| 41 | |
| 42 | TARGETS += zx81-fizzbuzz.p |
| 43 | zx81-fizzbuzz.p: gluep zx81-loader.p zx81-fb.img |
| 44 | ./gluep 0x4009:zx81-loader.p 0x7000:zx81-fb.img >$@.new && mv $@.new $@ |
| 45 | |
| 46 | CLEANFILES += zx81-1kfb.img |
| 47 | zx81-1kfb.img: zx81-1k.s fizzbuzz.s |
| 48 | z80asm -o $@ $^ |
| 49 | |
| 50 | TARGETS += zx81-1kfizzbuzz.p |
| 51 | zx81-1kfizzbuzz.p: gluep zx81-1kldr.p zx81-1kfb.img |
| 52 | ./gluep 0x4009:zx81-1kldr.p 0x4300:zx81-1kfb.img >$@.new && mv $@.new $@ |
| 53 | |
| 54 | all: $(TARGETS) |
| 55 | |
| 56 | clean::; rm -f $(CLEANFILES) |