diff options
Diffstat (limited to 'sw/z80/tests/pio/makefile')
-rw-r--r-- | sw/z80/tests/pio/makefile | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/sw/z80/tests/pio/makefile b/sw/z80/tests/pio/makefile index 5c3716c..f7f97be 100644 --- a/sw/z80/tests/pio/makefile +++ b/sw/z80/tests/pio/makefile @@ -4,6 +4,8 @@ OSNAME := pio_test CSOURCES := $(wildcard *.c) +LIBS := ../../arch/build/arch.a \ + ../../drivers/build/drivers.a OBJECTS := $(patsubst %.c,build/%.rel,$(CSOURCES)) HEXFILE := build/$(OSNAME).hex @@ -15,9 +17,10 @@ BINARY := build/$(OSNAME).bin CC := sdcc CFLAGS := -mz80 \ + --no-std-crt0 build/crt0.rel \ --allow-unsafe-read \ -I . \ - -I ../../arch \ + -I ../../arch/include \ -I ../../drivers/include \ -DDEBUG @@ -25,9 +28,8 @@ LDFLAGS := -mz80 \ --no-std-crt0 build/crt0.rel \ -L ../../drivers/build \ -l drivers.a \ - -pedantic - - # --code-loc 0x0120 \ + -pedantic \ + --code-loc 0x0200 # --data-loc 0x2000 .PHONY: flash dirs dis clean @@ -41,10 +43,14 @@ $(BINARY): $(OBJECTS) dirs $(CC) $(LDFLAGS) $(OBJECTS) -o $(HEXFILE) makebin -s 8192 -yo 1 $(HEXFILE) $(BINARY) -$(OBJECTS): build/%.rel : %.c $(CSOURCES) dirs build/crt0.rel +$(OBJECTS): build/%.rel : %.c $(CSOURCES) dirs build/crt0.rel $(LIBS) @printf "\n" $(CC) $(CFLAGS) -c $< -o $@ +$(LIBS): %.a: + @printf "\n" + make -C $(shell printf $@ | sed 's:build.*.::') + build/crt0.rel: crt0.s sdasz80 -o $< @mv crt0.rel build/ @@ -53,14 +59,14 @@ dirs: mkdir -p build dis: $(BINARY) - #dz80 -b -n $< - r2 -a z80 $< -A \ - -c 'afr main 0x200; \ + dz80 -b -n -t $(BINARY) + r2 -a z80 $< \ + -c 'afn main 0x200; \ pd 0x10; \ s 0x100; \ pd 10; \ s 0x200; \ - pd 0x40' \ + pd 0x95' clean: - rm -rd build |