<parts>
    <progblock>
        <progval addr="0x03FF" value="0x3430"/> <!-- OSCCAL -->
    </progblock>
    <!-- BANK 0 -->
    <regblock name="SFR0" start="0x0000" end="0x001F">
        <register name="GPIO"    addr="0x05" mask="00111111"
                  bits="GPIO0,GPIO1,GPIO2,GPI3,GPIO4,GPIO5"/>

        <register name="PCLATH"  addr="0x0A" mask="00011111" bits=""/>
        <register name="INTCON"  addr="0x0B" 
                  bits="GPIF,INTF,T0IF,GPIE,INTE,T0IE,PEIE,GIE"/>
                  
        <register name="PIR1"    addr="0x0C" mask="11001001"
                  bits="TMR1IF,0,0,CMIF,0,0,ADIF,EEIF"/>
                  
        <register name="TMR1L"   addr="0x0E" bits=""/>
        <register name="TMR1H"   addr="0x0F" bits=""/>
        <register name="T1CON"   addr="0x10" mask="01111111"
                  bits="TMR1ON,TMR1CS,T1SYNC,T1OSCEN,T1CKPS0,T1CKPS1,TMR1GE"/>

        <register name="CMCON"   addr="0x19" mask="01011111"
                  bits="CM0,CM1,CM2,CIS,CINV,0,COUT,0" />
    </regblock>
    <datablock name="GPR0" start="0x0020" end="0x005F"/>
    
    <!-- BANK 1 -->
    <regblock name="SFR1" start="0x0080" end="0x009F">
        <mapped                  addr="0x80" mapto="0x00"/><!-- INDF -->
        
        <register name="OPTION" addr="0x81" reset="11111111"
                  bits="PS0,PS1,PS2,PSA,T0SE,T0CS,INTEDG,GPPU" />
        
        <mapped                  addr="0x82" mapto="0x02"/><!-- PCL -->
        <mapped                  addr="0x83" mapto="0x03"/><!-- STATUS -->
        <mapped                  addr="0x84" mapto="0x04"/><!-- FSR -->
        
        <register name="TRISIO"  addr="0x85" bits="" reset="00111111" mask="00111111"/>

        <mapped                  addr="0x8A" mapto="0x0A"/><!-- PCLATH -->
        <mapped                  addr="0x8B" mapto="0x0B"/><!-- INTCON -->
        <register name="PIE1"   addr="0x8C" mask="11001001"
                  bits="TMR1IE,0,0,CMIE,0,0,ADIE,EEIE"/>
                  
        <register name="PCON"   addr="0x8E" mask="00000011"
                  bits="BOR,POR" />
                  
        <register name="OSCCAL" addr="0x90" reset="10000000" mask="11111100"
                  bits="0,0,CAL0,CAL1,CAL2,CAL3,CAL4,CAL5"/>
                  
        <register name="WPU"    addr="0x95" bits="" reset="00110111" mask="00110111"/>
        <register name="IOC"    addr="0x96" bits="" mask="00111111"/>
        
        <register name="VRCON"  addr="0x99" mask="10101111"
                  bits="VR0,VR1,VR2,VR3,0,VRR,0,VREN" />
                  
        <register name="EEDATA" addr="0x9A" bits=""/>
        <register name="EEADR"  addr="0x9B" bits="" mask="01111111"/>
        <register name="EECON1" addr="0x9C" mask="00001111"
                  bits="RD,WR,WREN,WRERR"/>
                  
        <register name="EECON2" addr="0x9D" bits=""/>
    </regblock>
    <datablock name="GPR1" start="0x00A0" end="0x00DF" mapto="0x0020"/>

</parts>
