#!/bin/bash

TARGET=$1
TARGET_HEX=$2
CPU=$3
BIN=/usr/bin/uisp 

#INTERFACE="-dprog=dapa -dlpt=/dev/parport0"
OPTIONS=" -dprog=dasa2 -dserial=/dev/ttyS0 "

## Linker Tabelle rauswerfen
COMMAND="avr-strip ${TARGET}"
echo $COMMAND
$COMMAND

## HEX-File erzeugen
#COMMAND="avr-objcopy -j .text -j .data -O ihex ${TARGET} ${TARGET_HEX}"
COMMAND="avr-objcopy -j .text -R .eeprom -j .data -O ihex ${TARGET} ${TARGET_HEX}"
echo $COMMAND
$COMMAND

# Ausgabe des benötigten Speicherplatzes
COMMAND="avr-size --format=sysv ${TARGET}"
echo $COMMAND
$COMMAND


## Schauen ob Controller vorhanden und ggf. neu flashen
#CONTR_AVAILABLE=`${BIN} $OPTIONS --rd_fuses 2>/dev/null >/dev/null && echo 1 || echo 0`
CONTR_AVAILABLE=1
echo "Controller: ${CONTR_AVAILABLE}"


if [ $CONTR_AVAILABLE -eq 1 ]; then
	
	## Flash leeren
	COMMAND="${BIN} $OPTIONS -dpart=${CPU} --erase"
	echo $COMMAND
	$COMMAND
	
	sleep 1
	
	## Programm uploaden
	COMMAND="${BIN} $OPTIONS -dpart=${CPU} --upload if=${TARGET_HEX}"
	echo $COMMAND
	$COMMAND
fi	
