<root>

<build>
    <programmer exe="$(appdir)tools\mLoader\mLoader.exe"
        params="-eb0310 &quot;$(target).s19&quot;" /> 
</build>

<device name='EB031' namealt="at91sam7s128" product='ARM' family='AT91SAM7S' bits='8' >
    <clock max_speed='55000000' master_divider='1' default='47923200' />
    <memory >
        <flash bytes='131072' />
        <ram bytes='32768' />
    </memory>
    <configuration address='0x0000' mult='1' >
        <setting />
    </configuration>
    <pins sides='4' smd='1' >
        <pin name='ADVREF' />
        <pin name='GND' />
        <pin name='RE4/AN4' port='4' bit='4' adc='4' />
        <pin name='RE5/AN5' port='4' bit='5' adc='5' />
        <pin name='RE6/AN6' port='4' bit='6' adc='6' />
        <pin name='RE7/AN7' port='4' bit='7' adc='7' />
        <pin name='VDDIN' />
        <pin name='VDDOUT' />
        <pin name='PORTD0/PA17/AD0' port='3' bit='0' adc='0' />
        <pin name='PORTD1/PA18/AD1' port='3' bit='1' adc='1' />
        <pin name='PORTC7/PA21/RXD1' port='2' bit='7' />
        <pin name='VDDCORE' />
        <pin name='PORTD2/PA19/AD2' port='3' bit='2' adc='2' />
        <pin name='PORTC6/PA22/TXD1' port='2' bit='6' />
        <pin name='PORTC5/PA23/SCK1' port='2' bit='5' />
        <pin name='PORTD3/PA20/AD3/IRQ0' port='3' bit='3' adc='3' />
        <pin name='GND' />
        <pin name='VDDIO' />
        <pin name='PORTD4/PA16/TIOB1' port='3' bit='4' />
        <pin name='PORTB7/PA15/TIOA1' port='1' bit='7' />
        <pin name='PORTB6/PA14/SPCK' port='1' bit='6' />
        <pin name='PORTB5/PA13/MOSI' port='1' bit='5' />
        <pin name='PORTC0/PA24/RTS1' port='2' bit='0' />
	<pin name='VDDCORE' />
	<pin name='PORTC4/PA25/CTS1' port='2' bit='4' />
	<pin name='PORTC1/PA26/TIOA2' port='2' bit='1' />
        <pin name='PORTB4/PA12/MISO' port='1' bit='4' />
        <pin name='PORTB3/PA11/PWM0' port='1' bit='3' />
        <pin name='PORTB2/PA10/DTXD' port='1' bit='2' />
        <pin name='PORTB1/PA9/DRXD' port='1' bit='1' />
        <pin name='PORTB0/PA8/ADTRG' port='1' bit='0' />
        <pin name='PORTA7/PA7/PWM3' port='0' bit='7' />
        <pin name='TDI' />
        <pin name='PORTA6/PA6/TXD0' port='0' bit='6' />
        <pin name='PORTA5/PA5/RXD0' port='0' bit='5' />
        <pin name='PORTA4/PA4/TWCK' port='0' bit='4' />
        <pin name='PORTC2/PA27/TIOB2' port='2' bit='2' />
	<pin name='PORTC3/PA28/TCLK1' port='2' bit='3' />
        <pin name='NRST' />
        <pin name='TST' />
        <pin name='PORTD5/PA29/TCLK2' port='3' bit='5' />
        <pin name='PORTD6/PA30/IRQ1' port='3' bit='6' />
        <pin name='PORTA3/PA3/TWD' port='0' bit='3' />
        <pin name='PORTA2/PA2/PWM2' port='0' bit='2' />
        <pin name='VDDIO' />
        <pin name='GND' />
        <pin name='PORTA1/PA1/PWM1' port='0' bit='1' />
        <pin name='PORTA0/PA0/PWM0' port='0' bit='0' />
        <pin name='TDO' />
        <pin name='JTAGSEL' />
        <pin name='TMS' />
        <pin name='PORTD7/PA31' port='3' bit='7' />
        <pin name='TCK' />
        <pin name='VDDCORE' />
        <pin name='ERASE' />
        <pin name='DDM' />
        <pin name='DDP' />
        <pin name='VDDIO' />
        <pin name='VDDFLASH' />
        <pin name='GND' />
        <pin name='XOUT' />
        <pin name='XIN' />
        <pin name='PLLRC' />
        <pin name='VDDPLL' />
    </pins>
    <adc type='1' bits='10' >
        <speed >
            <option name='1 MHz' value='0' />
            <option name='2 MHz' value='1' />
            <option name='3 MHz' value='2' />
            <option name='4 MHz' value='3' />
            <option name='5 MHz' value='4' />
            <option name='6 MHz' value='5' />
            <option name='7 MHz' value='6' />
            <option name='8 MHz' value='7' />
        </speed>
    </adc>
    <spi >
        <miso port='1' pin='4' />
        <mosi port='1' pin='5' />
        <clk port='1' pin='6' />
    </spi>
    <uart >
        <tx port='2' pin='6' />
        <rx port='2' pin='7' />
    </uart>
    <uart >
        <tx port='0' pin='6' />
        <rx port='0' pin='5' />
    </uart>
    <pwm>
    	<timer>
    	    <option name='Dedicated' value='0' />
    	</timer>
        <prescaler >
            <option name='1' value='0' />
            <option name='2' value='1' />
            <option name='4' value='2' />
            <option name='8' value='3' />
            <option name='16' value='4' />
            <option name='32' value='5' />
            <option name='64' value='6' />
            <option name='128' value='7' />
            <option name='256' value='8' />
            <option name='512' value='9' />
            <option name='1024' value='10' />
        </prescaler>
        <out port='0' pin='0' />
        <out port='0' pin='1' />
        <out port='0' pin='2' />
        <out port='0' pin='7' />
    </pwm>
    <interrupts >
        <interrupt ident='TMR0' type='timer8' name='Timer 0' handler='#ifndef MX_TC0OVF_HANDLER\n#define MX_TC0OVF_HANDLER\nif ((periphID == AT91C_ID_TC0) &amp;&amp; (IFlags & AT91C_TC_CPCS))\n{\n\tFCM_%n();\n}\n#else\n#warning The <TC0 OVF> interrupt has previously been enabled, so the macro may never get called.\n#endif\n' enable='AT91C_BASE_TC0->TC_RC = 0x00000100;\nAT91C_BASE_TC0->TC_IER = AT91C_TC_CPCS;\n' disable='AT91C_BASE_TC0->TC_IDR = AT91C_TC_CPCS;\n' >
            <timer overflow='256' extrange='0' />
            <options >
                <option name='Source Edge Select' >
                    <entry name='high-to-low transition on TMR0 Clock' value='AT91C_BASE_TC0->TC_CMR |= 0x00000008;\n' />
                    <entry name='low-to-high transition on TMR0 Clock' value='AT91C_BASE_TC0->TC_CMR &amp;= 0xfffffff7;\n' />
                </option>
                <prescale name='Prescaler Rate' >
                    <entry name='1:2' value='AT91F_TC0_CfgPMC();\nAT91C_BASE_TC0->TC_CMR = 0x0000c000;\nAT91C_BASE_TC0->TC_CCR = 0x05;\n' />
                    <entry name='1:8' value='AT91F_TC0_CfgPMC();\nAT91C_BASE_TC0->TC_CMR = 0x0000c001;\nAT91C_BASE_TC0->TC_CCR = 0x05;\n' />
                    <entry name='1:32' value='AT91F_TC0_CfgPMC();\nAT91C_BASE_TC0->TC_CMR = 0x0000c002;\nAT91C_BASE_TC0->TC_CCR = 0x05;\n' />
                    <entry name='1:128' value='AT91F_TC0_CfgPMC();\nAT91C_BASE_TC0->TC_CMR = 0x0000c003;\nAT91C_BASE_TC0->TC_CCR = 0x05;\n' />
                    <entry name='1:1024' value='AT91F_TC0_CfgPMC();\nAT91C_BASE_TC0->TC_CMR = 0x0000c004;\nAT91C_BASE_TC0->TC_CCR = 0x05;\n' />
                    <entry name='XC0' value='AT91F_TC0_CfgPMC();\nAT91C_BASE_TC0->TC_CMR = 0x0000c005;\nAT91C_BASE_TC0->TC_CCR = 0x05;\n' />
                    <entry name='XC1' value='AT91F_TC0_CfgPMC();\nAT91C_BASE_TC0->TC_CMR = 0x0000c006;\nAT91C_BASE_TC0->TC_CCR = 0x05;\n' />
                    <entry name='XC2' value='AT91F_TC0_CfgPMC();\nAT91C_BASE_TC0->TC_CMR = 0x0000c007;\nAT91C_BASE_TC0->TC_CCR = 0x05;\n' />
                </prescale>
            </options>
        </interrupt>
        <interrupt ident='INT0' type='pin' name='INT0 Pin' handler='#ifndef MX_IRQ0_HANDLER\n#define MX_IRQ0_HANDLER\nif (periphID == AT91C_ID_IRQ0)\n{\n\tFCM_%n();\n}\n#else\n#warning The <IRQ0> interrupt has previously been enabled, so the macro <%n> may never get called.\n#endif\n' enable='AT91F_AIC_EnableIt(AT91C_BASE_AIC,AT91C_ID_IRQ0);' disable='AT91F_AIC_DisableIt(AT91C_BASE_AIC,AT91C_ID_IRQ0);' >
            <ioc config='3' >
                <rising port='3' mask='0x08' />
                <falling port='3' mask='0x08' />
            </ioc>
            <options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='AT91F_AIC_ConfigureIt(AT91C_BASE_AIC,AT91C_ID_IRQ0,4,AT91C_AIC_SRCTYPE_EXT_POSITIVE_EDGE,IRQ0_Interrupt);\n' />
                    <entry name='Falling edge of INT' value='AT91F_AIC_ConfigureIt(AT91C_BASE_AIC,AT91C_ID_IRQ0,4,AT91C_AIC_SRCTYPE_INT_EDGE_TRIGGERED,IRQ0_Interrupt);\n' />
                </edge>
            </options>
        </interrupt>
        <interrupt ident='INT1' type='pin' name='INT1 Pin' handler='#ifndef MX_IRQ1_HANDLER\n#define MX_IRQ1_HANDLER\nif (periphID == AT91C_ID_IRQ1)\n{\n\tFCM_%n();\n}\n#else\n#warning The <IRQ1> interrupt has previously been enabled, so the macro <%n> may never get called.\n#endif\n' enable='AT91F_AIC_EnableIt(AT91C_BASE_AIC,AT91C_ID_IRQ1);' disable='AT91F_AIC_DisableIt(AT91C_BASE_AIC,AT91C_ID_IRQ1);' >
            <ioc config='3' >
                <rising port='3' mask='0x40' />
                <falling port='3' mask='0x40' />
            </ioc>
            <options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='AT91F_AIC_ConfigureIt(AT91C_BASE_AIC,AT91C_ID_IRQ1,4,AT91C_AIC_SRCTYPE_EXT_POSITIVE_EDGE,IRQ1_Interrupt);\n' />
                    <entry name='Falling edge of INT' value='AT91F_AIC_ConfigureIt(AT91C_BASE_AIC,AT91C_ID_IRQ1,4,AT91C_AIC_SRCTYPE_INT_EDGE_TRIGGERED,IRQ1_Interrupt);\n' />
                </edge>
            </options>
        </interrupt>
        <interrupt ident='IOC0' type='multipin' name='IOC Port B' handler='#ifndef MX_PORTB_HANDLER\n#define MX_PORTB_HANDLER\nif ((periphID == AT91C_ID_PIOA) &amp;&amp; (IFlags & (PORTB4 | PORTB5 | PORTB6 | PORTB7)))\n{\n\tFCM_%n();\n}\n#else\n#warning The <PORTB> interrupt has previously been enabled, so the macro <%n> may never get called.\n#endif\n' enable='AT91C_BASE_PIOA->PIO_IER = PORTB4 | PORTB5 | PORTB6 | PORTB7;\n' disable='AT91C_BASE_PIOA->PIO_IDR = PORTB4 | PORTB5 | PORTB6 | PORTB7;\n' >
            <ioc config='4' >
                <rising port='1' mask='0xF0' />
                <falling port='1' mask='0xF0' />
            </ioc>
        </interrupt>
        <interrupt ident='TMR1' type='timer16' name='Timer 1' handler='#ifndef MX_TC1CMP_HANDLER\n#define MX_TC1CMP_HANDLER\nif ((periphID == AT91C_ID_TC1) &amp;&amp; (IFlags & AT91C_TC_CPCS))\n{\n\tFCM_%n();\n}\n#else\n#warning The <TC1 CMP> interrupt has previously been enabled, so the macro <%n> may never get called.\n#endif\n' enable='AT91C_BASE_TC1->TC_IER = AT91C_TC_CPCS;\n' disable='AT91C_BASE_TC1->TC_IDR = AT91C_TC_CPCS;\n' >
            <timer overflow='65536' extrange='0' />
            <options >
                <option name='Clock Source Select' >
                    <entry name='high-to-low transition' clkdiv='1' value='AT91C_BASE_TC1->TC_CMR |= 0x00000008;\n' />
                    <entry name='low-to-high transition' clkdiv='1' value='AT91C_BASE_TC1->TC_CMR &= 0xfffffff7;\n' />
                </option>
                <option name='Timer Bit Depth' >
                    <entry name='8-bit count' value='AT91C_BASE_TC1->TC_RC = 0x00000100;\n' />
                    <entry name='9-bit count' value='AT91C_BASE_TC1->TC_RC = 0x00000200;\n' />
                    <entry name='10-bit count' value='AT91C_BASE_TC1->TC_RC = 0x00000400;\n' />
                    <entry name='11-bit count' value='AT91C_BASE_TC1->TC_RC = 0x00000800;\n' />
                    <entry name='12-bit count' value='AT91C_BASE_TC1->TC_RC = 0x00001000;\n' />
                    <entry name='13-bit count' value='AT91C_BASE_TC1->TC_RC = 0x00002000;\n' />
                    <entry name='14-bit count' value='AT91C_BASE_TC1->TC_RC = 0x00004000;\n' />
                    <entry name='15-bit count' value='AT91C_BASE_TC1->TC_RC = 0x00008000;\n' />
		    <entry name='16-bit count' value='AT91C_BASE_TC1->TC_RC = 0x00000000;\n' />
                </option>
                <prescale name='Prescaler Rate' >
                    <entry name='1:2' value='AT91F_TC1_CfgPMC();\nAT91C_BASE_TC1->TC_CMR = 0x0000c000;\nAT91C_BASE_TC1->TC_CCR = 0x05;\n' />
                    <entry name='1:8' value='AT91F_TC1_CfgPMC();\nAT91C_BASE_TC1->TC_CMR = 0x0000c001;\nAT91C_BASE_TC1->TC_CCR = 0x05;\n' />
                    <entry name='1:32' value='AT91F_TC1_CfgPMC();\nAT91C_BASE_TC1->TC_CMR = 0x0000c002;\nAT91C_BASE_TC1->TC_CCR = 0x05;\n' />
                    <entry name='1:128' value='AT91F_TC1_CfgPMC();\nAT91C_BASE_TC1->TC_CMR = 0x0000c003;\nAT91C_BASE_TC1->TC_CCR = 0x05;\n' />
                    <entry name='1:1024' value='AT91F_TC1_CfgPMC();\nAT91C_BASE_TC1->TC_CMR = 0x0000c004;\nAT91C_BASE_TC1->TC_CCR = 0x05;\n' />
                    <entry name='XC0' value='AT91F_TC1_CfgPMC();\nAT91C_BASE_TC1->TC_CMR = 0x0000c005;\nAT91C_BASE_TC1->TC_CCR = 0x05;\n' />
                    <entry name='XC1' value='AT91F_TC1_CfgPMC();\nAT91C_BASE_TC1->TC_CMR = 0x0000c006;\nAT91C_BASE_TC1->TC_CCR = 0x05;\n' />
                    <entry name='XC2' value='AT91F_TC1_CfgPMC();\nAT91C_BASE_TC1->TC_CMR = 0x0000c007;\nAT91C_BASE_TC1->TC_CCR = 0x05;\n' />
                </prescale>
            </options>
        </interrupt>
        <interrupt ident='RXINT0' type='comms' name='UART RXINT0' handler='#ifndef MX_INTHANDLER_UART1\n#define MX_INTHANDLER_UART1\nif ((periphID == AT91C_ID_US1) &amp;&amp; (IFlags & AT91C_US_RXRDY))\n{\n\tFCM_%n();\n}\n#else\n#warning This interrupt has previously been enabled, so the macro <%n> may never get called.\n#endif\n' enable='AT91F_US_EnableIt(AT91C_BASE_US1,AT91C_US_RXRDY);\n' disable='AT91F_US_DisableIt(AT91C_BASE_US1,AT91C_US_RXRDY);\n' />
        <interrupt ident='RXINT1' type='comms' name='UART RXINT1' handler='#ifndef MX_INTHANDLER_UART2\n#define MX_INTHANDLER_UART1\nif ((periphID == AT91C_ID_US0) &amp;&amp; (IFlags & AT91C_US_RXRDY))\n{\n\tFCM_%n();\n}\n#else\n#warning This interrupt has previously been enabled, so the macro <%n> may never get called.\n#endif\n' enable='AT91F_US_EnableIt(AT91C_BASE_US0,AT91C_US_RXRDY);\n' disable='AT91F_US_DisableIt(AT91C_BASE_US0,AT91C_US_RXRDY);\n' />        
        <interrupt ident='TMR2' type='timer16' name='Timer 2' handler='#ifndef MX_TC2CMP_HANDLER\n#define MX_TC2CMP_HANDLER\nif ((periphID == AT91C_ID_TC2) &amp;&amp; (IFlags & AT91C_TC_CPCS))\n{\n\tFCM_%n();\n}\n#else\n#warning The <TC2 CMP> interrupt has previously been enabled, so the macro > may never get called.\n#endif\n' enable='AT91C_BASE_TC1->TC_IER = AT91C_TC_CPCS;\n' disable='AT91C_BASE_TC1->TC_IDR = AT91C_TC_CPCS;\n' >
            <timer overflow='65536' extrange='0' />
            <options >
                <option name='Clock Source Select' >
                    <entry name='high-to-low transition' clkdiv='1' value='AT91C_BASE_TC2->TC_CMR |= 0x00000008;\n' />
                    <entry name='low-to-high transition' clkdiv='1' value='AT91C_BASE_TC2->TC_CMR &= 0xfffffff7;\n' />
                </option>
                <option name='Timer Bit Depth' >
                    <entry name='8-bit count' value='AT91C_BASE_TC2->TC_RC = 0x00000100;\n' />
                    <entry name='9-bit count' value='AT91C_BASE_TC2->TC_RC = 0x00000200;\n' />
                    <entry name='10-bit count' value='AT91C_BASE_TC2->TC_RC = 0x00000400;\n' />
                    <entry name='11-bit count' value='AT91C_BASE_TC2->TC_RC = 0x00000800;\n' />
                    <entry name='12-bit count' value='AT91C_BASE_TC2->TC_RC = 0x00001000;\n' />
                    <entry name='13-bit count' value='AT91C_BASE_TC2->TC_RC = 0x00002000;\n' />
                    <entry name='14-bit count' value='AT91C_BASE_TC2->TC_RC = 0x00004000;\n' />
                    <entry name='15-bit count' value='AT91C_BASE_TC2->TC_RC = 0x00008000;\n' />
		    <entry name='16-bit count' value='AT91C_BASE_TC2->TC_RC = 0x00000000;\n' />
                </option>
                <prescale name='Prescaler Rate' >
                    <entry name='1:2' value='AT91F_TC2_CfgPMC();\nAT91C_BASE_TC2->TC_CMR = 0x0000c000;\nAT91C_BASE_TC2->TC_CCR = 0x05;\n' />
                    <entry name='1:8' value='AT91F_TC2_CfgPMC();\nAT91C_BASE_TC2->TC_CMR = 0x0000c001;\nAT91C_BASE_TC2->TC_CCR = 0x05;\n' />
                    <entry name='1:32' value='AT91F_TC2_CfgPMC();\nAT91C_BASE_TC2->TC_CMR = 0x0000c002;\nAT91C_BASE_TC2->TC_CCR = 0x05;\n' />
                    <entry name='1:128' value='AT91F_TC2_CfgPMC();\nAT91C_BASE_TC2->TC_CMR = 0x0000c003;\nAT91C_BASE_TC2->TC_CCR = 0x05;\n' />
                    <entry name='1:1024' value='AT91F_TC2_CfgPMC();\nAT91C_BASE_TC2->TC_CMR = 0x0000c004;\nAT91C_BASE_TC2->TC_CCR = 0x05;\n' />
                    <entry name='XC0' value='AT91F_TC2_CfgPMC();\nAT91C_BASE_TC2->TC_CMR = 0x0000c005;\nAT91C_BASE_TC2->TC_CCR = 0x05;\n' />
                    <entry name='XC1' value='AT91F_TC2_CfgPMC();\nAT91C_BASE_TC2->TC_CMR = 0x0000c006;\nAT91C_BASE_TC2->TC_CCR = 0x05;\n' />
                    <entry name='XC2' value='AT91F_TC2_CfgPMC();\nAT91C_BASE_TC2->TC_CMR = 0x0000c007;\nAT91C_BASE_TC2->TC_CCR = 0x05;\n' />
                </prescale>
            </options>
        </interrupt>
    </interrupts>
