X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=ROM2%2FMakefile;h=ac77ee3cdaec8b3c1976d894477fe09cefdcbba8;hb=e0b5b67cb0d38c9a7ccf328667db768e0709f482;hp=6c77f2459e7a66f7ed2c351c51b7507acc0ff115;hpb=0f822a5a37e6e17e027b5a83b8d231a6c0de13eb;p=uccvend-snackrom.git diff --git a/ROM2/Makefile b/ROM2/Makefile index 6c77f24..ac77ee3 100644 --- a/ROM2/Makefile +++ b/ROM2/Makefile @@ -1,13 +1,13 @@ # muchly stolen from m68hc1x's example.tar.gz's Makefile OBJS = \ - motors.o keypad.o display.o coinmech.o helpers.o main.o \ - vectors.o -INCLUDES = vend.h - - -CFLAGS = -O2 -Wall -m68hc11 -mshort -Wall -Os -g0 \ - -msoft-reg-count=0 -ffixed-z + motors.o keypad.o display_basic.o coinmech.o chime.o \ + helpers.o main_basic.o sci.o \ + vectors.o start.o romsrc.o xmodem.o +INCLUDES = vend.h keypad.h chime.h asm.h display_basic.h ports.h types.h +# debugging doesn't get compiled into the ROM image +CFLAGS = -m68hc11 -mshort -Wall -O1 \ + -msoft-reg-count=0 -ffixed-z -g -fomit-frame-pointer LDFLAGS = -m68hc11 -mshort -Wl,-m,m68hc11elfb \ -nostartfiles \ @@ -16,7 +16,8 @@ LDFLAGS = -m68hc11 -mshort -Wl,-m,m68hc11elfb \ -Wl,-defsym,_misc_input=0x2000 \ -Wl,-defsym,_home_sensors=0x2800 \ -Wl,-defsym,_changer_output=0x3000 \ - -Wl,-defsym,_misc_output=0x3800 + -Wl,-defsym,_misc_output=0x3800 \ + -Wl,-defsym,_uart_regs=0x4000 OBJCOPY_FLAGS=--only-section=.text \ --only-section=.rodata \ @@ -37,9 +38,10 @@ all: rom2.b rom2.elf rom2.s19 rom2.elf: $(OBJS) memory.x $(CC) $(LDFLAGS) -o $@ $(OBJS) $(LIBADD) + $(SIZE) $@ clean: - rm -f $(OBJS) *.elf *.s19 *.b *.a + rm -f *.o *.elf *.s19 *.b *.a rom.tar.bz2 romsrc.c crctab.h m68hc11-gdb gencrctab # # Some useful rules @@ -50,6 +52,20 @@ dump: rom2.elf size: rom2.s19 $(SIZE) $< +rom.tar.bz2: + rm -f romsrc.c crctab.h + tar cjf rom.tar.bz2 README Makefile gdbsimrc *.pl *.c *.h *.s *.x + +romsrc.c: rom.tar.bz2 + perl -w src2c.pl < $< > $@ + +xmodem.c: crctab.h + +gencrctab: gencrctab.c + gcc -o $@ $< + +crctab.h: gencrctab + ./gencrctab > $@ # # Implicit rules @@ -65,5 +81,11 @@ size: rom2.s19 .elf.b: $(OBJCOPY) --output-target=binary --gap-fill=255 \ - --only-section=.data $(OBJCOPY_FLAGS) $< $*.b - + $(OBJCOPY_FLAGS) $< $*.b + +m68hc11-gdb: /usr/bin/m68hc11-gdb + sed -e 's|m68hc11eepr/reg 0xb000 512|m68hc11eepr/reg 0x4000 1 |' < $< > $@ + chmod 755 $@ + +sim: m68hc11-gdb rom2.elf + ./m68hc11-gdb -x gdbsimrc rom2.elf