<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE codeDefinitions SYSTEM "../codeDefinitions.dtd" >
<codeDefinitions>
	<codeBlock>
		<code name="fuses" caption="fuses (DCR) configuration">
			<line comment="B1=GCP B0=GWRP"></line>
			<line register="FGS" action="WCFG" mask="0xFFFF" comment=""></line>
			<line comment="B2:0=FNOSC2:0"></line>
			<line register="FOSCSEL" action="WCFG" mask="0xFFFF" comment=""></line>
			<line comment="B7:6=FCKSM1:0 B2=OSCIOFNC B1:0=POSCMD1:0"></line>
			<line register="FOSC" action="WCFG" mask="0xFFFF" comment=""></line>
			<line comment="B7=FWDTEN B6=WINDIS B4=WDTPRE B3:0=WDTPOST3:0"></line>
			<line register="FWDT" action="WCFG" mask="0xFFFF" comment=""></line>
			<line comment="B7=PWMPIN B6=HPOL B5=LPOL B3=PWRTEN B2:0=FPWRT2:0"></line>
			<line register="FPOR" action="WCFG" mask="0xFFFF" comment=""></line>
		</code>
		
		<code name="PeripheralPinMap" caption="Associate mappable pin functions with pins.">
	
  			<line comment="Unlock Registers"></line>
  			<line code="MOV #OSCCON, W1" comment=""></line>
			<line code="MOV #0x46, W2" comment=""></line>
			<line code="MOV #0x57, W3" comment=""></line>
			<line code="MOV.B W2, [W1]" comment=""></line>
			<line code="MOV.B W3, [W1]" comment=""></line>
			<line code="BCLR OSCCON, #6" comment=""></line>
		    
			<line register="RPINR0" action="WREG" mask="0x1f1f" comment=""/>
			<line register="RPINR1" action="WREG" mask="0x1f1f" comment=""/>
			<line register="RPINR3" action="WREG" mask="0x1f1f" comment=""/>
			<line register="RPINR7" action="WREG" mask="0x1f1f" comment=""/>
			<line register="RPINR10" action="WREG" mask="0x1f1f" comment=""/>
			<line register="RPINR11" action="WREG" mask="0x1f1f" comment=""/>
			<line register="RPINR18" action="WREG" mask="0x1f1f" comment=""/>
			<line register="RPINR20" action="WREG" mask="0x1f1f" comment=""/>
			<line register="RPINR21" action="WREG" mask="0x1f1f" comment=""/>

			<line register="RPOR0" action="WREG" mask="0x1f1f" comment=""/>
			<line register="RPOR2" action="WREG" mask="0x1f1f" comment=""/>
			<line register="RPOR3" action="WREG" mask="0x1f1f" comment=""/>
			<line register="RPOR4" action="WREG" mask="0x1f1f" comment=""/>
			<line register="RPOR7" action="WREG" mask="0x1f1f" comment=""/>
		    
			<line comment="Lock Registers"></line>
			
			<line code="MOV #OSCCON, W1" comment=""></line>
			<line code="MOV #0x46, W2" comment=""></line>
			<line code="MOV #0x57, W3" comment=""></line>
			<line code="MOV.B W2, [W1]" comment=""></line>
			<line code="MOV.B W3, [W1]" comment=""></line>
			<line code="BSET OSCCON, #6" comment=""></line>
    
		</code>
		
		<code name="Interrupts" caption="Disable Interrupts during configuration">
			<line comment="clear int flags:"></line>
			<line comment="B14=DMA1 B13=AD1 B12=U1TX B11=U1RX B10=SPI1 B9=SPI1E B8=T3"></line>
			<line comment="B7=T2 B6=OC2 B5=IC2 B4=DMA0 B3=T1 B2=OC1 B1=IC1 B0=INT0"></line>
			<line register="IFS0" action="W" value="0x0000" mask="0xFFFF" comment=""></line>
			<line comment="B15=U2TX B14=U2RX B13=INT2 B12=T5 B11=T4 B10=OC4 B9=OC3 B8=DMA2"></line>
			<line comment="B7=IC8 B6=IC7 B5=AD2 B4=INT1 B3=CN B1=MI2C1 B0=SI2C1"></line>
			<line register="IFS1" action="W" value="0x0000" mask="0xFFFF" comment=""></line>
			<line comment="B7=C2TX B6=C1TX B5=DMA7 B4=DMA6 B2=U2E B1=U1E B0=FLTB "></line>
			<line register="IFS4" action="W" value="0x0000" mask="0xFFFF" comment=""></line>
			<line register="IEC0" action="W" value="0x0000" mask="0xFFFF" comment=""></line>
			<line register="IEC1" action="W" value="0x0000" mask="0xFFFF" comment=""></line>
			<line register="IEC4" action="W" value="0x0000" mask="0xFFFF" comment=""></line>
		</code>
		
		<code name="Reset" caption="Reset configuration">
			<line comment="B15=TRAPR B14=IOPUWR B13=BGST B8=VREGS"></line>
			<line comment="B7=EXTR B6=SWR B5=SWDTEN B4=WDTO B3=SLEEP B2=IDLE B1=BOR B0=POR"></line>
			<line register="RCON" action="WREG" mask="0xFFFF" comment=""></line>
		</code>
						
		<code name="NVM" caption="NVM configuration - not implemented">
		
    </code>
		<code name="Oscillator" caption="Oscillator configuration">
			<line comment="method to override OSCCON write protect"></line>
			<line comment="B13:12=COSC1:0 B9:8=NOSC1:0"></line>
			<line register="OSCCON" action="LREG.b_H" value="WREG" mask="0x00FF" comment=""></line>
			<line register="W1" action="W.b_H" value="0x78" mask="0x00FF" comment=""></line>
			<line register="W2" action="W.b_H" value="0x9A" mask="0x00FF" comment=""></line>
			<line code="MOV.W #OSCCON, W3" comment=""></line>
			<line code="MOV.B W1, [W3+1]" comment=""></line>
			<line code="MOV.B W2, [W3+1]" comment=""></line>
			<line code="MOV.B W0, [W3+1]" comment=""></line>
			<line comment="B7=CLKLOCK B5=LOCK B3=CF B1=LPOSCEN B0=OSWEN"></line>
			<line register="OSCCON" action="LREG.b_L" value="WREG" mask="0x00FF" comment=""></line>
			<line register="W1" action="W.b_L" value="0x46" mask="0x00FF" comment=""></line>
			<line register="W2" action="W.b_L" value="0x57" mask="0x00FF" comment=""></line>
			<line code="MOV.B W1, [W3+0]" comment=""></line>
			<line code="MOV.B W2, [W3+0]" comment=""></line>
			<line code="MOV.B W0, [W3+0]" comment=""></line>
			<line comment="B15=ROI B14:12=DOZE2:0 B11=DOZEN B10:8=FRCDIV2:0"></line>
			<line comment="B7:6=PLLPOST1:0 B4:0=PLLPRE4:0"></line>
			<line register="CLKDIV" action="WREG" mask="0xFFDF" comment=""></line>
			<line comment="B8:0=PLLDIV8:0"></line>
			<line register="PLLFBD" action="WREG" mask="0x003F" comment=""></line>
			<line comment="B5:0=TUN5:0"></line>
			<line register="OSCTUN" action="WREG" mask="0x00DF" comment=""></line>
		</code>
		<code name="A2D" caption="A2D configuration">
			<line register="ADPCFG" action="W" value="0xFFFF" mask="0xFFFF" comment="force all A2D ports to digital IO at first"></line>
		</code>
		<code name="IOPortA" caption="IO Ports configuration">
			<line comment="B15:0=A15:0"></line>
			<line register="PORTA" action="WREG" mask="0xFFFF" comment="enable"></line>
			<line register="TRISA" action="WREG" mask="0xFFFF" comment="direction in=1"></line>
			<line register="ODCA" action="WREG" mask="0xFFFF" comment="direction in=1"></line>
		</code>
		<code name="IOPortB" caption="IO Ports configuration">
			<line comment="B15:0=B15:0"></line>
			<line register="PORTB" action="WREG" mask="0xFFFF" comment="enable"></line>
			<line register="TRISB" action="WREG" mask="0xFFFF" comment="direction in=1"></line>
		</code>
		
		<code name="CN1" caption="Input Change Notification configuration">
			<line comment="B15:0=CN15:0"></line>
			<line register="CNEN1" action="WREG" mask="0xFFFF" comment="enable change notification"></line>
			<line register="CNPU1" action="WREG" mask="0xFFFF" comment="enable pullup change notification"></line>
			<line comment="B15:0=CN23:16 B7:0=CN7:0"></line>
			<line register="CNEN2" action="WREG" mask="0x003F" comment="enable change notification"></line>
			<line register="CNPU2" action="WREG" mask="0x003F" comment="enable pullup change notification"></line>
		</code>
		<code name="CPU" caption="CPU register configuration">
			<line register="SR" action="WMAN" value="0x0000" mask="0xFFFF" comment=""></line>
			<line register="SR" action="WREGMAN" mask="0xFFFF" comment=""></line>
			<line register="W0" action="WMAN" value="0x0000" mask="0xFFFF" comment=""></line>
			<line register="W1" action="WMAN" value="0x0000" mask="0xFFFF" comment=""></line>
			<line register="W2" action="WMAN" value="0x0000" mask="0xFFFF" comment=""></line>
		</code>
		<code name="Timer1" caption="Timers configuration">
			<line register="T1CON" action="W" value="0x0000" mask="0xFFFF" comment="stop timer"></line>
		</code>
		<code name="Timer2" caption="Timers configuration">
			<line register="T2CON" action="W" value="0x0000" mask="0xFFFF" comment="stop timer"></line>
		</code>
		<code name="Timer3" caption="Timers configuration">
			<line register="T3CON" action="W" value="0x0000" mask="0xFFFF" comment="stop timer"></line>
		</code>
		<code name="Timer1" caption="Timers configuration">
			<line register="TMR1" action="WREG" mask="0xFFFF" comment="timer register"></line>
			<line register="PR1" action="WREG" mask="0xFFFF" comment="period register"></line>
		</code>
		<code name="Timer2" caption="Timers configuration">
			<line register="TMR2" action="WREG" mask="0xFFFF" comment="timer register"></line>
			<line register="PR2" action="WREG" mask="0xFFFF" comment="period register"></line>
		</code>
		<code name="Timer3" caption="Timers configuration">
			<line register="TMR3" action="WREG" mask="0xFFFF" comment="timer register"></line>
			<line register="TMR3HLD" action="WREG" mask="0xFFFF" comment="timer holding register for 32bit"></line>
			<line register="PR3" action="WREG" mask="0xFFFF" comment="period register"></line>
		</code>
		<code name="IC1" caption="Input Capture configuration">
			<line comment="B13=ICSDL B7=ICTMR B6:5=ICI1:0 B4=ICOV B3=ICBNE B2:0=ICM2:0"></line>
			<line register="IC1CON" action="WREG" mask="0xFFFF" comment=""></line>
		</code>
		<code name="IC2" caption="Input Capture configuration">
			<line comment="B13=ICSDL B7=ICTMR B6:5=ICI1:0 B4=ICOV B3=ICBNE B2:0=ICM2:0"></line>
			<line register="IC2CON" action="WREG" mask="0xFFFF" comment=""></line>
		</code>
		<code name="IC7" caption="Input Capture configuration">
			<line comment="B13=ICSDL B7=ICTMR B6:5=ICI1:0 B4=ICOV B3=ICBNE B2:0=ICM2:0"></line>
			<line register="IC7CON" action="WREG" mask="0xFFFF" comment=""></line>
		</code>
		<code name="IC8" caption="Input Capture configuration">
			<line comment="B13=ICSDL B7=ICTMR B6:5=ICI1:0 B4=ICOV B3=ICBNE B2:0=ICM2:0"></line>
			<line register="IC8CON" action="WREG" mask="0xFFFF" comment=""></line>
		</code>
		<code name="OC1" caption="Turn off OC1 thru OC8">
			<line comment="associated timers need to be turned off first"></line>
			<line register="OC1CON" action="W" value="0x0000" mask="0xFFFF" comment=""></line>
		</code>
		<code name="OC2" caption="Turn off OC1 thru OC8">
			<line comment="associated timers need to be turned off first"></line>
			<line register="OC2CON" action="W" value="0x0000" mask="0xFFFF" comment=""></line>
		</code>
		<code name="OC1" caption="Output Compare configuration">
			<line comment="OCnRS:  output compare n secondary register"></line>
			<line comment="OCnR:   output compare 1 main register"></line>
			<line comment="OCnCON: B13=OCSIDL B4=OCFLT B3=OCTSEL B2:0=OCM2:0"></line>
			<line register="OC1RS" action="WREG" mask="0xFFFF" comment=""></line>
			<line register="OC1R" action="WREG" mask="0xFFFF" comment=""></line>
			<line register="OC1CON" action="WREG" mask="0xFFFF" comment=""></line>
		</code>
		<code name="OC2" caption="Output Compare configuration">
			<line comment="OCnRS:  output compare n secondary register"></line>
			<line comment="OCnR:   output compare 1 main register"></line>
			<line comment="OCnCON: B13=OCSIDL B4=OCFLT B3=OCTSEL B2:0=OCM2:0"></line>
			<line register="OC2RS" action="WREG" mask="0xFFFF" comment=""></line>
			<line register="OC2R" action="WREG" mask="0xFFFF" comment=""></line>
			<line register="OC2CON" action="WREG" mask="0xFFFF" comment=""></line>
		</code>
		<code name="SPI1" caption="SPI configuration">
			<line comment="SPInBUF:    SPI n buffer"></line>
			<line comment="SPInSTAT:   B15=SPIEN B13=SPISIDL B6=SPIROV B5=SPITBF B0=SPIRBF"></line>
			<line comment="SPInCON1(H): B12=DISSCK B11=DISSDO B10=MODE16 B9=SMP B8=CKE"></line>
			<line comment="SPInCON1(L): B7=SSEN B6=CKP B5=MSTEN B4:2=SPRE2:0 B1:0=PPRE1:0"></line>
			<line comment="SPInCON2(H): B15=FRMEN B14=SPIFSD B13=FRMPOL"></line>
			<line comment="SPInCON2(L): B1=FRMDLY"></line>
			<line register="SPI1BUF" action="R" mask="0xFFFF" comment=""></line>		
			<line register="SPI1CON1" action="WREG" mask="0xFFFF" comment=""></line>
			<line register="SPI1CON2" action="WREG" mask="0xFFFF" comment=""></line>
			<line register="SPI1STAT" action="WREG" mask="0xFFFF" comment=""></line>
		</code>
	
		<code name="I2C1" caption="I2C configuration">
			<line comment="B7:0: receive register bits7:0"></line>
			<line register="I2C1RCV" action="R" mask="0x00FF" comment=""></line>
			<line comment="B9:0: address register bits9:0"></line>
			<line register="I2C1ADD" action="WREG" mask="0x03FF" comment=""></line>
			<line comment="B8:0: baud rate generator bits 8:0"></line>
			<line register="I2C1BRG" action="WREG" mask="0x01FF" comment=""></line>
			<line comment="B15=ACKSTAT B14=TRSTAT B10=BCL B9=GCSTAT B8=ADD10"></line>
			<line comment="B7=IWCOL B6=I2COV B5=D_A B4=P B3=S B2=R_W B1=RBF B0=TBF"></line>
			<line register="I2C1STAT" action="WREG" mask="0xC7FF" comment=""></line>
			<line comment="B15=I2CEN B13=I2CSIDL B12=SCLREL B11=IPMIEN B10=A10M B9=DISSLW B8=SMEN"></line>
			<line comment="B7=GCEN B6=STREN B5=ACKDT B4=ACKEN B3=RCEN B2=PEN B1=RSEN B0=SEN"></line>
			<line register="I2C1CON" action="WREG" mask="0xBFFF" comment=""></line>
		</code>
		
		<code name="UART1" caption="UART 1 configuration">
			<line register="U1BRG" action="WREG" mask="0xFFFF" comment="UART1 baud rate generator"></line>
			<line register="U1MODE" action="W" value="0x8000" mask="0xFFFF" comment="enabling UART flushes buffers"></line>
			<line comment="B15=UTXISEL1 B14=UTXINV B13=UTXISEL0	 B11=UTXBRK B10=UTXEN B9=UTXBF B8=TRMT"></line>
			<line comment="B7:6=URXISEL1:0 B5=ADDEN B4=RIDLE B3=PERR B2=FERR B1=OERR B0=URXDA"></line>
			<line register="U1STA" action="WREG" mask="0xFFFF" comment=""></line>
			<line comment="B15=UARTEN B13=USIDL B12=IREN B11=RTSMD B9:8=UEN1:0"></line>
			<line comment="B7=WAKE B6=LPBACK B5=ABAUD B4=RXINV B5=BRGH B2:1=PDSEL1:0 B0=STSEL"></line>
			<line register="U1MODE" action="WREG" mask="0xFFFF" comment=""></line>
		</code>
		
		<code name="A2D1" caption="A2D 1 configuration">
			<line register="AD1CON1" action="W" value="0x0000" mask="0xFFFF" comment="Turn off A2D before setting registers"></line>
			<line comment="B15:0=CSSL31:16"></line>
			<line register="AD1CSSH" action="WREG" mask="0xFFFF" comment=""></line>
			<line comment="B15:0=CSSL15:0"></line>
			<line register="AD1CSSL" action="WREG" mask="0xFFFF" comment=""></line>
			<line comment="B10:9=CH123NB1:0 B8=CH123SB B2:1=CH123NA1:0 B0=CH123SA"></line>
			<line register="AD1CHS123" action="WREG" mask="0xFFFF" comment=""></line>
			<line comment="B15:14=CH0NB1:0 B11:8=CH0SB3:0"></line>
			<line comment="B7=CH0NA B3:0=CH0SA3:0"></line>
			<line register="AD1CHS0" action="WREG" mask="0xFFFF" comment=""></line>
			<line comment="B15:0=PCFG31:16"></line>
			<line register="AD1PCFGH" action="WREG" mask="0xFFFF" comment=""></line>
			<line comment="B15:0=PCFG15:0"></line>
			<line register="AD1PCFGL" action="WREG" mask="0xFFFF" comment=""></line>
			<line comment="B2:0=DMABL"></line>
			<line register="AD2CON4" action="WREG" mask="0xFFFF" comment=""></line>
			<line comment="B15=ADRC B12:8=SAMC4:0 B5:0=ADCS5:0"></line>
			<line register="AD1CON3" action="WREG" mask="0xFFFF" comment=""></line>
			<line comment="B15:13=VCFG2:0 B10=CSCNA B9:8=CHPS"></line>
			<line comment="B7=BUFS B5:2=SMPI B1=BUFM B0=ALTS"></line>
			<line register="AD1CON2" action="WREG" mask="0xFFFF" comment=""></line>
			<line comment="B15=ADON B13=ADSIDL B12=ADDMBAM B10=AD12B B9:8=FORM"></line>
			<line comment="B7:5=SSRC B3=SIMSAM B2=ASAM B1=SAMP B0=DONE"></line>
			<line register="AD1CON1" action="WREG" mask="0xFFFF" comment=""></line>
		</code>
		<code name="required" caption="Interrupt flags cleared and interrupt configuration">
			<line comment="interrupt priorities IP"></line>
			<line comment="B14:12=T1 B10:8=OC1 B6:4=IC1 B2:0=INTO"></line>
			<line register="IPC0" action="WREG" mask="0x7777" comment=""></line>
			<line comment="B14:12=T2 B10:8=OC2 B6:4=IC2 B2:0=DMA0"></line>
			<line register="IPC1" action="WREG" mask="0x7777" comment=""></line>
			<line comment="B14:12=U1RX B10:8=SPI1 B6:4=SPI1E B2:0=T3"></line>
			<line register="IPC2" action="WREG" mask="0x7777" comment=""></line>
			<line comment="B10:8=DMA1 B6:4=AD1 B2:0=U1TX"></line>
			<line register="IPC3" action="WREG" mask="0x0777" comment=""></line>
			<line comment="B14:12=CN B6:4=MI2C1 B2:0=SI2C1"></line>
			<line register="IPC4" action="WREG" mask="0x7077" comment=""></line>
			<line comment="B14:12=IC8 B10:8=IC7 B6:4=AD2 B2:0=INT1"></line>
			<line register="IPC5" action="WREG" mask="0x7777" comment=""></line>
			<line comment="B14:12=T4 B10:8=OC4 B6:4=OC3 B2:0=DMA2"></line>
			<line register="IPC6" action="WREG" mask="0x7777" comment=""></line>
			<line comment="B14:12=U2TX B10:8=U2RX B6:4=INT2 B2:0=T5"></line>
			<line register="IPC7" action="WREG" mask="0x7777" comment=""></line>
			<line comment="B14:12=C1 B10:8=C1RX B6:4=SPI2 B2:0=SPI2E"></line>
			<line register="IPC8" action="WREG" mask="0x7777" comment=""></line>
			<line comment="B14:12=IC5 B10:8=IC4 B6:4=IC3 B2:0=DMA3"></line>
			<line register="IPC9" action="WREG" mask="0x7777" comment=""></line>
			<line comment="B14:12=OC7 B10:8=OC6 B6:4=OC6 B2:0=IC6"></line>
			<line register="IPC10" action="WREG" mask="0x7777" comment=""></line>
			<line comment="B14:12=T6 B10:8=DMA4 B2:0=OC8"></line>
			<line register="IPC11" action="WREG" mask="0x7707" comment=""></line>
			<line comment="B14:12=T8 B10:8=MI2C2 B6:4=SI2C2 B2:0=T7"></line>
			<line register="IPC12" action="WREG" mask="0x7777" comment=""></line>
			<line comment="B14:12=C2RX B10:8=INT4 B6:4=INT3 B2:0=T9"></line>
			<line register="IPC13" action="WREG" mask="0x7777" comment=""></line>
			<line comment=" B10:8=QEI B6:4=PWM B2:0=C2"></line>
			<line register="IPC14" action="WREG" mask="0x0777" comment=""></line>
			<line comment="B14:12=FLTA B6:4=DMA5"></line>
			<line register="IPC15" action="WREG" mask="0x7700" comment=""></line>
			<line comment="B10:8=U2E B6:4=U1E B2:0=FLTB"></line>
			<line register="IPC16" action="WREG" mask="0x7777" comment=""></line>
			<line comment="B14:12=C2TX B10:8=C1TX B6:4=DMA7 B2:0=DMA6"></line>
			<line register="IPC17" action="WREG" mask="0x7777" comment=""></line>
			<line comment="external interrupt enables"></line>
			<line comment="B15=NSTDIS B14=OVAERR B13=OVBERR B12=COVAERR B11=COVBERR B10=OVATE B9=OVBTE B8=COVTE"></line>
			<line comment="B7=SFTACERR B6=DIV0ERR B5=DMACERR B4=MATHERR B3=ADDRERR B2=STKERR B1=OSCFAIL"></line>
			<line register="INTCON1" action="WREG" mask="0xFFFE" comment=""></line>
			<line comment="B15=ALTIVT B14=DISI B4:0=INTnEP4:0"></line>
			<line register="INTCON2" action="WREG" mask="0xC01F" comment=""></line>
		</code>
		<code name="Timer1" caption="Start timers">
			<line comment="Timers1: B15=TON B13=TSIDL B5=TGATE B5:4=TCKPS1:0 B2=TSYNC B1=TCS"></line>
			<line register="T1CON" action="WREG" mask="0xFFFF" comment=""></line>
		</code>
		<code name="Timer3" caption="Start timers">
			<line comment="Timers3,5:   B15=TON B13=TSIDL B5=TGATE B5:4=TCKPS1:0 B1=TCS"></line>
			<line register="T3CON" action="WREG" mask="0xFFFF" comment=""></line>
		</code>
		<code name="Timer2" caption="Start timers">
			<line comment="Timers2,4:   B15=TON B13=TSIDL B5=TGATE B5:4=TCKPS1:0 B3=T32 B1=TCS"></line>
			<line register="T2CON" action="WREG" mask="0xFFFF" comment=""></line>
		</code>
		<code name="CPU" caption="CPU register configuration">
			<line register="SR" action="WMAN" value="0x0000" mask="0xFFFF" comment=""></line>
			<line register="SR" action="WREGMAN" mask="0xFFFF" comment=""></line>
			<line register="W0" action="WMAN" value="0x0000" mask="0xFFFF" comment=""></line>
			<line register="W1" action="WMAN" value="0x0000" mask="0xFFFF" comment=""></line>
			<line register="W2" action="WMAN" value="0x0000" mask="0xFFFF" comment=""></line>
		</code>
		<code name="Interrupts" caption="enable interrupts">
			<line comment="feature interrupt enables IE"></line>
			<line comment="B14=DMA1 B13=AD1 B12=U1TX B11=U1RX B10=SPI1 B9=SPI1E B8=T3"></line>
			<line comment="B7=T2 B6=OC2 B5=IC2 B4=DMA0 B3=T1 B2=OC1 B1=IC1 B0=INT0"></line>
			<line register="IEC0" action="WREG" mask="0xFFFF" comment=""></line>
			<line comment="B15=U2TX B14=U2RX B13=INT2 B12=T5 B11=T4 B10=OC4 B9=OC3 B8=DMA2"></line>
			<line comment="B7=IC8 B6=IC7 B5=AD2 B4=INT1 B3=CN B1=MI2C1 B0=SI2C1"></line>
			<line register="IEC1" action="WREG" mask="0xFFFF" comment=""></line>
			<line comment="B15=T6 B14=DMA4 B12:9=OC8:5 B8:5=IC6:3 B4=DMA3 B3=C1 B2=C1RX B1=SPI2 B0=SPI2E "></line>
			<line register="IEC2" action="WREG" mask="0xFFFF" comment=""></line>
			<line comment="B15=FLTA B13=DMA5 B10=QEI B9=PWM B8=C2"></line>
			<line comment="B7=C2RX B6=INT4 B5=INT3 B4=T9 B3=T8 B2=MI2C2 B1=SI2C1 B0=T7 "></line>
			<line register="IEC3" action="WREG" mask="0xFFFF" comment=""></line>
			<line comment="B7=C2TX B6=C1TX B5=DMA7 B4=DMA6 B2=U2E B1=U1E B0=FLTB "></line>
			<line register="IEC4" action="WREG" mask="0xFFFF" comment=""></line>
			<line code="return" comment="end of init"></line>
		</code>
	</codeBlock>
</codeDefinitions>