</device>
<inline >
    <defines code="#define MCK MX_CLK_SPEED\n#define MCKKHz (MCK/1000)\n#define MCKMHz ((MCKKHz+500)/1000)\n\n" />
    <directives code="#include <Cstartup_SAM7_FCV4.c>\n#include <Board_EB031.h>\n#include <arm7io.c>\n#include <MX_interrupts.h>\n#include <stdlib.h>\n#include <OSstubs.c>\n\nint errno;\n\n" />
    <main >
        <start code='\nint main()\n{\n' />
        <end code='\tmainendloop: goto mainendloop;\n}\n\n' />
        <init code='AT91F_PIO_CfgInput(AT91C_BASE_PIOA, 0xffffffff);\n\tAT91C_BASE_PIOA->PIO_IFER = 0xffffffff;\n\tAT91C_BASE_PIOA->PIO_PPUDR = 0xffffffff;\n\tAT91C_BASE_TCB->TCB_BMR = 0;\n' />
    </main>
    <interrupt >
        <enable code='' />
        <start code='void FC_Interrupt(unsigned int, unsigned int);\nvoid FC_Interrupt(unsigned int periphID, unsigned int IFlags)\n{\n' />
        <end code='}\n\n' />
        <init code='InterruptCfg();\n' />
    </interrupt>
    <config >
    	<start code='//Configuration Start\n' />
        <body code='' />
        <end code='//Configuration End\n\n' />
    </config>
</inline>
<test >
    <icd >
        <clock port='1' pin='6' />
        <data port='1' pin='7' />
    </icd>
</test>
</root>
