diff options
author | Nao Pross <naopross@thearcway.org> | 2018-10-30 11:41:24 +0100 |
---|---|---|
committer | Nao Pross <naopross@thearcway.org> | 2018-10-30 11:41:24 +0100 |
commit | 43be150dc6e84f6f6eeb071cd3cdb7fc21125d60 (patch) | |
tree | 541fd3d690c1bdfd7b68d684029a400b80f4aa06 /sw-old/z80/kernel/makefile | |
parent | Add datasheets for ATmega328 and 74LS259 (diff) | |
download | z80uPC-43be150dc6e84f6f6eeb071cd3cdb7fc21125d60.tar.gz z80uPC-43be150dc6e84f6f6eeb071cd3cdb7fc21125d60.zip |
Move sw to sw-old and hw to hw-altium, add kicad files
Diffstat (limited to 'sw-old/z80/kernel/makefile')
-rw-r--r-- | sw-old/z80/kernel/makefile | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/sw-old/z80/kernel/makefile b/sw-old/z80/kernel/makefile new file mode 100644 index 0000000..be8eed4 --- /dev/null +++ b/sw-old/z80/kernel/makefile @@ -0,0 +1,53 @@ +#### +# source code settings +# +OSNAME := helvetiOS + +CSOURCES := $(wildcard *.c) \ + $(wildcard drivers/*.c) + +OBJECTS := $(patsubst %.c,build/%.rel,$(CSOURCES)) +HEXFILE := build/$(OSNAME).hex +BINARY := build/$(OSNAME).bin + +### +# compiler settings + +CC := sdcc + +CFLAGS := -mz80 \ + -I include \ + -I include/drivers \ + -I libc/include \ + --opt-code-size \ + -DDEBUG + +LDFLAGS := -mz80 --no-std-crt0 build/crt0.rel \ + --std-c89 -pedantic \ + --code-loc 0x0800 --data-loc 0x8000 + +.PHONY: dirs dis clean +all: $(BINARY) + +# build binary +$(BINARY): $(OBJECTS) dirs + $(CC) $(LDFLAGS) $(OBJECTS) -o $(HEXFILE) + makebin -s 16384 $(HEXFILE) $(BINARY) + +$(OBJECTS): build/%.rel : %.c $(CSOURCES) dirs build/crt0.rel + @printf "\n" + $(CC) $(CFLAGS) -c $< -o $@ + +build/crt0.rel: crt0.s + sdasz80 -o $< + @mv crt0.rel build + +dirs: + mkdir -p build build/kernel build/libc build/kernel/drivers + +dis: $(BINARY) + dz80 -b -n $< + +clean: + - rm -rd build/* + - rm crt0.rel |