<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<COMPILER NAME="BASCOM-AVR" VERSION="1.11.9.5" URL="http://www.mcselec.com/" AVAILABILITY="External" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../schema/compiler.xsd">
  <!-- Basic -->
  <TOOL NAME="BAS" FILE="bascomp.exe">
    <!--Usage : bascomp file.bas SS=softstack FR=framesize HW=hardwarestack CHIP=index-->
    <OPTION NAME="SS=" DESC="Software stack size" PARAM="STRING" ADVANCED="1"/>
    <OPTION NAME="FR=" DESC="Frame size" PARAM="STRING" ADVANCED="1"/>
    <OPTION NAME="HW=" DESC="Hardware stack size" PARAM="STRING" ADVANCED="1"/>
    <OPTION NAME="CHIP=" DESC="Processor type" PARAM="STRING"/>
    <OPTION NAME="AUTO" DESC="Use configuration from file"/>
  </TOOL>
  <!-- Available controllers for this compiler -->
  <FAMILY NAME="AVR">
    <OPTION NAME="FR=" VALUE="24"/>
    <OPTION NAME="HW=" VALUE="32"/>
    <OPTION NAME="SS=" VALUE="8"/>
    <CONTROLLER NAME="AT90S2313">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="0"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT90S2323">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="1"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT90S2333">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="2"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT90S2343">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="3"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT90S4414">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="4"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT90S4433">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="5"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT90S4434">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="6"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT90S8515">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="7"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT90S8535">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="8"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT86RF401">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="27"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATtiny12">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="15"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATtiny13">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="30"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATtiny15">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="16"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATtiny22">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="11"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATtiny2313">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="31"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATtiny24">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="46"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATtiny25">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="36"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATtiny26">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="22"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATtiny44">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="44"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATtiny45">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="35"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATtiny461">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="56"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATtiny84">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="45"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATtiny85">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="38"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATtiny861">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="57"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMega103">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="10"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMega1280">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="48"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMega128">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="20"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMega1281">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="47"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMEGA1284P">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="103"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT90CAN128">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="40"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMega128">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="20"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMEGA161">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="12"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega162">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="28"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMEGA163">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="13"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMEGA164P">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="52"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMega165">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="42"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega168">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="34"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega168P">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="61"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega169">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="29"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega16">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="18"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMega2560">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="43"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMega2561">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="41"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMEGA323">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="14"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMEGA324P">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="51"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMEGA325">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="100"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega328P">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="60"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega329">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="50"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT90CAN32">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="80"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMEGA32">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="23"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega406">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="54"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega48">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="32"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega603">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="9"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMega640">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="55"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMEGA644">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="37"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMEGA644P">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="59"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATMEGA645">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="102"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega649">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="53"/>
    </CONTROLLER>
    <CONTROLLER NAME="atmega64">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="19"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega8515">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="24"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega8535">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="25"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega88">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="33"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega88P">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="62"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega8">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="17"/>
    </CONTROLLER>
    <CONTROLLER NAME="ATmega8A">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="17"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT90USB1287">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="70"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT90USB162">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="74"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT90USB646">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="71"/>
    </CONTROLLER>
    <CONTROLLER NAME="AT90USB82">
      <OPTION TOOL="BAS" NAME="CHIP=" VALUE="72"/>
    </CONTROLLER>
  </FAMILY>
  <!-- Compiler Detection -->
  <DETECT PATH="%PROGRAMFILES%/MCS Electronics/BASCOM-AVR" SUF="bascomp.exe" ARG="" STR="bascomp command line compiler"/>
  <!-- File Types -->
  <FILE NAME="bas" DESC="Basic Source" CATEGORY="Source" SOURCE="1" ICON="project_c.png" SYNTAX="BASCOM-AVR.SYN"/>
  <FILE NAME="hex" DESC="Intel Hex" CATEGORY="Firmware Binary" FIRMWARE="1"/>
  <FILE NAME="obj" DESC="AVR Studio Object File" CATEGORY="Firmware Binary" FIRMWARE="1"/>
  <FILE NAME="dbg" DESC="BASCOM-AVR Debug Information File" CATEGORY="Firmware Binary" FIRMWARE="1"/>
  <!-- Basic -->
  <PROCESS TOOL="BAS" NAME="Basic" CMDLINE="$(BAS) &quot;%INFILE_DIR%/%INFILE_NAME%.bas&quot; $(BASFLAGS) %OPTIONS%">
    <FILE OUTPUT="hex">
      <FILE INPUT="bas"/>
      <FILE TEMP="obj"/>
      <FILE TEMP="dbg"/>
      <FILE TEMP="bin"/>
      <FILE TEMP="rpt"/>
      <FILE ERROR="err"/>
    </FILE>
    <FILE OUTPUT="obj">
      <FILE INPUT="bas"/>
      <FILE INFO="dbg"/>
      <FILE TEMP="hex"/>
      <FILE TEMP="bin"/>
      <FILE TEMP="rpt"/>
      <FILE ERROR="err" NAME="%INFILE_DIR%/%INFILE_NAME%.err"/>
    </FILE>
    <!-- Files are in the source file directory -->
    <POSTPROCESS CMDLINE="@if exist %OUTFILE_NAME%.obj rm %OUTFILE_NAME%.obj"/>
    <POSTPROCESS CMDLINE="@if exist %OUTFILE_NAME%.dbg rm %OUTFILE_NAME%.dbg"/>
    <POSTPROCESS CMDLINE="@if exist %OUTFILE_NAME%.hex rm %OUTFILE_NAME%.hex"/>
    <POSTPROCESS CMDLINE="@if exist %OUTFILE_NAME%.bin rm %OUTFILE_NAME%.bin"/>
    <POSTPROCESS CMDLINE="@if exist %OUTFILE_NAME%.rpt rm %OUTFILE_NAME%.rpt"/>
    <POSTPROCESS CMDLINE="@if exist %INFILE_DIR%\%INFILE_NAME%.obj mv -f %INFILE_DIR%/%INFILE_NAME%.obj %OUTFILE_NAME%.obj"/>
    <POSTPROCESS CMDLINE="@if exist %INFILE_DIR%\%INFILE_NAME%.dbg mv -f %INFILE_DIR%/%INFILE_NAME%.dbg %OUTFILE_NAME%.dbg"/>
    <POSTPROCESS CMDLINE="@if exist %INFILE_DIR%\%INFILE_NAME%.hex mv -f %INFILE_DIR%/%INFILE_NAME%.hex %OUTFILE_NAME%.hex"/>
    <POSTPROCESS CMDLINE="@if exist %INFILE_DIR%\%INFILE_NAME%.bin mv -f %INFILE_DIR%/%INFILE_NAME%.bin %OUTFILE_NAME%.bin"/>
    <POSTPROCESS CMDLINE="@if exist %INFILE_DIR%\%INFILE_NAME%.rpt mv -f %INFILE_DIR%/%INFILE_NAME%.rpt %OUTFILE_NAME%.rpt"/>
    <MESSAGE VALUE="^Error :.+Line :.*(\d+).*, in File : (.+)$" SEVERITY="ERROR">
      <FIELD NAME="FILENAME" POSITION="2"/>
      <FIELD NAME="LINE" POSITION="1" OFFSET="-1"/>
    </MESSAGE>
  </PROCESS>
  <!-- Compilation Targets -->
  <TARGET NAME="Debug">
    <FILE OUTPUT="obj"/>
  </TARGET>
  <TARGET NAME="Release">
    <FILE OUTPUT="hex"/>
    <POSTPROCESS CMDLINE="cp &quot;%OUTFILE%&quot; &quot;%SOLUTION_ABS_DIR%/%PROJECT_NAME%.%OUTFILE_TYPE%&quot;"/>
  </TARGET>
  <SOURCE NAME="main.bas" FROM="main.bas" OPEN="1"/>
</COMPILER>