######################################################################
#
# MPLAB IDE .dev File Generated by `pic2dev.py'
#
# Device: PIC24F04KA200
# Family: 24xxxx
# Date: 2008-09-24 13:18:37.460000
#
######################################################################

# Device file info: $Id: PIC24F04KA200.ann,v 1.12 2008/08/11 21:58:46 charled Exp $

# Variant 2
#Chosen template from 24FJ64GA002

#Parts are extremely low voltage
# Make sure these are within the device Limits, very low!
# Make sure these are within the device Limits, very low!



# M_SFR_EMULATOR_MAP    This registers should not be seen by the user

UnusedRegs (0x22-0x2d)
UnusedRegs (0x38-0x41)
UnusedRegs (0x46-0x51)
UnusedRegs (0x54-0x5f)
UnusedRegs(0x64-0x67)
UnusedRegs (0x6c-0x6f)
UnusedRegs (0x74-0x7f)
UnusedRegs (0x88-0x89)
   UnusedRegs (0x8E-0x93)
UnusedRegs (0x98-0x99)
UnusedRegs (0x9E-0xA3)
UnusedRegs (0xB0-0xB1)
UnusedRegs (0xB4-0xB5)
UnusedRegs (0xB6-0xB7)
UnusedRegs (0xB8-0xB9)
UnusedRegs (0xBA-0xBB)
UnusedRegs (0xBC-0xBD)
UnusedRegs (0xBE-0xC1)
UnusedRegs (0xC6-0xC7)
UnusedRegs (0xCA-0xCB)
UnusedRegs (0xCC-0xFF)
UnusedRegs (0x114-0x13f)
UnusedRegs (0x144-0x17f)
UnusedRegs (0x186-0x1ff)
UnusedRegs (0x20e-0x20f)
UnusedRegs (0x210-0x21f)
UnusedRegs (0x22a-0x22f)
UnusedRegs (0x230-0x23f)
UnusedRegs (0x246-0x247)
UnusedRegs (0x24a-0x25f)
UnusedRegs (0x260-0x27f)
UnusedRegs (0x280-0x2bf)
UnusedRegs (0x2d0-0x2fb)
UnusedRegs (0x2fe-0x2ff)
UnusedRegs (0x326-0x327)
UnusedRegs (0x32a-0x32b)
UnusedRegs (0x32e-0x32f)
UnusedRegs (0x332-0x33f)
UnusedRegs (0x33C-0x33F)
UnusedRegs (0x340-0x3ff)
UnusedRegs (0x400-0x5ff)
UnusedRegs (0x600-0x61d)
UnusedRegs (0x628-0x62f)
UnusedRegs (0x638-0x63f)
UnusedRegs (0x648-0x67f)
UnusedRegs (0x680-0x6BF)
UnusedRegs (0x6C0-0x6DE)
UnusedRegs (0x6E0-0x6FF)
UnusedRegs (0x700-0x73f)
  UnusedRegs (0x746-0x747)
  UnusedRegs (0x74A-0x74D)
UnusedRegs (0x750-0x755)
UnusedRegs (0x762-0x765)
UnusedRegs (0x768-0x76f)
UnusedRegs (0x778-0x77f)
UnusedRegs (0x780-0x7ff)

######################################################################
#
# Memory Regions & Other General Device Information
#
######################################################################

vpp (range=2.000-3.500 dflt=3.250)
vdd (range=2.000-3.500 dfltrange=2.000-3.500 nominal=3.250)
pgming (memtech=ee tries=1)
    wait (pgm=10000 eedata=10000 cfg=10000 userid=10000 erase=600)
    latches (pgm=128 eedata=2 cfg=2 rowerase=170)
IsChecksumless=1
breakpoints (numhwbp=3 datacapture=true idbyte=x)
pgmmem (region=0x0-0xaff)
cfgmem (region=0xafc-0xaff)
testmem (region=0x800000-0x8007ff appregion=0x800080-0x8007bf)
cfgwormmem (region=0xf80000-0xf80011)
devid (region=0xff0000-0xff0003 idmask=0xffff0000 id=0xd020000)
bkbgvectmem (region=0x800000-0x800007)
vectors (region=0x4-0xff altregion=0x104-0x1ff)
xymem (region=0x800-0x9ff ymem=0x0-0x0)
emulreg (region=0xfd0000-0xfd0039)
NumBanks=0

######################################################################
#
# Special Function Registers
#
######################################################################

sfr (key=WREG0 addr=0x0 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG0' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG1 addr=0x2 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG1' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG2 addr=0x4 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG2' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG3 addr=0x6 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG3' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG4 addr=0x8 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG4' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG5 addr=0xa size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG5' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG6 addr=0xc size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG6' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG7 addr=0xe size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG7' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG8 addr=0x10 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG8' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG9 addr=0x12 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG9' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG10 addr=0x14 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG10' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG11 addr=0x16 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG11' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG12 addr=0x18 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG12' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG13 addr=0x1a size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG13' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG14 addr=0x1c size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='WREG14' width='16')
    stimulus (scl=r type=int)
