NAME	= rgb
CC	= avr-gcc
MCU	= attiny12
OBJS	= rgb.o
PROG	= dapa
LPT	= 0x378
SUDO	= /usr/bin/sudo

CFLAGS	= -mmcu=$(MCU) -nodefaultlibs

default:	$(NAME).bin $(NAME).hex $(NAME).lst $(NAME)-remove poke

$(NAME).bin:	$(NAME).o
	avr-gcc $(CFLAGS) -o $(NAME).o $(NAME).S
	avr-objcopy -j .text -j .data -O binary $(NAME).o $(NAME).bin
	@chmod -x $(NAME).bin

$(NAME).hex:	$(NAME).o
	avr-objcopy -j .text -j .data -O ihex $(NAME).o $(NAME).hex
#	@sed '/^:......05/d' < $(NAME).hex > $(NAME).hex-; mv -f $(NAME).hex- $(NAME).hex

$(NAME).lst:	$(NAME).o
	avr-objdump -h -S -D --stabs --disassemble-zeroes $(NAME).o > $(NAME).lst
	avr-nm $(NAME).o -n >> $(NAME).lst

.PHONY:	$(NAME)-remove

$(NAME)-remove:
	@rm -f $(NAME).o

$(NAME):	$(OBJS)
	avr-gcc $(CFLAGS) $(OBJS) -o $(NAME)

.PHONY:	clean

clean:
	rm -f $(NAME) *.hex *.bin *.o *.lst *~ core

.PHONY:	poke

poke:
	$(SUDO) uisp -dprog=$(PROG) -dlpt=$(LPT) --erase --upload if=$(NAME).hex --verify
