diff options
Diffstat (limited to 'firmware/Makefile')
-rw-r--r-- | firmware/Makefile | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/firmware/Makefile b/firmware/Makefile index 8dfba5d..0905d0a 100644 --- a/firmware/Makefile +++ b/firmware/Makefile @@ -24,7 +24,7 @@ LOCKOPT = -U lock:w:0x2f:m # - for the size of your device (8kb = 1024 * 8 = 8192) subtract above value 2124... = 6068 # - How many pages in is that? 6068 / 64 (tiny85 page size in bytes) = 94.8125 # - round that down to 94 - our new bootloader address is 94 * 64 = 6016, in hex = 1780 -BOOTLOADER_ADDRESS = 1780 +BOOTLOADER_ADDRESS = 1880 PROGRAMMER = -c USBasp # PROGRAMMER contains AVRDUDE options to address your programmer @@ -148,12 +148,13 @@ CC = avr-gcc # Options: DEFINES = -DBOOTLOADER_ADDRESS=0x$(BOOTLOADER_ADDRESS) #-DDEBUG_LEVEL=2 # Remove the -fno-* options when you use gcc 3, it does not understand them -CFLAGS = -Wall -Os -fno-move-loop-invariants -fno-tree-scev-cprop -fno-inline-small-functions -I. -Ilibs-device -mmcu=$(DEVICE) -DF_CPU=$(F_CPU) $(DEFINES) -LDFLAGS = -Wl,--relax,--gc-sections -Wl,--section-start=.text=$(BOOTLOADER_ADDRESS),-Map=main.map +# +CFLAGS = -g2 -nostartfiles -ffunction-sections -fdata-sections -fpack-struct -Wall -Os -fno-inline-small-functions -fno-move-loop-invariants -fno-tree-scev-cprop -I. -Ilibs-device -mmcu=$(DEVICE) -DF_CPU=$(F_CPU) $(DEFINES) +LDFLAGS = -Wl,--relax,--section-start=.text=$(BOOTLOADER_ADDRESS),-Map=main.map,--section-start=.zerotable=0 -OBJECTS = usbdrv/usbdrvasm.o usbdrv/oddebug.o main.o -OBJECTS += libs-device/osccal.o +OBJECTS = crt1.o usbdrv/usbdrvasm.o usbdrv/oddebug.o main.o +OBJECTS += libs-device/osccalASM.o # symbolic targets: all: main.hex @@ -171,7 +172,7 @@ all: main.hex $(CC) $(CFLAGS) -S $< -o $@ flash: all - $(AVRDUDE) -U flash:w:main.hex:i + $(AVRDUDE) -U flash:w:main.hex:i -B 10 readflash: $(AVRDUDE) -U flash:r:read.hex:i @@ -189,7 +190,7 @@ read_fuses: $(UISP) --rd_fuses clean: - rm -f main.hex main.bin main.c.lst main.map *.o usbdrv/*.o main.s usbdrv/oddebug.s usbdrv/usbdrv.s libs-device/osccal.o + rm -f main.hex main.bin main.c.lst main.map *.o usbdrv/*.o main.s usbdrv/oddebug.s usbdrv/usbdrv.s libs-device/osccalASM.o *.lss # file targets: main.bin: $(OBJECTS) @@ -197,11 +198,11 @@ main.bin: $(OBJECTS) main.hex: main.bin rm -f main.hex main.eep.hex - avr-objcopy -j .text -j .data -O ihex main.bin main.hex + avr-objcopy -j .text -j .zerotable -j .data -O ihex main.bin main.hex avr-size main.hex disasm: main.bin - avr-objdump -d main.bin + avr-objdump -d -S main.bin >main.lss cpp: $(CC) $(CFLAGS) -E main.c |