# Processortyp M fuer Compiler, N fuer avrdude:
M=atmega8
N=m8

# Compileraufrufe:
C=avr-gcc -mmcu=$M -Wall -Os -c
A=avr-as
L=avr-gcc -mmcu=$M -Wall -Os

# fuer avrdude-Aufruf unter Linux:
TTY=/dev/ttyUSB0
# fuer avrdude-Aufruf unter MacOSX:
#TTY=/dev/tty.serial-0001

# verwendeter Programmer:
#P=avr910  #fuer mySmartUSB MK2
P=stk500v2 #fuer mySmartUSB light

all: ramgehilfe.hex

ramgehilfe.hex: ramgehilfe.cc
	$L ramgehilfe.cc -o ramgehilfe.elf
	avr-objcopy -O ihex -R .eeprom ramgehilfe.elf ramgehilfe.hex
	avr-objdump -h -S ramgehilfe.elf > ramgehilfe.lss

check:
	avrdude -p $N -c $P -P $(TTY) -v
check2:
	avrdude -p $N -F -c $P -P $(TTY) -v

# Fuses fuer Quarz, fuer ATmega8 oder ATmega32 oder ATmega328P:
fusesetzenQuarz:
	avrdude -p $N -c $P -P $(TTY) -U lfuse:w:0xFF:m
	avrdude -p $N -c $P -P $(TTY) -U hfuse:w:0xD9:m

fusesetzen: //fuer ATmega8 interner Oszillator 8MHz
	avrdude -p $N -c $P -P $(TTY) -U lfuse:w:0xE4:m
	avrdude -p $N -c $P -P $(TTY) -U hfuse:w:0xD9:m

fusesetzen328p: //fuer ATmega328p interner Oszillator 8MHz
	avrdude -p $N -c $P -P $(TTY) -U lfuse:w:0xE2:m
	avrdude -p $N -c $P -P $(TTY) -U hfuse:w:0xD9:m

install: ramgehilfe.hex
	avrdude -p $N -c $P -P $(TTY) -U flash:w:ramgehilfe.hex:i

clean:
	rm -f *~ *.o *.elf
clean_all:
	rm -f *~ *.o *.elf *.lss *.hex