sfr (key=WREG15 addr=0x1e size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw u')
    reset (por='0000100000000000' mclr='0000100000000000')
    bit (names='WREG15' width='16')
    stimulus (scl=r type=int)
sfr (key=SPLIM addr=0x20 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw r')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='SPLIM' width='16')
    stimulus (scl=r type=int)
sfr (key=PC addr=0x2e size=4 flags=j)
    stimulus (scl=rb type=pc)
sfr (key=PCL addr=0x2e size=2 access='r r r r r r r r r r r r r r r r')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='PCL' width='16')
    stimulus (scl=rb)
sfr (key=PCH addr=0x30 size=2 access='u u u u u u u u u r r r r r r r')
    reset (por='---------0000000' mclr='---------0000000')
    bit (names='- - - - - - - - - PCH' width='1 1 1 1 1 1 1 1 1 7')
    stimulus (scl=rb)
sfr (key=TBLPAG addr=0x32 size=2 access='u u u u u u u u rw rw rw rw rw rw rw rw')
    reset (por='--------00000000' mclr='--------00000000')
    bit (names='- - - - - - - - TBLPAG' width='1 1 1 1 1 1 1 1 8')
    stimulus (scl=r type=int)
sfr (key=PSVPAG addr=0x34 size=2 access='u u u u u u u u rw rw rw rw rw rw rw rw')
    reset (por='--------00000000' mclr='--------00000000')
    bit (names='- - - - - - - - PSVPAG' width='1 1 1 1 1 1 1 1 8')
    stimulus (scl=r type=int)
sfr (key=RCOUNT addr=0x36 size=2 access='u u rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='--xxxxxxxxxxxxxx' mclr='--uuuuuuuuuuuuuu')
    bit (names='- - RCOUNT' width='1 1 14')
    stimulus (scl=r type=int)
sfr (key=SR addr=0x42 size=2 access='u u u u u u u rw rw rw rw r rw rw rw rw')
    reset (por='-------000000000' mclr='-------000000000')
    bit (names='- - - - - - - DC IPL RA N OV Z C' width='1 1 1 1 1 1 1 1 3 1 1 1 1 1')
    stimulus (scl=r)
sfr (key=CORCON addr=0x44 size=2 access='u u u u u u u u u u u u rc rw u u')
    reset (por='------------00--' mclr='------------00--')
    bit (names='- - - - - - - - - - - - IPL3 PSV - -' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=r)
sfr (key=DISICNT addr=0x52 size=2 access='u u rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='--xxxxxxxxxxxxxx' mclr='--uuuuuuuuuuuuuu')
    bit (names='- - DISICNT' width='1 1 14')
    stimulus (scl=r type=int)
sfr (key=CNEN1 addr=0x60 size=2 access='u u u rw rw u u rw u u u u rw rw rw rw')
    reset (por='---00--0----0000' mclr='---00--0----0000')
    bit (names='- - - CN12IE CN11IE - - CN8IE - - - - CN3IE CN2IE CN1IE CN0IE' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=CNEN2 addr=0x62 size=2 access='u rw rw u u u u u u rw rw u u u u u')
    reset (por='-00------00-----' mclr='-00------00-----')
    bit (names='- CN30IE CN29IE - - - - - - CN22IE CN21IE - - - - -' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=CNPU1 addr=0x68 size=2 access='u u u rw rw u u rw u u u u rw rw rw rw')
    reset (por='---00--0----0000' mclr='---00--0----0000')
    bit (names='- - - CN12PUE CN11PUE - - CN8PUE - - - - CN3PUE CN2PUE CN1PUE CN0PUE' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=CNPU2 addr=0x6a size=2 access='u rw rw u u u u u u rw rw u u u u u')
    reset (por='-00------00-----' mclr='-00------00-----')
    bit (names='- CN30PUE CN29PUE - - - - - - CN22PUE CN21PUE - - - - -' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=ICPD1 addr=0x70 size=2 access='u u u rw rw u u rw u u u u rw rw rw rw')
    reset (por='---00--0----0000' mclr='---00--0----0000')
    bit (names='- - - CN12PDE CN11PDE - - CN8PDE - - - - CN3PDE CN2PDE CN1PDE CN0PDE' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=ICPD2 addr=0x72 size=2 access='u rw rw u u u u u u rw rw u u u u u')
    reset (por='-00------00-----' mclr='-00------00-----')
    bit (names='- CN30PDE CN29PDE - - - - - - CN22PDE CN21PDE - - - - -' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=INTCON1 addr=0x80 size=2 access='rw u u u u u u u u r u rw rw rw rw u')
    reset (por='0--------0-0000-' mclr='0--------0-0000-')
    bit (names='NSTDIS - - - - - - - - DIV0ERR - MATHERR ADDRERR STKERR OSCFAIL -' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=INTCON2 addr=0x82 size=2 access='rw r u u u u u u u u u u u rw rw rw')
    reset (por='00-----------000' mclr='00-----------000')
    bit (names='ALTIVT DISI - - - - - - - - - - - INT2EP INT1EP INT0EP' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=IFS0 addr=0x84 size=2 access='rw u rw rw rw rw rw rw rw u u u rw rw rw rw')
    reset (por='0-0000000---0000' mclr='0-0000000---0000')
    bit (names='NVMIF - ADIF U1TXIF U1RXIF SPF1IF SPI1IF T3IF T2IF - - - T1IF OC1IF IC1IF INT0IF' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=IFS1 addr=0x86 size=2 access='u u u u rw u rw u u u u rw rw rw rw rw')
    reset (por='--0--------00000' mclr='--0--------00000')
    bit (names='- - INT2IF - - - - - - - - INT1IF CNIF CMPIF MI2C1IF SI2C1IF' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=IFS3 addr=0x8a size=2 access='u rw u u u u u u u u u u u u u u')
    reset (por='-0--------------' mclr='-0--------------')
    bit (names='- RTCIF - - - - - - - - - - - - - -' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=IFS4 addr=0x8c size=2 access='u u u u u u u rw u u u u rw u rw u')
    reset (por='-------0----0-0-' mclr='--0----0----0-0-')
    bit (names='- - - - - - - LVDIF - - - - CRCIF - U1ERIF -' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=IEC0 addr=0x94 size=2 access='rw u rw rw rw rw rw rw rw u u u rw rw rw rw')
    reset (por='0-0000000---0000' mclr='0-0000000---0000')
    bit (names='NVMIE - AD1IE U1TXIE U1RXIE SPI1IE SPF1IE T3IE T2IE - - - T1IE OC1IE IC1IE INT0IE' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=IEC1 addr=0x96 size=2 access='u u rw u u u u u u u u rw rw rw rw rw')
    reset (por='--0--------00000' mclr='--0--------00000')
    bit (names='- - INT2IE - - - - - - - - INT1IE CNIE CMPIE MI2C1IE SI2C1IE' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=IEC3 addr=0x9a size=2 access='u rw u u u u u u u u u u u u u u')
    reset (por='-0--------------' mclr='-0--------------')
    bit (names='- RTCIE - - - - - - - - - - - - - -' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=IEC4 addr=0x9c size=2 access='u u u u u u u rw u u u u rw u rw u')
    reset (por='-------0----0-0-' mclr='--0----0----0-0-')
    bit (names='- - - - - - - LVDIE - - - - CRCIE - U1ERIE -' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=IPC0 addr=0xa4 size=2 access='u rw rw rw u rw rw rw u rw rw rw u rw rw rw')
    reset (por='-100-100-100-100' mclr='-uuu-uuu-uuu-uuu')
    bit (names='- T1IP - OC1IP - IC1IP - INT0IP' width='1 3 1 3 1 3 1 3')
    stimulus (scl=rwb)
sfr (key=IPC1 addr=0xa6 size=2 access='u rw rw rw u u u u u u u u u u u u')
    reset (por='-100------------' mclr='-uuu------------')
    bit (names='- T2IP - - - - - - - - - - - -' width='1 3 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=IPC2 addr=0xa8 size=2 access='u rw rw rw u rw rw rw u rw rw rw u rw rw rw')
    reset (por='-100-100-100-100' mclr='-uuu-uuu-uuu-uuu')
    bit (names='- U1RXIP - SP1IP - SPF1IP - T3IP' width='1 3 1 3 1 3 1 3')
    stimulus (scl=rwb)
sfr (key=IPC3 addr=0xaa size=2 access='u rw rw rw u u u u u rw rw rw u rw rw rw')
    reset (por='-100-----100-100' mclr='-100-----uuu-uuu')
    bit (names='- NVMIP - - - - - ADIP - U1TXIP' width='1 3 1 1 1 1 1 3 1 3')
    stimulus (scl=rwb)
sfr (key=IPC4 addr=0xac size=2 access='u rw rw rw u rw rw rw u rw rw rw u rw rw rw')
    reset (por='-100-100-100-100' mclr='-uuu-uuu-uuu-uuu')
    bit (names='- CNIP - CMPIP - MI2C1P - SI2C1P' width='1 3 1 3 1 3 1 3')
    stimulus (scl=rwb)
sfr (key=IPC5 addr=0xae size=2 access='u u u u u u u u u u u u u rw rw rw')
    reset (por='-------------100' mclr='-------------uuu')
    bit (names='- - - - - - - - - - - - - INT1IP' width='1 1 1 1 1 1 1 1 1 1 1 1 1 3')
    stimulus (scl=rwb)
sfr (key=IPC7 addr=0xb2 size=2 access='u u u u u u u u u rw rw rw u u u u')
    reset (por='---------100----' mclr='---------uuu----')
    bit (names='- - - - - - - - - INT2IP - - - -' width='1 1 1 1 1 1 1 1 1 3 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=IPC15 addr=0xc2 size=2 access='u u u u u rw rw rw u u u u u u u u')
    reset (por='-----100--------' mclr='-----uuu--------')
    bit (names='- - - - - RTCIP - - - - - - - -' width='1 1 1 1 1 3 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=IPC16 addr=0xc4 size=2 access='u rw rw rw u u u u u rw rw rw u u u u')
    reset (por='-100-----100----' mclr='-uuu-----uuu----')
    bit (names='- CRCIP - - - - - U1ERRIP - - - -' width='1 3 1 1 1 1 1 3 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=IPC18 addr=0xc8 size=2 access='u u u u u u u u u u u u u rw rw rw')
    reset (por='-------------100' mclr='-------------100')
    bit (names='- - - - - - - - - - - - - LVDIP' width='1 1 1 1 1 1 1 1 1 1 1 1 1 3')
    stimulus (scl=rwb)
sfr (key=TMR1 addr=0x100 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='xxxxxxxxxxxxxxxx' mclr='uuuuuuuuuuuuuuuu')
    bit (names='TMR1' width='16')
    stimulus (scl=rwb type=int)
sfr (key=PR1 addr=0x102 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='1111111111111111' mclr='1111111111111111')
    bit (names='PR1' width='16')
    stimulus (scl=rwb type=int)
sfr (key=T1CON addr=0x104 size=2 access='rw u rw u u u u u u rw rw rw u rw rw u')
    reset (por='0-0------000-00-' mclr='0-0------uuu-uu-')
    bit (names='TON - TSIDL - - - - - - TGATE TCKPS - T1SYNC TCS -' width='1 1 1 1 1 1 1 1 1 1 2 1 1 1 1')
    stimulus (scl=rwb)
    freeze (name='TIMER1' bit=14 polarity=1)
sfr (key=TMR2 addr=0x106 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='xxxxxxxxxxxxxxxx' mclr='uuuuuuuuuuuuuuuu')
    bit (names='TMR2' width='16')
    stimulus (scl=rwb type=int)
sfr (key=TMR3HLD addr=0x108 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='xxxxxxxxxxxxxxxx' mclr='uuuuuuuuuuuuuuuu')
    bit (names='TMR3HLD' width='16')
    stimulus (scl=rwb type=int)
sfr (key=TMR3 addr=0x10a size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='xxxxxxxxxxxxxxxx' mclr='uuuuuuuuuuuuuuuu')
    bit (names='TMR3' width='16')
    stimulus (scl=rwb type=int)
sfr (key=PR2 addr=0x10c size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='1111111111111111' mclr='1111111111111111')
    bit (names='PR2' width='16')
    stimulus (scl=rwb type=int)
sfr (key=PR3 addr=0x10e size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='1111111111111111' mclr='1111111111111111')
    bit (names='PR3' width='16')
    stimulus (scl=rwb type=int)
sfr (key=T2CON addr=0x110 size=2 access='rw u rw u u u u u u rw rw rw rw u rw u')
    reset (por='0-0------0000-0-' mclr='0-0------0000-0-')
    bit (names='TON - TSIDL - - - - - - TGATE TCKPS T32 - TCS -' width='1 1 1 1 1 1 1 1 1 1 2 1 1 1 1')
    stimulus (scl=rwb)
    freeze (name='TIMER2' bit=14 polarity=1)
sfr (key=T3CON addr=0x112 size=2 access='rw u rw u u u u u u rw rw rw u u rw u')
    reset (por='0-0------000--0-' mclr='0-0------000--0-')
    bit (names='TON - TSIDL - - - - - - TGATE TCKPS - - TCS -' width='1 1 1 1 1 1 1 1 1 1 2 1 1 1 1')
    stimulus (scl=rwb)
    freeze (name='TIMER3' bit=14 polarity=1)
sfr (key=IC1BUF addr=0x140 size=2 access='r r r r r r r r r r r r r r r r')
    reset (por='xxxxxxxxxxxxxxxx' mclr='uuuuuuuuuuuuuuuu')
    bit (names='IC1BUF' width='16')
    stimulus (scl=rwb type=int)
sfr (key=IC1CON addr=0x142 size=2 access='u u rw u u u u u rw rw rw r r rw rw rw')
    reset (por='--0-----00000000' mclr='--0-----00000000')
    bit (names='- - ICSIDL - - - - - ICTMR ICI ICOV ICBNE ICM' width='1 1 1 1 1 1 1 1 1 2 1 1 3' scltype='b b b b b b b b b i b b i')
    stimulus (scl=rwb)
    freeze (name='INPUT CAPTURE 1' bit=14 polarity=1)
sfr (key=OC1RS addr=0x180 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='xxxxxxxxxxxxxxxx' mclr='uuuuuuuuuuuuuuuu')
    bit (names='OC1RS' width='16')
    stimulus (scl=rwb type=int)
sfr (key=OC1R addr=0x182 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='xxxxxxxxxxxxxxxx' mclr='uuuuuuuuuuuuuuuu')
    bit (names='OC1R' width='16')
    stimulus (scl=rwb type=int)
sfr (key=OC1CON addr=0x184 size=2 access='u u rw u u u u u u u u r rw rw rw rw')
    reset (por='--0--------00000' mclr='--0--------00000')
    bit (names='- - OCSIDL - - - - - - - - OCFLT OCTSEL OCM' width='1 1 1 1 1 1 1 1 1 1 1 1 1 3' scltype='b b b b b b b b b b b b b i')
    stimulus (scl=rwb)
    freeze (name='OUTPUT COMPARE 1' bit=14 polarity=1)
sfr (key=I2C1RCV addr=0x200 size=2 access='u u u u u u u u r r r r r r r r')
    reset (por='--------00000000' mclr='--------00000000')
    bit (names='- - - - - - - - I2CRCV' width='1 1 1 1 1 1 1 1 8')
    stimulus (scl=rwb pcfiles=r regfiles=r)
sfr (key=I2C1TRN addr=0x202 size=2 access='u u u u u u u u w w w w w w w w')
    reset (por='--------11111111' mclr='--------11111111')
    bit (names='- - - - - - - - I2CTRN' width='1 1 1 1 1 1 1 1 8')
    stimulus (scl=rwb pcfiles=w regfiles=w)
sfr (key=I2C1BRG addr=0x204 size=2 access='u u u u u u u rw rw rw rw rw rw rw rw rw')
    reset (por='-------000000000' mclr='-------000000000')
    bit (names='- - - - - - - I2CBRG' width='1 1 1 1 1 1 1 9')
    stimulus (scl=rwb)
sfr (key=I2C1CON addr=0x206 size=2 access='rw u rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0-01000000000000' mclr='0-01000000000000')
    bit (names='I2CEN - I2CSIDL SCLREL IPMIEN A10M DISSLW SMEN GCEN STREN ACKDT ACKEN RCEN PEN RSEN SEN' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
    freeze (name='I2C1' bit=14 polarity=1)
sfr (key=I2C1STAT addr=0x208 size=2 access='r r u u u r r r rc rc r rc rc r r r')
    reset (por='00---00000000000' mclr='00---00000000000')
    bit (names='ACKSTAT TRSTAT - - - BCL GCSTAT ADD10 IWCOL I2CPOV D/nA P S R/nW RBF TBF' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    bit (tag=scl names='ACKSTAT TRSTAT - - - BCL GCSTAT ADD10 IWCOL I2CCOV D_nA P S R_nW RBF TBF' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=I2C1ADD addr=0x20a size=2 access='u u u u u u rw rw rw rw rw rw rw rw rw rw')
    reset (por='------0000000000' mclr='------0000000000')
    bit (names='- - - - - - I2CADD' width='1 1 1 1 1 1 10')
    stimulus (scl=rwb)
sfr (key=I2C1MSK addr=0x20c size=2 access='u u u u u u rw rw rw rw rw rw rw rw rw rw')
    reset (por='------0000000000' mclr='------0000000000')
    bit (names='- - - - - - AMSK' width='1 1 1 1 1 1 10')
    stimulus (scl=rwb)
sfr (key=U1MODE addr=0x220 size=2 access='rw u rw rw rw u rw rw rw rw rw rw rw rw rw rw')
    reset (por='0-000-0000000000' mclr='0-000-0000000000')
    bit (names='UARTEN - USIDL IREN RTSMD - UEN1 UEN0 WAKE LPBACK ABAUD RXINV BRGH PDSEL STSEL' width='1 1 1 1 1 1 1 1 1 1 1 1 1 2 1')
    stimulus (scl=rwb)
    freeze (name='UART 1' bit=14 polarity=1)
sfr (key=U1STA addr=0x222 size=2 access='rw rw rw u rw rw r r rw rw rw r r r rc r')
    reset (por='000-000100010000' mclr='000-000100010000')
    bit (names='UTXISEL1 UTXINV UTXISEL0 - UTXBRK UTXEN UTXBF TRMT URXISEL ADDEN RIDLE PERR FERR OERR URXDA' width='1 1 1 1 1 1 1 1 2 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=U1TXREG addr=0x224 size=2 access='u u u u u u u w w w w w w w w w')
    reset (por='-------xxxxxxxxx' mclr='-------000000000')
    bit (names='- - - - - - - TX' width='1 1 1 1 1 1 1 9')
    stimulus (scl=rwb regfiles=w)
sfr (key=U1RXREG addr=0x226 size=2 access='u u u u u u u r r r r r r r r r')
    reset (por='-------000000000' mclr='-------000000000')
    bit (names='- - - - - - - RX' width='1 1 1 1 1 1 1 9')
    stimulus (scl=rb regfiles=rp)
sfr (key=U1BRG addr=0x228 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='BRG' width='16')
    stimulus (scl=rwb)
sfr (key=SPI1STAT addr=0x240 size=2 access='rw u rw u u rw rw rw u rc u u u u rw rw')
    reset (por='0-0--000-0----00' mclr='0-0--000-0----00')
    bit (names='SPIEN - SPISIDL - - BUFELM - SPIROV - - - - SPITBF SPIRBF' width='1 1 1 1 1 3 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
    freeze (name='SPI 1' bit=14 polarity=1)
sfr (key=SPI1CON addr=0x242 size=2 access='u u u rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='---0000000000000' mclr='---0000000000000')
    bit (names='- - - DISSCK DISSDO MODE16 SMP CKE SSEN CKP MSTEN SPRE PPRE' width='1 1 1 1 1 1 1 1 1 1 1 3 2')
    stimulus (scl=rwb)
sfr (key=SPI1CON2 addr=0x244 size=2 access='rw rw rw u u u u u u u u u u u rw rw')
    reset (por='000-----------00' mclr='000-----------00')
    bit (names='FRMEN FRMSYNC FRMPOL - - - - - - - - - - - FRMDEL ENHBUF' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=SPI1BUF addr=0x248 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='SPI1BUF' width='16')
    stimulus (scl=rwb pcfiles=rw regfiles=rw type=int)
sfr (key=TRISA addr=0x2c0 size=2 access='u u u u u u u u u rw u rw rw rw rw rw')
    reset (por='---------1-11111' mclr='---------1-11111')
    bit (names='- - - - - - - - - TRISA6 - TRISA4 TRISA3 TRISA2 TRISA1 TRISA0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    bit (tag=scl names='- - - - - - - - - TRISA6 - TRISA4 TRISA3 TRISA2 TRISA1 TRISA0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb regfiles=w)
sfr (key=PORTA addr=0x2c2 size=2 access='u u u u u u u u u rw r rw rw rw rw rw')
    reset (por='---------xxxxxxx' mclr='---------xxuuuuu')
    bit (names='- - - - - - - - - RA6 RA5 RA4 RA3 RA2 RA1 RA0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    bit (tag=scl names='- - - - - - - - - RA' width='1 1 1 1 1 1 1 1 1 7')
    stimulus (scl=rwb pcfiles=rw regfiles=rw)
sfr (key=LATA addr=0x2c4 size=2 access='u u u u u u u u u rw u rw rw rw rw rw')
    reset (por='---------0-00000' mclr='---------u-uuuuu')
    bit (names='- - - - - - - - - LATA6 - LATA4 LATA3 LATA2 LATA1 LATA0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    bit (tag=scl names='- - - - - - - - - LATA6 - LATA4 LATA3 LATA2 LATA1 LATA0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb regfiles=w)
sfr (key=ODCFGA addr=0x2c6 size=2 access='u u u u u u u u u rw u rw rw rw rw rw')
    reset (por='---------0-00000' mclr='---------0-00000')
    bit (names='- - - - - - - - - ODA6 - ODA4 ODA3 ODA2 ODA1 ODA0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    bit (tag=scl names='- - - - - - - - - ODA6 - ODA4 ODA3 ODA2 ODA1 ODA0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=TRISB addr=0x2c8 size=2 access='rw rw u u u u rw rw u u u u u u u u')
    reset (por='11----11---11111' mclr='11----11---11111')
    bit (names='TRISB15 TRISB14 - - - - TRISB9 TRISB8 - - - - - - - -' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    bit (tag=scl names='TRISB' width='16')
    stimulus (scl=rwb regfiles=w)
sfr (key=PORTB addr=0x2ca size=2 access='rw rw u u u u rw rw u u u u u u u u')
    reset (por='xx----xx---xxxxx' mclr='uu----uu---uuuuu')
    bit (names='RB15 RB14 RB13 RB12 - - RB9 RB8 RB7 - - RB4 RB3 RB2 RB1 RB0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    bit (tag=scl names='RB' width='16')
    stimulus (scl=rwb pcfiles=rw regfiles=rw)
sfr (key=LATB addr=0x2cc size=2 access='rw rw u u u u rw rw u u u u u u u u')
    reset (por='00----00---00000' mclr='uu----uu---uuuuu')
    bit (names='LATB15 LATB14 LATB13 LATB12 - - LATB9 LATB8 LATB7 - - LATB4 LATB3 LATB2 LATB1 LATB0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    bit (tag=scl names='LATB' width='16')
    stimulus (scl=rwb regfiles=w)
sfr (key=ODCFGB addr=0x2ce size=2 access='rw rw u u u u rw rw u u u u u u u u')
    reset (por='00----00---00000' mclr='00----00---00000')
    bit (names='ODB15 ODB14 ODB13 ODB12 - - ODB9 ODB8 ODB7 - - ODB4 ODB3 ODB2 ODB1 ODB0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    bit (tag=scl names='ODB' width='16')
    stimulus (scl=rwb)
sfr (key=PADCFG1 addr=0x2fc size=2 access='u u u u u u u u u u u u u u rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='- - - - - - - - - - - - - - RTSECSEL PMPTTL' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb pcfiles=rw regfiles=rw)
sfr (key=ADC1BUF0 addr=0x300 size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUF0' width='1 1 1 1 1 1 10')
    stimulus (scl=rb regfiles=r)
sfr (key=ADC1BUF1 addr=0x302 size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUF1' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=ADC1BUF2 addr=0x304 size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUF2' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=ADC1BUF3 addr=0x306 size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUF3' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=ADC1BUF4 addr=0x308 size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUF4' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=ADC1BUF5 addr=0x30a size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUF5' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=ADC1BUF6 addr=0x30c size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUF6' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=ADC1BUF7 addr=0x30e size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUF7' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=ADC1BUF8 addr=0x310 size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUF8' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=ADC1BUF9 addr=0x312 size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUF9' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=ADC1BUFA addr=0x314 size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUFA' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=ADC1BUFB addr=0x316 size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUFB' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=ADC1BUFC addr=0x318 size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUFC' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=ADC1BUFD addr=0x31a size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUFD' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=ADC1BUFE addr=0x31c size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUFE' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=ADC1BUFF addr=0x31e size=2 access='u u u u u u r r r r r r r r r r')
    reset (por='------xxxxxxxxxx' mclr='------uuuuuuuuuu')
    bit (names='- - - - - - ADC1BUFF' width='1 1 1 1 1 1 10')
    stimulus (scl=rb)
sfr (key=AD1CON1 addr=0x320 size=2 access='rw u rw u u u rw rw rw rw rw u u rw rw rc')
    reset (por='0-0---00000--000' mclr='0-0---00000--000')
    bit (names='ADON - ADSIDL - - - FORM SSRC - - ASAM SAMP DONE' width='1 1 1 1 1 1 2 3 1 1 1 1 1')
    stimulus (scl=rwb)
    freeze (name='ADC 1' bit=14 polarity=1)
sfr (key=AD1CON2 addr=0x322 size=2 access='rw rw rw u u rw u u r u rw rw rw rw rw rw')
    reset (por='0000-0--0-000000' mclr='0000-0--0-000000')
    bit (names='VCFG - - CSCNA - - BUFS - SMPI BUFM ALTS' width='3 1 1 1 1 1 1 1 4 1 1')
    stimulus (scl=rwb)
sfr (key=AD1CON3 addr=0x324 size=2 access='rw u u rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0--0000000000000' mclr='0--0000000000000')
    bit (names='ADRC - - SAMC ADCS' width='1 1 1 5 8')
    stimulus (scl=rwb)
sfr (key=AD1CHS addr=0x328 size=2 access='rw u u u rw rw rw rw rw u u u rw rw rw rw')
    reset (por='00--00000---0000' mclr='00--00000---0000')
    bit (names='CH0NB - - CH0SB CH0NA - - - CH0SA' width='2 1 1 4 1 1 1 1 4')
    stimulus (scl=rwb)
sfr (key=AD1PCFG addr=0x32c size=2 access='u u u u u u u u u u rw rw rw rw rw rw')
    reset (por='----------000000' mclr='----------000000')
    bit (names='- - - - - - - - - - PCFG5 PCFG4 PCFG3 PCFG2 PCFG1 PCFG0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=AD1CSSL addr=0x330 size=2 access='u u u u u u u u u u rw rw rw rw rw rw')
    reset (por='----------000000' mclr='----------000000')
    bit (names='- - - - - - - - - - CSS5 CSS4 CSS3 CSS2 CSS1 CSS0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb)
sfr (key=ALRMVAL addr=0x620 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='uuuuuuuuuuuuuuuu')
    bit (names='ALRMVAL' width='16')
    stimulus (scl=rwb pcfiles=rw regfiles=rw type=int)
sfr (key=ALCFGRPT addr=0x622 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='uuuuuuuuuuuuuuuu')
    bit (names='ALRMEN CHIME AMASK APTR ARPT' width='1 1 4 2 8')
    stimulus (scl=rwb pcfiles=rw regfiles=rw)
sfr (key=RTCVAL addr=0x624 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='uuuuuuuuuuuuuuuu')
    bit (names='RTCVAL' width='16')
    stimulus (scl=rwb pcfiles=rw regfiles=rw type=int)
sfr (key=RCFGCAL addr=0x626 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='uuuuuuuuuuuuuuuu')
    bit (names='RTCEN - RTCWREN RTCSYNC HALFSEC RTCOE RTCPTR CAL' width='1 1 1 1 1 1 2 8')
    stimulus (scl=rwb pcfiles=rw regfiles=rw)
sfr (key=CMSTAT addr=0x630 size=2 access='rw rw u u u u rw rw u u u u u u rw rw')
    reset (por='00----00------00' mclr='00----00------00')
    bit (names='PSIDL CMFRZ - - - - C2EVT C1EVT - - - - - - C2OUT C1OUT' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    freeze (name='COMPARATOR' bit=14 polarity=1)
sfr (key=CVRCON addr=0x632 size=2 access='u u u u u u u u rw rw rw rw rw rw rw rw')
    reset (por='--------00000000' mclr='--------uuuuuuuu')
    bit (names='- - - - - - - - CVREN CVROE CVRR CVRSS CVR' width='1 1 1 1 1 1 1 1 1 1 1 1 4')
sfr (key=CM1CON addr=0x634 size=2 access='rw rw rw rw u u rw rw rw rw u rw u u rw rw')
    reset (por='0000--0000-0--00' mclr='0000--0000-0--00')
    bit (names='CON COE CPOL CLPWR - - CEVT COUT EVPOL1 EVPOL0 - CREF - - CCH1 CCH0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
sfr (key=CM2CON addr=0x636 size=2 access='rw rw rw rw u u rw rw rw rw u rw u u rw rw')
    reset (por='0000--0000-0--00' mclr='0000--0000-0--00')
    bit (names='CON COE CPOL CLPWR - - CEVT COUT EVPOL1 EVPOL0 - CREF - - CCH1 CCH0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
sfr (key=CRCCON addr=0x640 size=2 access='u u rw r r r r r r r u rw rw rw rw rw')
    reset (por='--00000001000000' mclr='--00000001000000')
    bit (names='- - CSIDL VWORD CRCFUL CRCMPT - CRCGO PLEN' width='1 1 1 5 1 1 1 1 4')
    freeze (name='CRC' bit=14 polarity=1)
sfr (key=CRCXOR addr=0x642 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='CRCXOR' width='16')
sfr (key=CRCDAT addr=0x644 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='CRCDAT' width='16')
sfr (key=CRCWDAT addr=0x646 size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='CRCWDAT' width='16')
sfr (key=RCON addr=0x740 size=2 access='rw rw u u u u rw rw rw rw rw rw rw rw rw rw')
    reset (por='00----0000000011' mclr='uu----uuuuuuuuuu')
    bit (names='TRAPR IOPR - - - - CM VREGS EXTR SWR SWDTEN WDTO SLEEP IDLE BOR POR' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=r)
sfr (key=OSCCON addr=0x742 size=2 access='u r r r u rw rw rw r u r u r u rw rw')
    reset (por='-000-yyy00000000' mclr='-000-yyy00000000')
    bit (names='- COSC - NOSC CLKLOCK - LOCK - CF - SOSCEN OSWEN' width='1 3 1 3 1 1 1 1 1 1 1 1')
    stimulus (scl=r)
sfr (key=CLKDIV addr=0x744 size=2 access='u rw rw rw rw rw rw rw u u u u u u u u')
    reset (por='00000011--------' mclr='00000011--------')
    bit (names='ROI DOZE DOZEN RCDIV - - - - - - - -' width='1 3 1 3 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb pcfiles=rw regfiles=rw)
sfr (key=OSCTRIM addr=0x748 size=2 access='u u u u u u u u u u rw rw rw rw rw rw')
    reset (por='----------000000' mclr='----------000000')
    bit (names='- - - - - - - - - - TUN' width='1 1 1 1 1 1 1 1 1 1 6')
    stimulus (scl=rwb pcfiles=rw regfiles=rw)
sfr (key=REFOCON addr=0x74e size=2 access='rw rw rw rw rw rw rw rw u u u u u u u u')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='ROON PFRZ ROSSLP ROSEL RODIV3 RODIV2 RODIV1 RODIV0 - - - - - - - -' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb pcfiles=rw regfiles=rw)
    freeze (name='CLOCK CONTROL' bit=14 polarity=1)
sfr (key=LVDCON addr=0x756 size=2 access='rw rw rw u u u u u rw rw rw u rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='LVDEN LVDFRZ PSIDL - - - - - VDIRMAG BGVST IRVST - LVDL3 LVDL2 LVDL1 LVDL0' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rwb pcfiles=rw regfiles=rw)
    freeze (name='CLOCK CONTROL' bit=14 polarity=1)
sfr (key=DSCON addr=0x758 size=2 access='rw u u u u u u u u u u u u u rw rw')
    reset (por='0-------------00' mclr='0-------------00')
    bit (names='DSEN - - - - - - - - - - - - - ZPBOR DSSR' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=r)
sfr (key=DSWSRC addr=0x75a size=2 access='u u u u u u u rw rw u u rw rw rw u rw')
    reset (por='--------0--000-0' mclr='--------0--000-0')
    bit (names='- - - - - - - - DSFLAT - - DSWDT RTCC MCLR - PORMV' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=r)
sfr (key=DSSEMA1 addr=0x75c size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='DSSEMA' width='16')
    stimulus (scl=rwb pcfiles=rw regfiles=rw)
sfr (key=DSSEMA2 addr=0x75e size=2 access='rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw rw')
    reset (por='0000000000000000' mclr='0000000000000000')
    bit (names='DSSEMA' width='16')
    stimulus (scl=rwb pcfiles=rw regfiles=rw)
sfr (key=NVMCON addr=0x760 size=2 access='rs rw rw u u u u u u rw u u rw rw rw rw')
    reset (por='000------0--0000' mclr='000------0--0000')
    bit (names='WR WREN WRERR - - - - - - ERASE - - NVMOP' width='1 1 1 1 1 1 1 1 1 1 1 1 4')
    stimulus (scl=r)
sfr (key=NVMKEY addr=0x766 size=2 access='u u u u u u u u w w w w w w w w')
    reset (por='--------00000000' mclr='--------00000000')
    bit (names='- - - - - - - - NVMKEY' width='1 1 1 1 1 1 1 1 8')
    stimulus (scl=r)
sfr (key=PMD1 addr=0x770 size=2 access='u u rw rw rw u u u rw rw rw rw rw u u rw')
    reset (por='--000---00000--0' mclr='--000---00000--0')
    bit (names='- - T3MD T2MD T1MD - - - I2C1MD U2MD U1MD SPI2MD SPI1MD - - ADCM' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rw)
sfr (key=PMD2 addr=0x772 size=2 access='u u u u u u u rw u u u u u u u rw')
    reset (por='-------0-----000' mclr='-------0-------0')
    bit (names='- - - - - - - IC1MD - - - - - - - 0C1MD' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
    stimulus (scl=rw)
sfr (key=PMD3 addr=0x774 size=2 access='u u u u u rw rw rw rw u u u u u rw u')
    reset (por='-----0000-----0-' mclr='-----0000-----0-')
    bit (names='- - - - - CMPMD RTCCMD PMPMD CRCPMD - - - - - I2CMD -' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')
sfr (key=PMD4 addr=0x776 size=2 access='u u u u u u u u u u u rw rw u rw u')
    reset (por='-----------00-0-' mclr='-----------00-0-')
    bit (names='- - - - - - - - - - - EEMD REFOMD - LVDMD -' width='1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1')

######################################################################
#
# Configuration Registers
#
######################################################################

cfgbits (key=LASTWORDMINUSONE addr=0xafc unused=0x0)
    field (key=POSCMOD mask=0x3 desc="Primary Oscillator Select")
        setting (req=0x3 value=0x3 desc="Primary Oscillator Disabled")
        setting (req=0x3 value=0x2 desc="HS Oscillator Enabled")
        setting (req=0x3 value=0x1 desc="XT Oscillator Enabled")
        setting (req=0x3 value=0x0 desc="External-Clock Mode Enabled")
    field (key=I2C1SEL mask=0x4 desc="I2C1 Pin Location Select")
        setting (req=0x4 value=0x4 desc="Primary SCL1/SDA1 Pins")
        setting (req=0x4 value=0x0 desc="Secondary SCL1/SDA1 Pins")
    field (key=RES0 mask=0x7808 desc="Reserved" flags=xh)
        setting (req=0x7808 value=0x7808 desc="Reserved")
    field (key=IOL1WAY mask=0x10 desc="IOLOCK Protection")
        setting (req=0x10 value=0x0 desc="IOLOCK may be changed via unlocking seq")
        setting (req=0x10 value=0x10 desc="Once IOLOCK is set, cannot be changed")
    field (key=OSCIOFNC mask=0x20 desc="Primary Oscillator Output Function")
        setting (req=0x20 value=0x0 desc="OSCO pin has digital I/O function")
        setting (req=0x20 value=0x20 desc="OSCO pin has clock out function")
    field (key=FCKSM mask=0xc0 desc="Clock Switching and Monitor")
        setting (req=0x80 value=0x80 desc="Sw Disabled, Mon Disabled")
        setting (req=0xc0 value=0x40 desc="Sw Enabled, Mon Disabled")
        setting (req=0xc0 value=0x0 desc="Sw Enabled, Mon Enabled")
    field (key=FNOSC mask=0x700 desc="Oscillator Select")
        setting (req=0x700 value=0x700 desc="Fast RC Oscillator with Postscaler (FRCDIV)")
        setting (req=0x700 value=0x500 desc="Low-Power RC Oscillator (LPRC)")
        setting (req=0x700 value=0x400 desc="Secondary Oscillator (SOSC)")
        setting (req=0x700 value=0x300 desc="Primary Oscillator with PLL module (HSPLL, ECPLL)")
        setting (req=0x700 value=0x200 desc="Primary Oscillator (XT, HS, EC)")
        setting (req=0x700 value=0x100 desc="Fast RC Oscillator with PLL module (FRCPLL)")
        setting (req=0x700 value=0x0 desc="Fast RC Oscillator (FRC)")
    field (key=IESO mask=0x8000 desc="Internal External Switch Over Mode")
        setting (req=0x8000 value=0x0 desc="Disabled")
        setting (req=0x8000 value=0x8000 desc="Enabled")
cfgbits (key=LASTWORD addr=0xafe unused=0x0)
    field (key=WDTPS mask=0xf desc="Watchdog Timer Postscaler")
        setting (req=0xf value=0xf desc="1:32,768")
        setting (req=0xf value=0xe desc="1:16,384")
        setting (req=0xf value=0xd desc="1:8,192")
        setting (req=0xf value=0xc desc="1:4,096")
        setting (req=0xf value=0xb desc="1:2,048")
        setting (req=0xf value=0xa desc="1:1,024")
        setting (req=0xf value=0x9 desc="1:512")
        setting (req=0xf value=0x8 desc="1:256")
        setting (req=0xf value=0x7 desc="1:128")
        setting (req=0xf value=0x6 desc="1:64")
        setting (req=0xf value=0x5 desc="1:32")
        setting (req=0xf value=0x4 desc="1:16")
        setting (req=0xf value=0x3 desc="1:8")
        setting (req=0xf value=0x2 desc="1:4")
        setting (req=0xf value=0x1 desc="1:2")
        setting (req=0xf value=0x0 desc="1:1")
    field (key=FWPSA mask=0x10 desc="WDT Prescaler")
        setting (req=0x10 value=0x10 desc="1:128")
        setting (req=0x10 value=0x0 desc="1:32")
    field (key=RES1 mask=0x20 desc="Reserved" flags=xh)
        setting (req=0x20 value=0x20 desc="Reserved")
    field (key=WINDIS mask=0x40 desc="Watchdog Timer Window")
        setting (req=0x40 value=0x40 desc="Non-Window mode")
        setting (req=0x40 value=0x0 desc="Window mode")
    field (key=FWDTEN mask=0x80 desc="Watchdog Timer Enable" min=1)
        setting (req=0x80 value=0x80 desc="Enable")
        setting (req=0x80 value=0x0 desc="Disable")
    field (key=ICS mask=0x300 desc="Comm Channel Select")
        setting (req=0x300 value=0x300 desc="EMUC1/EMUD1 shared with PGC1/PGD1")
        setting (req=0x300 value=0x200 desc="EMUC2/EMUD2 shared with PCG2/PGD2")
        setting (req=0x300 value=0x100 desc="EMUC3/EMUD3 shared with PCG3/PGD3")
    field (key=COE mask=0x400 desc="Set Clip On Emulation Mode" flags=h)
        setting (req=0x400 value=0x400 desc="Reset Into Operational Mode")
        setting (req=0x400 value=0x0 desc="Reset Into Clip On Emulation Mode")
    field (key=BACKBUG mask=0x800 desc="Background Debug" flags=h)
        setting (req=0x800 value=0x800 desc="Disabled")
        setting (req=0x800 value=0x0 desc="Enabled")
    field (key=GWRP mask=0x1000 desc="General Code Segment Write Protect")
        setting (req=0x1000 value=0x1000 desc="Disabled")
        setting (req=0x1000 value=0x0 desc="Enabled")
    field (key=GSS mask=0x2000 desc="General Code Segment Code Protect")
        setting (req=0x2000 value=0x2000 desc="Disabled")
            checksum (type=0x0 protregion=0x0-0x0)
        setting (req=0x2000 value=0x0 desc="Enabled")
            checksum (type=0x80 protregion=0x0-0xabfa)
    field (key=JTAGEN mask=0x4000 desc="JTAG Port Enable")
        setting (req=0x4000 value=0x4000 desc="Enabled")
        setting (req=0x4000 value=0x0 desc="Disabled")
    field (key=SIGN mask=0x8000 desc="Signature Bit" init=0x0 flags=xh)
        setting (req=0x8000 value=0x0 desc="Correct")
