Subversion Repositories HomeAutomation

Rev

Rev 79 | Blame | Last modification | View Log | SVN | RSS feed

MP2COD 4.02, COFF to COD File Converter
Copyright (c) 2006 Microchip Technology Inc.
Listing File Generated: Sat Nov 11 21:22:18 2006


Address  Value    Disassembly              Source                                                                           File
-------  -------  -----------------------  -------------------------------------------------------------------------------  -----
                                           /*********************************************************************           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            *                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            *                  Main application                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            *                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            *********************************************************************           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            * FileName:        Main.c                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            *                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            * Johan Böhlin     21-10-06    Original        (Rev 1.0)                          F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            ********************************************************************/           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           // $Id$                                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #include <compiler.h>                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #include <stackTasks.h>                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #include <CANdefs.h>                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #include <CAN.h>                                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #include <boot.h>                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           /** V E C T O R  R E M A P P I N G *******************************************/  F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #pragma code _HIGH_INTERRUPT_VECTOR = 0x000008                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           void _high_ISR (void)                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           {                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
000008   ef04     GOTO      0x1008             _asm goto RM_HIGH_INTERRUPT_VECTOR _endasm                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
00000a   f008                                                                                                               
00000c   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #pragma code _LOW_INTERRUPT_VECTOR = 0x000018                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           void _low_ISR (void)                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           {                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
000018   ef0c     GOTO      0x1018             _asm goto RM_LOW_INTERRUPT_VECTOR _endasm                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
00001a   f008                                                                                                               
00001c   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #pragma code                                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #ifdef USE_CAN                                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            #include <CAN.h>                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #endif                                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           static CAN_PROTO_MESSAGE cm;                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           static BYTE ful=0;                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           static DWORD cnt =0;                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           static void mainInit(void);                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           static BOOL canGetPacket(void);                                                  F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           void TBLWT_Func(void);                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           void TBLWTPOSTINC_Func (void);                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           void TBLRD_Func(void);                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #define TICK_SUB_COUNTER_10MS 312                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #define PACKET_TIMEOUT 14                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #define BOOTLOADER_INIT_TIMOUT 500                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           DWORD tickCounter = 0;                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           DWORD tickSubCounter = 0;                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           DWORD tickGet(void);                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000038   cfd9     MOVFF     0xfd9,0xfe6    void main()                                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
00003a   ffe6                                                                                                               
00003c   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
00003e   ffd9                                                                                                               
000040   0e18     MOVLW     0x18                                                                                            
000042   26e1     ADDWF     0xe1,0x1,0x0                                                                                    
                                           {                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            static PROGRAM_STATE pgs = pgsWATING_START;                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            static DWORD t = 0;                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            static WORD programmerSid=0;                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            static BYTE errMsg = ERR_NO_ERROR;                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            static PROGRAM_STATE afterAckPgs = pgsWATING_START;                             F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            static DWORD pgmAddress = 0;                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            static BYTE bytesReceived = 0;                                                  F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            DWORD tBoot;                                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            static BYTE pgmData[64];                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            static BYTE tmp;                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // Inits                                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
000044   db9c     RCALL     0x77e           mainInit();                                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            #ifdef USE_CAN                                                                  F:\MCP\projects\CAN\canBoot\Source\Main.c
000046   dba1     RCALL     0x78a               canInit();                                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            #endif                                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000048   ec89     CALL      0xb12,0x0       tBoot = tickGet();                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
00004a   f005                                                                                                               
00004c   c010     MOVFF     0x10,0xfde                                                                                      
00004e   ffde                                                                                                               
000050   c011     MOVFF     0x11,0xfde                                                                                      
000052   ffde                                                                                                               
000054   c012     MOVFF     0x12,0xfde                                                                                      
000056   ffde                                                                                                               
000058   c013     MOVFF     0x13,0xfdd                                                                                      
00005a   ffdd                                                                                                               
00005c   52dd     MOVF      0xdd,0x1,0x0                                                                                    
00005e   52dd     MOVF      0xdd,0x1,0x0                                                                                    
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000768   d47b     BRA       0x60            for(;;)                                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            {                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                BYTE i;                                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                CAN_PROTO_MESSAGE outCm;                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
000060   dbbd     RCALL     0x7dc               BOOL hasPacket = canGetPacket();                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
000062   6ee7     MOVWF     0xe7,0x0                                                                                        
000064   0e15     MOVLW     0x15                                                                                            
000066   cfe7     MOVFF     0xfe7,0xfdb                                                                                     
000068   ffdb                                                                                                               
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
00006a   0100     MOVLB     0x0                 tickSubCounter++;                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
00006c   2bba     INCF      0xba,0x1,0x1                                                                                    
00006e   0e00     MOVLW     0x0                                                                                             
000070   23bb     ADDWFC    0xbb,0x1,0x1                                                                                    
000072   23bc     ADDWFC    0xbc,0x1,0x1                                                                                    
000074   23bd     ADDWFC    0xbd,0x1,0x1                                                                                    
000076   80d8     BSF       0xd8,0x0,0x0        if (tickSubCounter>TICK_SUB_COUNTER_10MS)                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
000078   0e38     MOVLW     0x38                                                                                            
00007a   0100     MOVLB     0x0                                                                                             
00007c   55ba     SUBFWB    0xba,0x0,0x1                                                                                    
00007e   0e01     MOVLW     0x1                                                                                             
000080   55bb     SUBFWB    0xbb,0x0,0x1                                                                                    
000082   0e00     MOVLW     0x0                                                                                             
000084   55bc     SUBFWB    0xbc,0x0,0x1                                                                                    
000086   0e00     MOVLW     0x0                                                                                             
000088   55bd     SUBFWB    0xbd,0x0,0x1                                                                                    
00008a   e20b     BC        0xa2                                                                                            
                                                {                                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
00008c   0100     MOVLB     0x0                     tickCounter++;                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
00008e   2bb6     INCF      0xb6,0x1,0x1                                                                                    
000090   0e00     MOVLW     0x0                                                                                             
000092   23b7     ADDWFC    0xb7,0x1,0x1                                                                                    
000094   23b8     ADDWFC    0xb8,0x1,0x1                                                                                    
000096   23b9     ADDWFC    0xb9,0x1,0x1                                                                                    
000098   0100     MOVLB     0x0                     tickSubCounter=0;                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
00009a   6bba     CLRF      0xba,0x1                                                                                        
00009c   6bbb     CLRF      0xbb,0x1                                                                                        
00009e   6bbc     CLRF      0xbc,0x1                                                                                        
0000a0   6bbd     CLRF      0xbd,0x1                                                                                        
                                                }                                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
0000a2   0100     MOVLB     0x0                 switch(pgs)                                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
0000a4   51be     MOVF      0xbe,0x0,0x1                                                                                    
0000a6   0a05     XORLW     0x5                                                                                             
0000a8   e101     BNZ       0xac                                                                                            
0000aa   d358     BRA       0x75c                                                                                           
0000ac   0a01     XORLW     0x1                                                                                             
0000ae   e101     BNZ       0xb2                                                                                            
0000b0   d2a7     BRA       0x600                                                                                           
0000b2   0a07     XORLW     0x7                                                                                             
0000b4   e101     BNZ       0xb8                                                                                            
0000b6   d1bb     BRA       0x42e                                                                                           
0000b8   0a01     XORLW     0x1                                                                                             
0000ba   e101     BNZ       0xbe                                                                                            
0000bc   d110     BRA       0x2de                                                                                           
0000be   0a03     XORLW     0x3                                                                                             
0000c0   e101     BNZ       0xc4                                                                                            
0000c2   d0b5     BRA       0x22e                                                                                           
0000c4   0a01     XORLW     0x1                                                                                             
0000c6   e001     BZ        0xca                                                                                            
0000c8   d34c     BRA       0x762                                                                                           
                                                {                                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                    case pgsWATING_START:                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // Check if there is bootloader start packet                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
0000ca   0e15     MOVLW     0x15                        if (hasPacket==TRUE && cm.funct==FUNCT_BOOTLOADER && cm.funcc==FUNCC_BOOT_INIT && ((((unsigned int)cm.data[RID_HIGH_INDEX])<<8)+cm.data[RID_LOW_INDEX])==MY_ID && cm.nid==MY_NID) F:\MCP\projects\CAN\canBoot\Source\Main.c
0000cc   04db     DECF      0xdb,0x0,0x0                                                                                    
0000ce   e16f     BNZ       0x1ae                                                                                           
0000d0   0100     MOVLB     0x0                                                                                             
0000d2   5160     MOVF      0x60,0x0,0x1                                                                                    
0000d4   e16c     BNZ       0x1ae                                                                                           
0000d6   0100     MOVLB     0x0                                                                                             
0000d8   0e01     MOVLW     0x1                                                                                             
0000da   1961     XORWF     0x61,0x0,0x1                                                                                    
0000dc   e101     BNZ       0xe0                                                                                            
0000de   5162     MOVF      0x62,0x0,0x1                                                                                    
0000e0   e166     BNZ       0x1ae                                                                                           
0000e2   c06d     MOVFF     0x6d,0x2                                                                                        
0000e4   f002                                                                                                               
0000e6   c002     MOVFF     0x2,0x3                                                                                         
0000e8   f003                                                                                                               
0000ea   6a02     CLRF      0x2,0x0                                                                                         
0000ec   0100     MOVLB     0x0                                                                                             
0000ee   516c     MOVF      0x6c,0x0,0x1                                                                                    
0000f0   0100     MOVLB     0x0                                                                                             
0000f2   2402     ADDWF     0x2,0x0,0x0                                                                                     
0000f4   6e00     MOVWF     0x0,0x0                                                                                         
0000f6   0e00     MOVLW     0x0                                                                                             
0000f8   2003     ADDWFC    0x3,0x0,0x0                                                                                     
0000fa   6e01     MOVWF     0x1,0x0                                                                                         
0000fc   0e78     MOVLW     0x78                                                                                            
0000fe   1800     XORWF     0x0,0x0,0x0                                                                                     
000100   e101     BNZ       0x104                                                                                           
000102   5001     MOVF      0x1,0x0,0x0                                                                                     
000104   e154     BNZ       0x1ae                                                                                           
000106   0100     MOVLB     0x0                                                                                             
000108   5163     MOVF      0x63,0x0,0x1                                                                                    
00010a   e151     BNZ       0x1ae                                                                                           
                                                        {                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                            // Has new start packet                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
00010c   c06a     MOVFF     0x6a,0x0                        pgmAddress      = (((DWORD)cm.data[ADDRU_INDEX])<<16)+(((DWORD)cm.data[ADDRH_INDEX])<<8)+((DWORD)cm.data[ADDRL_INDEX]); F:\MCP\projects\CAN\canBoot\Source\Main.c
00010e   f000                                                                                                               
000110   6a01     CLRF      0x1,0x0                                                                                         
000112   6a02     CLRF      0x2,0x0                                                                                         
000114   6a03     CLRF      0x3,0x0                                                                                         
000116   0e10     MOVLW     0x10                                                                                            
000118   0b1f     ANDLW     0x1f                                                                                            
00011a   e007     BZ        0x12a                                                                                           
00011c   90d8     BCF       0xd8,0x0,0x0                                                                                    
00011e   3600     RLCF      0x0,0x1,0x0                                                                                     
000120   3601     RLCF      0x1,0x1,0x0                                                                                     
000122   3602     RLCF      0x2,0x1,0x0                                                                                     
000124   3603     RLCF      0x3,0x1,0x0                                                                                     
000126   06e8     DECF      0xe8,0x1,0x0                                                                                    
000128   e1f9     BNZ       0x11c                                                                                           
00012a   c069     MOVFF     0x69,0x4                                                                                        
00012c   f004                                                                                                               
00012e   6a05     CLRF      0x5,0x0                                                                                         
000130   6a06     CLRF      0x6,0x0                                                                                         
000132   6a07     CLRF      0x7,0x0                                                                                         
000134   0e08     MOVLW     0x8                                                                                             
000136   0b1f     ANDLW     0x1f                                                                                            
000138   e007     BZ        0x148                                                                                           
00013a   90d8     BCF       0xd8,0x0,0x0                                                                                    
00013c   3604     RLCF      0x4,0x1,0x0                                                                                     
00013e   3605     RLCF      0x5,0x1,0x0                                                                                     
000140   3606     RLCF      0x6,0x1,0x0                                                                                     
000142   3607     RLCF      0x7,0x1,0x0                                                                                     
000144   06e8     DECF      0xe8,0x1,0x0                                                                                    
000146   e1f9     BNZ       0x13a                                                                                           
000148   5004     MOVF      0x4,0x0,0x0                                                                                     
00014a   2600     ADDWF     0x0,0x1,0x0                                                                                     
00014c   5005     MOVF      0x5,0x0,0x0                                                                                     
00014e   2201     ADDWFC    0x1,0x1,0x0                                                                                     
000150   5006     MOVF      0x6,0x0,0x0                                                                                     
000152   2202     ADDWFC    0x2,0x1,0x0                                                                                     
000154   5007     MOVF      0x7,0x0,0x0                                                                                     
000156   2203     ADDWFC    0x3,0x1,0x0                                                                                     
000158   c068     MOVFF     0x68,0x8                                                                                        
00015a   f008                                                                                                               
00015c   6a09     CLRF      0x9,0x0                                                                                         
00015e   6a0a     CLRF      0xa,0x0                                                                                         
000160   6a0b     CLRF      0xb,0x0                                                                                         
000162   5000     MOVF      0x0,0x0,0x0                                                                                     
000164   2408     ADDWF     0x8,0x0,0x0                                                                                     
000166   0100     MOVLB     0x0                                                                                             
000168   6fc7     MOVWF     0xc7,0x1                                                                                        
00016a   5001     MOVF      0x1,0x0,0x0                                                                                     
00016c   2009     ADDWFC    0x9,0x0,0x0                                                                                     
00016e   0100     MOVLB     0x0                                                                                             
000170   6fc8     MOVWF     0xc8,0x1                                                                                        
000172   5002     MOVF      0x2,0x0,0x0                                                                                     
000174   200a     ADDWFC    0xa,0x0,0x0                                                                                     
000176   0100     MOVLB     0x0                                                                                             
000178   6fc9     MOVWF     0xc9,0x1                                                                                        
00017a   5003     MOVF      0x3,0x0,0x0                                                                                     
00017c   200b     ADDWFC    0xb,0x0,0x0                                                                                     
00017e   0100     MOVLB     0x0                                                                                             
000180   6fca     MOVWF     0xca,0x1                                                                                        
000182   c064     MOVFF     0x64,0xc3                       programmerSid   = cm.sid;                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
000184   f0c3                                                                                                               
000186   c065     MOVFF     0x65,0xc4                                                                                       
000188   f0c4                                                                                                               
00018a   ec89     CALL      0xb12,0x0                       t               = tickGet();                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
00018c   f005                                                                                                               
00018e   c010     MOVFF     0x10,0xbf                                                                                       
000190   f0bf                                                                                                               
000192   c011     MOVFF     0x11,0xc0                                                                                       
000194   f0c0                                                                                                               
000196   c012     MOVFF     0x12,0xc1                                                                                       
000198   f0c1                                                                                                               
00019a   c013     MOVFF     0x13,0xc2                                                                                       
00019c   f0c2                                                                                                               
00019e   0100     MOVLB     0x0                             errMsg          = ERR_NO_ERROR;                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
0001a0   6bc5     CLRF      0xc5,0x1                                                                                        
0001a2   0100     MOVLB     0x0                             afterAckPgs     = pgsWAIT_FIRST_PGM_PACKET;                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
0001a4   0e02     MOVLW     0x2                                                                                             
0001a6   6fc6     MOVWF     0xc6,0x1                                                                                        
0001a8   0100     MOVLB     0x0                             pgs             = pgsSEND_ACK;                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
0001aa   0e01     MOVLW     0x1                                                                                             
0001ac   6fbe     MOVWF     0xbe,0x1                                                                                        
                                                            // save pgm adress.                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        }                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // Bootloader timeout                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
0001ae   cfd9     MOVFF     0xfd9,0xfe9                 if ((tickGet()-tBoot)>BOOTLOADER_INIT_TIMOUT)                                F:\MCP\projects\CAN\canBoot\Source\Main.c
0001b0   ffe9                                                                                                               
0001b2   cfda     MOVFF     0xfda,0xfea                                                                                     
0001b4   ffea                                                                                                               
0001b6   cfee     MOVFF     0xfee,0x4                                                                                       
0001b8   f004                                                                                                               
0001ba   cfee     MOVFF     0xfee,0x5                                                                                       
0001bc   f005                                                                                                               
0001be   cfee     MOVFF     0xfee,0x6                                                                                       
0001c0   f006                                                                                                               
0001c2   cfef     MOVFF     0xfef,0x7                                                                                       
0001c4   f007                                                                                                               
0001c6   c004     MOVFF     0x4,0xfe6                                                                                       
0001c8   ffe6                                                                                                               
0001ca   c005     MOVFF     0x5,0xfe6                                                                                       
0001cc   ffe6                                                                                                               
0001ce   c006     MOVFF     0x6,0xfe6                                                                                       
0001d0   ffe6                                                                                                               
0001d2   c007     MOVFF     0x7,0xfe6                                                                                       
0001d4   ffe6                                                                                                               
0001d6   ec89     CALL      0xb12,0x0                                                                                       
0001d8   f005                                                                                                               
0001da   52e5     MOVF      0xe5,0x1,0x0                                                                                    
0001dc   cfe7     MOVFF     0xfe7,0x7                                                                                       
0001de   f007                                                                                                               
0001e0   52e5     MOVF      0xe5,0x1,0x0                                                                                    
0001e2   cfe7     MOVFF     0xfe7,0x6                                                                                       
0001e4   f006                                                                                                               
0001e6   52e5     MOVF      0xe5,0x1,0x0                                                                                    
0001e8   cfe7     MOVFF     0xfe7,0x5                                                                                       
0001ea   f005                                                                                                               
0001ec   52e5     MOVF      0xe5,0x1,0x0                                                                                    
0001ee   cfe7     MOVFF     0xfe7,0x4                                                                                       
0001f0   f004                                                                                                               
0001f2   0100     MOVLB     0x0                                                                                             
0001f4   5004     MOVF      0x4,0x0,0x0                                                                                     
0001f6   5c10     SUBWF     0x10,0x0,0x0                                                                                    
0001f8   6e00     MOVWF     0x0,0x0                                                                                         
0001fa   0100     MOVLB     0x0                                                                                             
0001fc   5005     MOVF      0x5,0x0,0x0                                                                                     
0001fe   5811     SUBWFB    0x11,0x0,0x0                                                                                    
000200   6e01     MOVWF     0x1,0x0                                                                                         
000202   0100     MOVLB     0x0                                                                                             
000204   5006     MOVF      0x6,0x0,0x0                                                                                     
000206   5812     SUBWFB    0x12,0x0,0x0                                                                                    
000208   6e02     MOVWF     0x2,0x0                                                                                         
00020a   0100     MOVLB     0x0                                                                                             
00020c   5007     MOVF      0x7,0x0,0x0                                                                                     
00020e   5813     SUBWFB    0x13,0x0,0x0                                                                                    
000210   6e03     MOVWF     0x3,0x0                                                                                         
000212   80d8     BSF       0xd8,0x0,0x0                                                                                    
000214   0ef4     MOVLW     0xf4                                                                                            
000216   5400     SUBFWB    0x0,0x0,0x0                                                                                     
000218   0e01     MOVLW     0x1                                                                                             
00021a   5401     SUBFWB    0x1,0x0,0x0                                                                                     
00021c   0e00     MOVLW     0x0                                                                                             
00021e   5402     SUBFWB    0x2,0x0,0x0                                                                                     
000220   0e00     MOVLW     0x0                                                                                             
000222   5403     SUBFWB    0x3,0x0,0x0                                                                                     
000224   e203     BC        0x22c                                                                                           
                                                        {                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000226   0100     MOVLB     0x0                             pgs = pgsDONE;                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
000228   0e05     MOVLW     0x5                                                                                             
00022a   6fbe     MOVWF     0xbe,0x1                                                                                        
                                                        }                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
00022c   d29d     BRA       0x768                   break;                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                    case pgsSEND_ACK:                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // send ack                                                                  F:\MCP\projects\CAN\canBoot\Source\Main.c
00022e   0e05     MOVLW     0x5                         outCm.funct             = FUNCT_BOOTLOADER;                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
000230   6adb     CLRF      0xdb,0x0                                                                                        
000232   0e04     MOVLW     0x4                         outCm.funcc             = FUNCC_BOOT_ACK;                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
000234   6ef3     MOVWF     0xf3,0x0                                                                                        
000236   0e06     MOVLW     0x6                                                                                             
000238   cff3     MOVFF     0xff3,0xfdb                                                                                     
00023a   ffdb                                                                                                               
00023c   0e07     MOVLW     0x7                                                                                             
00023e   6adb     CLRF      0xdb,0x0                                                                                        
000240   0e08     MOVLW     0x8                         outCm.nid               = MY_NID;                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
000242   6adb     CLRF      0xdb,0x0                                                                                        
000244   0e78     MOVLW     0x78                        outCm.sid               = MY_ID;                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
000246   6ef3     MOVWF     0xf3,0x0                                                                                        
000248   0e09     MOVLW     0x9                                                                                             
00024a   cff3     MOVFF     0xff3,0xfdb                                                                                     
00024c   ffdb                                                                                                               
00024e   0e0a     MOVLW     0xa                                                                                             
000250   6adb     CLRF      0xdb,0x0                                                                                        
000252   0e08     MOVLW     0x8                         outCm.data_length       = 8;                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
000254   6ef3     MOVWF     0xf3,0x0                                                                                        
000256   0e0b     MOVLW     0xb                                                                                             
000258   cff3     MOVFF     0xff3,0xfdb                                                                                     
00025a   ffdb                                                                                                               
00025c   0e0c     MOVLW     0xc                         outCm.remote_request    = FALSE;                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
00025e   6adb     CLRF      0xdb,0x0                                                                                        
000260   0e11     MOVLW     0x11                        outCm.data[ERR_INDEX]   = errMsg;                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
000262   c0c5     MOVFF     0xc5,0xfdb                                                                                      
000264   ffdb                                                                                                               
000266   ec89     CALL      0xb12,0x0                   t                       = tickGet();                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
000268   f005                                                                                                               
00026a   c010     MOVFF     0x10,0xbf                                                                                       
00026c   f0bf                                                                                                               
00026e   c011     MOVFF     0x11,0xc0                                                                                       
000270   f0c0                                                                                                               
000272   c012     MOVFF     0x12,0xc1                                                                                       
000274   f0c1                                                                                                               
000276   c013     MOVFF     0x13,0xc2                                                                                       
000278   f0c2                                                                                                               
00027a   c0c6     MOVFF     0xc6,0xbe                   pgs                     = afterAckPgs;                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
00027c   f0be                                                                                                               
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
00027e   0e02     MOVLW     0x2                         while(!canSendMessage(outCm,PRIO_HIGH));                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
000280   6ee6     MOVWF     0xe6,0x0                                                                                        
000282   50d9     MOVF      0xd9,0x0,0x0                                                                                    
000284   0f05     ADDLW     0x5                                                                                             
000286   6ee9     MOVWF     0xe9,0x0                                                                                        
000288   cfda     MOVFF     0xfda,0xfea                                                                                     
00028a   ffea                                                                                                               
00028c   cfee     MOVFF     0xfee,0xfe6                                                                                     
00028e   ffe6                                                                                                               
000290   cfee     MOVFF     0xfee,0xfe6                                                                                     
000292   ffe6                                                                                                               
000294   cfee     MOVFF     0xfee,0xfe6                                                                                     
000296   ffe6                                                                                                               
000298   cfee     MOVFF     0xfee,0xfe6                                                                                     
00029a   ffe6                                                                                                               
00029c   cfee     MOVFF     0xfee,0xfe6                                                                                     
00029e   ffe6                                                                                                               
0002a0   cfee     MOVFF     0xfee,0xfe6                                                                                     
0002a2   ffe6                                                                                                               
0002a4   cfee     MOVFF     0xfee,0xfe6                                                                                     
0002a6   ffe6                                                                                                               
0002a8   cfee     MOVFF     0xfee,0xfe6                                                                                     
0002aa   ffe6                                                                                                               
0002ac   cfee     MOVFF     0xfee,0xfe6                                                                                     
0002ae   ffe6                                                                                                               
0002b0   cfee     MOVFF     0xfee,0xfe6                                                                                     
0002b2   ffe6                                                                                                               
0002b4   cfee     MOVFF     0xfee,0xfe6                                                                                     
0002b6   ffe6                                                                                                               
0002b8   cfee     MOVFF     0xfee,0xfe6                                                                                     
0002ba   ffe6                                                                                                               
0002bc   cfee     MOVFF     0xfee,0xfe6                                                                                     
0002be   ffe6                                                                                                               
0002c0   cfee     MOVFF     0xfee,0xfe6                                                                                     
0002c2   ffe6                                                                                                               
0002c4   cfee     MOVFF     0xfee,0xfe6                                                                                     
0002c6   ffe6                                                                                                               
0002c8   cfee     MOVFF     0xfee,0xfe6                                                                                     
0002ca   ffe6                                                                                                               
0002cc   db47     RCALL     0x95c                                                                                           
0002ce   6e00     MOVWF     0x0,0x0                                                                                         
0002d0   0e11     MOVLW     0x11                                                                                            
0002d2   5ee1     SUBWF     0xe1,0x1,0x0                                                                                    
0002d4   5000     MOVF      0x0,0x0,0x0                                                                                     
0002d6   0900     IORLW     0x0                                                                                             
0002d8   e101     BNZ       0x2dc                                                                                           
0002da   d7d1     BRA       0x27e                                                                                           
0002dc   d245     BRA       0x768                   break;                                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                    case pgsWAIT_FIRST_PGM_PACKET:                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // wait for first pgm packet.                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
0002de   ec89     CALL      0xb12,0x0                   if ((tickGet()-t)>PACKET_TIMEOUT)                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
0002e0   f005                                                                                                               
0002e2   0100     MOVLB     0x0                                                                                             
0002e4   51bf     MOVF      0xbf,0x0,0x1                                                                                    
0002e6   5c10     SUBWF     0x10,0x0,0x0                                                                                    
0002e8   6e00     MOVWF     0x0,0x0                                                                                         
0002ea   0100     MOVLB     0x0                                                                                             
0002ec   51c0     MOVF      0xc0,0x0,0x1                                                                                    
0002ee   5811     SUBWFB    0x11,0x0,0x0                                                                                    
0002f0   6e01     MOVWF     0x1,0x0                                                                                         
0002f2   0100     MOVLB     0x0                                                                                             
0002f4   51c1     MOVF      0xc1,0x0,0x1                                                                                    
0002f6   5812     SUBWFB    0x12,0x0,0x0                                                                                    
0002f8   6e02     MOVWF     0x2,0x0                                                                                         
0002fa   0100     MOVLB     0x0                                                                                             
0002fc   51c2     MOVF      0xc2,0x0,0x1                                                                                    
0002fe   5813     SUBWFB    0x13,0x0,0x0                                                                                    
000300   6e03     MOVWF     0x3,0x0                                                                                         
000302   80d8     BSF       0xd8,0x0,0x0                                                                                    
000304   0e0e     MOVLW     0xe                                                                                             
000306   5400     SUBFWB    0x0,0x0,0x0                                                                                     
000308   0e00     MOVLW     0x0                                                                                             
00030a   5401     SUBFWB    0x1,0x0,0x0                                                                                     
00030c   0e00     MOVLW     0x0                                                                                             
00030e   5402     SUBFWB    0x2,0x0,0x0                                                                                     
000310   0e00     MOVLW     0x0                                                                                             
000312   5403     SUBFWB    0x3,0x0,0x0                                                                                     
000314   e208     BC        0x326                                                                                           
                                                        {                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                            // Timeout, resend ack.                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
000316   0100     MOVLB     0x0                             errMsg          = ERR_NO_ERROR;                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
000318   6bc5     CLRF      0xc5,0x1                                                                                        
00031a   0100     MOVLB     0x0                             afterAckPgs     = pgsWAIT_FIRST_PGM_PACKET;                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
00031c   0e02     MOVLW     0x2                                                                                             
00031e   6fc6     MOVWF     0xc6,0x1                                                                                        
000320   0100     MOVLB     0x0                             pgs             = pgsSEND_ACK;                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
000322   0e01     MOVLW     0x1                                                                                             
000324   6fbe     MOVWF     0xbe,0x1                                                                                        
                                                        }                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // If programming packet...                                                  F:\MCP\projects\CAN\canBoot\Source\Main.c
000326   0e15     MOVLW     0x15                        if (hasPacket==TRUE && cm.funct==FUNCT_BOOTLOADER && (cm.funcc & 0x3)==FUNCC_BOOT_PGM && cm.nid==MY_NID && cm.sid==programmerSid) F:\MCP\projects\CAN\canBoot\Source\Main.c
000328   04db     DECF      0xdb,0x0,0x0                                                                                    
00032a   e001     BZ        0x32e                                                                                           
00032c   d07f     BRA       0x42c                                                                                           
00032e   0100     MOVLB     0x0                                                                                             
000330   5160     MOVF      0x60,0x0,0x1                                                                                    
000332   e001     BZ        0x336                                                                                           
000334   d07b     BRA       0x42c                                                                                           
000336   0e03     MOVLW     0x3                                                                                             
000338   0100     MOVLB     0x0                                                                                             
00033a   1561     ANDWF     0x61,0x0,0x1                                                                                    
00033c   6e00     MOVWF     0x0,0x0                                                                                         
00033e   6a01     CLRF      0x1,0x0                                                                                         
000340   0e03     MOVLW     0x3                                                                                             
000342   1800     XORWF     0x0,0x0,0x0                                                                                     
000344   e101     BNZ       0x348                                                                                           
000346   5001     MOVF      0x1,0x0,0x0                                                                                     
000348   e171     BNZ       0x42c                                                                                           
00034a   0100     MOVLB     0x0                                                                                             
00034c   5163     MOVF      0x63,0x0,0x1                                                                                    
00034e   e16e     BNZ       0x42c                                                                                           
000350   0100     MOVLB     0x0                                                                                             
000352   51c3     MOVF      0xc3,0x0,0x1                                                                                    
000354   0100     MOVLB     0x0                                                                                             
000356   1964     XORWF     0x64,0x0,0x1                                                                                    
000358   e104     BNZ       0x362                                                                                           
00035a   0100     MOVLB     0x0                                                                                             
00035c   51c4     MOVF      0xc4,0x0,0x1                                                                                    
00035e   0100     MOVLB     0x0                                                                                             
000360   1965     XORWF     0x65,0x0,0x1                                                                                    
000362   e164     BNZ       0x42c                                                                                           
                                                        {                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000364   0e1c     MOVLW     0x1c                            BYTE localIndex = (BYTE)((cm.funcc & 0x1C)>>2)*8;                           F:\MCP\projects\CAN\canBoot\Source\Main.c
000366   0100     MOVLB     0x0                                                                                             
000368   1561     ANDWF     0x61,0x0,0x1                                                                                    
00036a   6e00     MOVWF     0x0,0x0                                                                                         
00036c   6a01     CLRF      0x1,0x0                                                                                         
00036e   90d8     BCF       0xd8,0x0,0x0                                                                                    
000370   3201     RRCF      0x1,0x1,0x0                                                                                     
000372   3200     RRCF      0x0,0x1,0x0                                                                                     
000374   90d8     BCF       0xd8,0x0,0x0                                                                                    
000376   3201     RRCF      0x1,0x1,0x0                                                                                     
000378   3200     RRCF      0x0,0x1,0x0                                                                                     
00037a   0e08     MOVLW     0x8                                                                                             
00037c   0200     MULWF     0x0,0x0                                                                                         
00037e   0e16     MOVLW     0x16                                                                                            
000380   cff3     MOVFF     0xff3,0xfdb                                                                                     
000382   ffdb                                                                                                               
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                            // Save bytes in memory, setup start adress etc..                           F:\MCP\projects\CAN\canBoot\Source\Main.c
000384   0100     MOVLB     0x0                             bytesReceived   = 8;                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
000386   0e08     MOVLW     0x8                                                                                             
000388   6fcb     MOVWF     0xcb,0x1                                                                                        
00038a   0e16     MOVLW     0x16                            pgmData[localIndex+0]=cm.data[0]; pgmData[localIndex+1]=cm.data[1]; pgmData[localIndex+2]=cm.data[2]; pgmData[localIndex+3]=cm.data[3]; F:\MCP\projects\CAN\canBoot\Source\Main.c
00038c   50db     MOVF      0xdb,0x0,0x0                                                                                    
00038e   6aea     CLRF      0xea,0x0                                                                                        
000390   0f70     ADDLW     0x70                                                                                            
000392   6ee9     MOVWF     0xe9,0x0                                                                                        
000394   0e00     MOVLW     0x0                                                                                             
000396   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
000398   c068     MOVFF     0x68,0xfef                                                                                      
00039a   ffef                                                                                                               
00039c   0e16     MOVLW     0x16                                                                                            
00039e   28db     INCF      0xdb,0x0,0x0                                                                                    
0003a0   6aea     CLRF      0xea,0x0                                                                                        
0003a2   0f70     ADDLW     0x70                                                                                            
0003a4   6ee9     MOVWF     0xe9,0x0                                                                                        
0003a6   0e00     MOVLW     0x0                                                                                             
0003a8   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
0003aa   c069     MOVFF     0x69,0xfef                                                                                      
0003ac   ffef                                                                                                               
0003ae   0e16     MOVLW     0x16                                                                                            
0003b0   50db     MOVF      0xdb,0x0,0x0                                                                                    
0003b2   0f02     ADDLW     0x2                                                                                             
0003b4   6aea     CLRF      0xea,0x0                                                                                        
0003b6   0f70     ADDLW     0x70                                                                                            
0003b8   6ee9     MOVWF     0xe9,0x0                                                                                        
0003ba   0e00     MOVLW     0x0                                                                                             
0003bc   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
0003be   c06a     MOVFF     0x6a,0xfef                                                                                      
0003c0   ffef                                                                                                               
0003c2   0e16     MOVLW     0x16                                                                                            
0003c4   50db     MOVF      0xdb,0x0,0x0                                                                                    
0003c6   0f03     ADDLW     0x3                                                                                             
0003c8   6aea     CLRF      0xea,0x0                                                                                        
0003ca   0f70     ADDLW     0x70                                                                                            
0003cc   6ee9     MOVWF     0xe9,0x0                                                                                        
0003ce   0e00     MOVLW     0x0                                                                                             
0003d0   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
0003d2   c06b     MOVFF     0x6b,0xfef                                                                                      
0003d4   ffef                                                                                                               
0003d6   0e16     MOVLW     0x16                            pgmData[localIndex+4]=cm.data[4]; pgmData[localIndex+5]=cm.data[5]; pgmData[localIndex+6]=cm.data[6]; pgmData[localIndex+7]=cm.data[7]; F:\MCP\projects\CAN\canBoot\Source\Main.c
0003d8   50db     MOVF      0xdb,0x0,0x0                                                                                    
0003da   0f04     ADDLW     0x4                                                                                             
0003dc   6aea     CLRF      0xea,0x0                                                                                        
0003de   0f70     ADDLW     0x70                                                                                            
0003e0   6ee9     MOVWF     0xe9,0x0                                                                                        
0003e2   0e00     MOVLW     0x0                                                                                             
0003e4   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
0003e6   c06c     MOVFF     0x6c,0xfef                                                                                      
0003e8   ffef                                                                                                               
0003ea   0e16     MOVLW     0x16                                                                                            
0003ec   50db     MOVF      0xdb,0x0,0x0                                                                                    
0003ee   0f05     ADDLW     0x5                                                                                             
0003f0   6aea     CLRF      0xea,0x0                                                                                        
0003f2   0f70     ADDLW     0x70                                                                                            
0003f4   6ee9     MOVWF     0xe9,0x0                                                                                        
0003f6   0e00     MOVLW     0x0                                                                                             
0003f8   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
0003fa   c06d     MOVFF     0x6d,0xfef                                                                                      
0003fc   ffef                                                                                                               
0003fe   0e16     MOVLW     0x16                                                                                            
000400   50db     MOVF      0xdb,0x0,0x0                                                                                    
000402   0f06     ADDLW     0x6                                                                                             
000404   6aea     CLRF      0xea,0x0                                                                                        
000406   0f70     ADDLW     0x70                                                                                            
000408   6ee9     MOVWF     0xe9,0x0                                                                                        
00040a   0e00     MOVLW     0x0                                                                                             
00040c   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
00040e   c06e     MOVFF     0x6e,0xfef                                                                                      
000410   ffef                                                                                                               
000412   0e16     MOVLW     0x16                                                                                            
000414   50db     MOVF      0xdb,0x0,0x0                                                                                    
000416   0f07     ADDLW     0x7                                                                                             
000418   6aea     CLRF      0xea,0x0                                                                                        
00041a   0f70     ADDLW     0x70                                                                                            
00041c   6ee9     MOVWF     0xe9,0x0                                                                                        
00041e   0e00     MOVLW     0x0                                                                                             
000420   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
000422   c06f     MOVFF     0x6f,0xfef                                                                                      
000424   ffef                                                                                                               
                                                                                                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
000426   0100     MOVLB     0x0                             pgs             = pgsWAIT_PGM_PACKET;                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
000428   0e03     MOVLW     0x3                                                                                             
00042a   6fbe     MOVWF     0xbe,0x1                                                                                        
                                                        }                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
00042c   d19d     BRA       0x768                   break;                                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                    case pgsWAIT_PGM_PACKET:                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                                  F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // If programming packet...                                                  F:\MCP\projects\CAN\canBoot\Source\Main.c
00042e   0e15     MOVLW     0x15                        if (hasPacket==TRUE && cm.funct==FUNCT_BOOTLOADER && (cm.funcc & 0x3)==FUNCC_BOOT_PGM && cm.nid==MY_NID && cm.sid==programmerSid) F:\MCP\projects\CAN\canBoot\Source\Main.c
000430   04db     DECF      0xdb,0x0,0x0                                                                                    
000432   e001     BZ        0x436                                                                                           
000434   d07f     BRA       0x534                                                                                           
000436   0100     MOVLB     0x0                                                                                             
000438   5160     MOVF      0x60,0x0,0x1                                                                                    
00043a   e001     BZ        0x43e                                                                                           
00043c   d07b     BRA       0x534                                                                                           
00043e   0e03     MOVLW     0x3                                                                                             
000440   0100     MOVLB     0x0                                                                                             
000442   1561     ANDWF     0x61,0x0,0x1                                                                                    
000444   6e00     MOVWF     0x0,0x0                                                                                         
000446   6a01     CLRF      0x1,0x0                                                                                         
000448   0e03     MOVLW     0x3                                                                                             
00044a   1800     XORWF     0x0,0x0,0x0                                                                                     
00044c   e101     BNZ       0x450                                                                                           
00044e   5001     MOVF      0x1,0x0,0x0                                                                                     
000450   e171     BNZ       0x534                                                                                           
000452   0100     MOVLB     0x0                                                                                             
000454   5163     MOVF      0x63,0x0,0x1                                                                                    
000456   e16e     BNZ       0x534                                                                                           
000458   0100     MOVLB     0x0                                                                                             
00045a   51c3     MOVF      0xc3,0x0,0x1                                                                                    
00045c   0100     MOVLB     0x0                                                                                             
00045e   1964     XORWF     0x64,0x0,0x1                                                                                    
000460   e104     BNZ       0x46a                                                                                           
000462   0100     MOVLB     0x0                                                                                             
000464   51c4     MOVF      0xc4,0x0,0x1                                                                                    
000466   0100     MOVLB     0x0                                                                                             
000468   1965     XORWF     0x65,0x0,0x1                                                                                    
00046a   e164     BNZ       0x534                                                                                           
                                                        {                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
00046c   0e1c     MOVLW     0x1c                            BYTE localIndex = (BYTE)((cm.funcc & 0x1C)>>2)*8;                           F:\MCP\projects\CAN\canBoot\Source\Main.c
00046e   0100     MOVLB     0x0                                                                                             
000470   1561     ANDWF     0x61,0x0,0x1                                                                                    
000472   6e00     MOVWF     0x0,0x0                                                                                         
000474   6a01     CLRF      0x1,0x0                                                                                         
000476   90d8     BCF       0xd8,0x0,0x0                                                                                    
000478   3201     RRCF      0x1,0x1,0x0                                                                                     
00047a   3200     RRCF      0x0,0x1,0x0                                                                                     
00047c   90d8     BCF       0xd8,0x0,0x0                                                                                    
00047e   3201     RRCF      0x1,0x1,0x0                                                                                     
000480   3200     RRCF      0x0,0x1,0x0                                                                                     
000482   0e08     MOVLW     0x8                                                                                             
000484   0200     MULWF     0x0,0x0                                                                                         
000486   0e17     MOVLW     0x17                                                                                            
000488   cff3     MOVFF     0xff3,0xfdb                                                                                     
00048a   ffdb                                                                                                               
                                                            // Save bytes in memory, inc received bytes.                                F:\MCP\projects\CAN\canBoot\Source\Main.c
00048c   0e17     MOVLW     0x17                            pgmData[localIndex+0]=cm.data[0]; pgmData[localIndex+1]=cm.data[1]; pgmData[localIndex+2]=cm.data[2]; pgmData[localIndex+3]=cm.data[3]; F:\MCP\projects\CAN\canBoot\Source\Main.c
00048e   50db     MOVF      0xdb,0x0,0x0                                                                                    
000490   6aea     CLRF      0xea,0x0                                                                                        
000492   0f70     ADDLW     0x70                                                                                            
000494   6ee9     MOVWF     0xe9,0x0                                                                                        
000496   0e00     MOVLW     0x0                                                                                             
000498   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
00049a   c068     MOVFF     0x68,0xfef                                                                                      
00049c   ffef                                                                                                               
00049e   0e17     MOVLW     0x17                                                                                            
0004a0   28db     INCF      0xdb,0x0,0x0                                                                                    
0004a2   6aea     CLRF      0xea,0x0                                                                                        
0004a4   0f70     ADDLW     0x70                                                                                            
0004a6   6ee9     MOVWF     0xe9,0x0                                                                                        
0004a8   0e00     MOVLW     0x0                                                                                             
0004aa   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
0004ac   c069     MOVFF     0x69,0xfef                                                                                      
0004ae   ffef                                                                                                               
0004b0   0e17     MOVLW     0x17                                                                                            
0004b2   50db     MOVF      0xdb,0x0,0x0                                                                                    
0004b4   0f02     ADDLW     0x2                                                                                             
0004b6   6aea     CLRF      0xea,0x0                                                                                        
0004b8   0f70     ADDLW     0x70                                                                                            
0004ba   6ee9     MOVWF     0xe9,0x0                                                                                        
0004bc   0e00     MOVLW     0x0                                                                                             
0004be   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
0004c0   c06a     MOVFF     0x6a,0xfef                                                                                      
0004c2   ffef                                                                                                               
0004c4   0e17     MOVLW     0x17                                                                                            
0004c6   50db     MOVF      0xdb,0x0,0x0                                                                                    
0004c8   0f03     ADDLW     0x3                                                                                             
0004ca   6aea     CLRF      0xea,0x0                                                                                        
0004cc   0f70     ADDLW     0x70                                                                                            
0004ce   6ee9     MOVWF     0xe9,0x0                                                                                        
0004d0   0e00     MOVLW     0x0                                                                                             
0004d2   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
0004d4   c06b     MOVFF     0x6b,0xfef                                                                                      
0004d6   ffef                                                                                                               
0004d8   0e17     MOVLW     0x17                            pgmData[localIndex+4]=cm.data[4]; pgmData[localIndex+5]=cm.data[5]; pgmData[localIndex+6]=cm.data[6]; pgmData[localIndex+7]=cm.data[7]; F:\MCP\projects\CAN\canBoot\Source\Main.c
0004da   50db     MOVF      0xdb,0x0,0x0                                                                                    
0004dc   0f04     ADDLW     0x4                                                                                             
0004de   6aea     CLRF      0xea,0x0                                                                                        
0004e0   0f70     ADDLW     0x70                                                                                            
0004e2   6ee9     MOVWF     0xe9,0x0                                                                                        
0004e4   0e00     MOVLW     0x0                                                                                             
0004e6   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
0004e8   c06c     MOVFF     0x6c,0xfef                                                                                      
0004ea   ffef                                                                                                               
0004ec   0e17     MOVLW     0x17                                                                                            
0004ee   50db     MOVF      0xdb,0x0,0x0                                                                                    
0004f0   0f05     ADDLW     0x5                                                                                             
0004f2   6aea     CLRF      0xea,0x0                                                                                        
0004f4   0f70     ADDLW     0x70                                                                                            
0004f6   6ee9     MOVWF     0xe9,0x0                                                                                        
0004f8   0e00     MOVLW     0x0                                                                                             
0004fa   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
0004fc   c06d     MOVFF     0x6d,0xfef                                                                                      
0004fe   ffef                                                                                                               
000500   0e17     MOVLW     0x17                                                                                            
000502   50db     MOVF      0xdb,0x0,0x0                                                                                    
000504   0f06     ADDLW     0x6                                                                                             
000506   6aea     CLRF      0xea,0x0                                                                                        
000508   0f70     ADDLW     0x70                                                                                            
00050a   6ee9     MOVWF     0xe9,0x0                                                                                        
00050c   0e00     MOVLW     0x0                                                                                             
00050e   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
000510   c06e     MOVFF     0x6e,0xfef                                                                                      
000512   ffef                                                                                                               
000514   0e17     MOVLW     0x17                                                                                            
000516   50db     MOVF      0xdb,0x0,0x0                                                                                    
000518   0f07     ADDLW     0x7                                                                                             
00051a   6aea     CLRF      0xea,0x0                                                                                        
00051c   0f70     ADDLW     0x70                                                                                            
00051e   6ee9     MOVWF     0xe9,0x0                                                                                        
000520   0e00     MOVLW     0x0                                                                                             
000522   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
000524   c06f     MOVFF     0x6f,0xfef                                                                                      
000526   ffef                                                                                                               
                                                                                                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
000528   0e08     MOVLW     0x8                             bytesReceived   += 8;                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
00052a   0100     MOVLB     0x0                                                                                             
00052c   27cb     ADDWF     0xcb,0x1,0x1                                                                                    
00052e   0100     MOVLB     0x0                             pgs              = pgsWAIT_PGM_PACKET;                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
000530   0e03     MOVLW     0x3                                                                                             
000532   6fbe     MOVWF     0xbe,0x1                                                                                        
                                                        }                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // If adress packet (control packet)..                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
000534   0e15     MOVLW     0x15                        if (hasPacket==TRUE && cm.funct==FUNCT_BOOTLOADER && cm.funcc==FUNCC_BOOT_ADDR && cm.nid==MY_NID && cm.sid==programmerSid) F:\MCP\projects\CAN\canBoot\Source\Main.c
000536   04db     DECF      0xdb,0x0,0x0                                                                                    
000538   e11e     BNZ       0x576                                                                                           
00053a   0100     MOVLB     0x0                                                                                             
00053c   5160     MOVF      0x60,0x0,0x1                                                                                    
00053e   e11b     BNZ       0x576                                                                                           
000540   0100     MOVLB     0x0                                                                                             
000542   0e02     MOVLW     0x2                                                                                             
000544   1961     XORWF     0x61,0x0,0x1                                                                                    
000546   e101     BNZ       0x54a                                                                                           
000548   5162     MOVF      0x62,0x0,0x1                                                                                    
00054a   e115     BNZ       0x576                                                                                           
00054c   0100     MOVLB     0x0                                                                                             
00054e   5163     MOVF      0x63,0x0,0x1                                                                                    
000550   e112     BNZ       0x576                                                                                           
000552   0100     MOVLB     0x0                                                                                             
000554   51c3     MOVF      0xc3,0x0,0x1                                                                                    
000556   0100     MOVLB     0x0                                                                                             
000558   1964     XORWF     0x64,0x0,0x1                                                                                    
00055a   e104     BNZ       0x564                                                                                           
00055c   0100     MOVLB     0x0                                                                                             
00055e   51c4     MOVF      0xc4,0x0,0x1                                                                                    
000560   0100     MOVLB     0x0                                                                                             
000562   1965     XORWF     0x65,0x0,0x1                                                                                    
000564   e108     BNZ       0x576                                                                                           
                                                        {                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                            // Send ack and goto wait first packet.                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                            // save adress.                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
000566   0100     MOVLB     0x0                             errMsg          = ERR_NO_ERROR;                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
000568   6bc5     CLRF      0xc5,0x1                                                                                        
00056a   0100     MOVLB     0x0                             afterAckPgs     = pgsWAIT_FIRST_PGM_PACKET;                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
00056c   0e02     MOVLW     0x2                                                                                             
00056e   6fc6     MOVWF     0xc6,0x1                                                                                        
000570   0100     MOVLB     0x0                             pgs             = pgsSEND_ACK;                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
000572   0e01     MOVLW     0x1                                                                                             
000574   6fbe     MOVWF     0xbe,0x1                                                                                        
                                                        }                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // If end packet...                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
000576   0e15     MOVLW     0x15                        if (hasPacket==TRUE && cm.funct==FUNCT_BOOTLOADER && cm.funcc==FUNCC_BOOT_DONE && cm.nid==MY_NID && cm.sid==programmerSid) F:\MCP\projects\CAN\canBoot\Source\Main.c
000578   04db     DECF      0xdb,0x0,0x0                                                                                    
00057a   e136     BNZ       0x5e8                                                                                           
00057c   0100     MOVLB     0x0                                                                                             
00057e   5160     MOVF      0x60,0x0,0x1                                                                                    
000580   e133     BNZ       0x5e8                                                                                           
000582   0100     MOVLB     0x0                                                                                             
000584   0e05     MOVLW     0x5                                                                                             
000586   1961     XORWF     0x61,0x0,0x1                                                                                    
000588   e101     BNZ       0x58c                                                                                           
00058a   5162     MOVF      0x62,0x0,0x1                                                                                    
00058c   e12d     BNZ       0x5e8                                                                                           
00058e   0100     MOVLB     0x0                                                                                             
000590   5163     MOVF      0x63,0x0,0x1                                                                                    
000592   e12a     BNZ       0x5e8                                                                                           
000594   0100     MOVLB     0x0                                                                                             
000596   51c3     MOVF      0xc3,0x0,0x1                                                                                    
000598   0100     MOVLB     0x0                                                                                             
00059a   1964     XORWF     0x64,0x0,0x1                                                                                    
00059c   e104     BNZ       0x5a6                                                                                           
00059e   0100     MOVLB     0x0                                                                                             
0005a0   51c4     MOVF      0xc4,0x0,0x1                                                                                    
0005a2   0100     MOVLB     0x0                                                                                             
0005a4   1965     XORWF     0x65,0x0,0x1                                                                                    
0005a6   e120     BNZ       0x5e8                                                                                           
                                                        {                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                            // write program.                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                            // If no bytes received at all, assume end.                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                            // If not 64 bytes received, send error ack and wait for first packet.      F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                            // If 64, write.                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
0005a8   0100     MOVLB     0x0                             if (bytesReceived==0)                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
0005aa   51cb     MOVF      0xcb,0x0,0x1                                                                                    
0005ac   e109     BNZ       0x5c0                                                                                           
                                                            {                                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                // No received, done.                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
0005ae   0100     MOVLB     0x0                                 errMsg          = ERR_NO_ERROR;                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
0005b0   6bc5     CLRF      0xc5,0x1                                                                                        
0005b2   0100     MOVLB     0x0                                 afterAckPgs     = pgsDONE;                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
0005b4   0e05     MOVLW     0x5                                                                                             
0005b6   6fc6     MOVWF     0xc6,0x1                                                                                        
0005b8   0100     MOVLB     0x0                                 pgs             = pgsSEND_ACK;                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
0005ba   0e01     MOVLW     0x1                                                                                             
0005bc   6fbe     MOVWF     0xbe,0x1                                                                                        
                                                            }                                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
0005be   d014     BRA       0x5e8                           else if (bytesReceived!=64)                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
0005c0   0e40     MOVLW     0x40                                                                                            
0005c2   0100     MOVLB     0x0                                                                                             
0005c4   5dcb     SUBWF     0xcb,0x0,0x1                                                                                    
0005c6   e00a     BZ        0x5dc                                                                                           
                                                            {                                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
0005c8   0100     MOVLB     0x0                                 errMsg          = ERR_ERROR;                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
0005ca   0e01     MOVLW     0x1                                                                                             
0005cc   6fc5     MOVWF     0xc5,0x1                                                                                        
0005ce   0100     MOVLB     0x0                                 afterAckPgs     = pgsWAIT_FIRST_PGM_PACKET;                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
0005d0   0e02     MOVLW     0x2                                                                                             
0005d2   6fc6     MOVWF     0xc6,0x1                                                                                        
0005d4   0100     MOVLB     0x0                                 pgs             = pgsSEND_ACK;                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
0005d6   0e01     MOVLW     0x1                                                                                             
0005d8   6fbe     MOVWF     0xbe,0x1                                                                                        
                                                            }                                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
0005da   d006     BRA       0x5e8                           else                                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                            {                                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
0005dc   0100     MOVLB     0x0                                 pgs              = pgsWRITE_PROGRAM;                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
0005de   0e04     MOVLW     0x4                                                                                             
0005e0   6fbe     MOVWF     0xbe,0x1                                                                                        
0005e2   0100     MOVLB     0x0                                 afterAckPgs     = pgsDONE;                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
0005e4   0e05     MOVLW     0x5                                                                                             
0005e6   6fc6     MOVWF     0xc6,0x1                                                                                        
                                                            }                                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        }                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // If bytes received 64, write..                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
0005e8   0e40     MOVLW     0x40                        if (bytesReceived==64)                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
0005ea   0100     MOVLB     0x0                                                                                             
0005ec   5dcb     SUBWF     0xcb,0x0,0x1                                                                                    
0005ee   e107     BNZ       0x5fe                                                                                           
                                                        {                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
0005f0   7282     BTG       0x82,0x1,0x0                    LED0_IO=~LED0_IO;                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
0005f2   0100     MOVLB     0x0                             pgs              = pgsWRITE_PROGRAM;                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
0005f4   0e04     MOVLW     0x4                                                                                             
0005f6   6fbe     MOVWF     0xbe,0x1                                                                                        
0005f8   0100     MOVLB     0x0                             afterAckPgs     = pgsWAIT_PGM_PACKET;                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
0005fa   0e03     MOVLW     0x3                                                                                             
0005fc   6fc6     MOVWF     0xc6,0x1                                                                                        
                                                            // TODO! Send ack more than once..                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        }                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
0005fe   d0b4     BRA       0x768                   break;                                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                    case pgsWRITE_PROGRAM:                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // Write program and send ack.                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // Check addr limit                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
000600   0e00     MOVLW     0x0                         if (pgmAddress<RM_RESET_VECTOR)                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
000602   0100     MOVLB     0x0                                                                                             
000604   5dc7     SUBWF     0xc7,0x0,0x1                                                                                    
000606   0e10     MOVLW     0x10                                                                                            
000608   59c8     SUBWFB    0xc8,0x0,0x1                                                                                    
00060a   0e00     MOVLW     0x0                                                                                             
00060c   59c9     SUBWFB    0xc9,0x0,0x1                                                                                    
00060e   0e00     MOVLW     0x0                                                                                             
000610   59ca     SUBWFB    0xca,0x0,0x1                                                                                    
000612   e206     BC        0x620                                                                                           
                                                        {                                                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
000614   0100     MOVLB     0x0                             errMsg          = ERR_ERROR;                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
000616   0e01     MOVLW     0x1                                                                                             
000618   6fc5     MOVWF     0xc5,0x1                                                                                        
00061a   0100     MOVLB     0x0                             pgs             = pgsSEND_ACK;                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
00061c   0e01     MOVLW     0x1                                                                                             
00061e   6fbe     MOVWF     0xbe,0x1                                                                                        
                                                            //Not allowed to write here!                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        }                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        //Load Table pointer registers with base address to erase.                   F:\MCP\projects\CAN\canBoot\Source\Main.c
000620   c0c7     MOVFF     0xc7,0x0                    TBLPTRU = (BYTE)((pgmAddress & 0xFF0000)>>16);                               F:\MCP\projects\CAN\canBoot\Source\Main.c
000622   f000                                                                                                               
000624   c0c8     MOVFF     0xc8,0x1                                                                                        
000626   f001                                                                                                               
000628   c0c9     MOVFF     0xc9,0x2                                                                                        
00062a   f002                                                                                                               
00062c   c0ca     MOVFF     0xca,0x3                                                                                        
00062e   f003                                                                                                               
000630   6a00     CLRF      0x0,0x0                                                                                         
000632   6a01     CLRF      0x1,0x0                                                                                         
000634   6a03     CLRF      0x3,0x0                                                                                         
000636   0e10     MOVLW     0x10                                                                                            
000638   90d8     BCF       0xd8,0x0,0x0                                                                                    
00063a   3203     RRCF      0x3,0x1,0x0                                                                                     
00063c   3202     RRCF      0x2,0x1,0x0                                                                                     
00063e   3201     RRCF      0x1,0x1,0x0                                                                                     
000640   3200     RRCF      0x0,0x1,0x0                                                                                     
000642   06e8     DECF      0xe8,0x1,0x0                                                                                    
000644   e1f9     BNZ       0x638                                                                                           
000646   5000     MOVF      0x0,0x0,0x0                                                                                     
000648   6ef8     MOVWF     0xf8,0x0                                                                                        
00064a   c0c7     MOVFF     0xc7,0x0                    TBLPTRH = (BYTE)((pgmAddress & 0xFF00)>>8);                                  F:\MCP\projects\CAN\canBoot\Source\Main.c
00064c   f000                                                                                                               
00064e   c0c8     MOVFF     0xc8,0x1                                                                                        
000650   f001                                                                                                               
000652   c0c9     MOVFF     0xc9,0x2                                                                                        
000654   f002                                                                                                               
000656   c0ca     MOVFF     0xca,0x3                                                                                        
000658   f003                                                                                                               
00065a   6a00     CLRF      0x0,0x0                                                                                         
00065c   6a02     CLRF      0x2,0x0                                                                                         
00065e   6a03     CLRF      0x3,0x0                                                                                         
000660   0e08     MOVLW     0x8                                                                                             
000662   90d8     BCF       0xd8,0x0,0x0                                                                                    
000664   3203     RRCF      0x3,0x1,0x0                                                                                     
000666   3202     RRCF      0x2,0x1,0x0                                                                                     
000668   3201     RRCF      0x1,0x1,0x0                                                                                     
00066a   3200     RRCF      0x0,0x1,0x0                                                                                     
00066c   06e8     DECF      0xe8,0x1,0x0                                                                                    
00066e   e1f9     BNZ       0x662                                                                                           
000670   5000     MOVF      0x0,0x0,0x0                                                                                     
000672   6ef7     MOVWF     0xf7,0x0                                                                                        
000674   0100     MOVLB     0x0                         TBLPTRL = (BYTE)(pgmAddress & 0xFF);                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
000676   51c7     MOVF      0xc7,0x0,0x1                                                                                    
000678   6ef6     MOVWF     0xf6,0x0                                                                                        
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // point to Flash program memory                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
00067a   8ea6     BSF       0xa6,0x7,0x0                EECON1bits.EEPGD = 1;                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // access Flash program memory                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
00067c   9ca6     BCF       0xa6,0x6,0x0                EECON1bits.CFGS = 0;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // enable write to memory                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
00067e   84a6     BSF       0xa6,0x2,0x0                EECON1bits.WREN = 1;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // enable Row Erase operation                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
000680   88a6     BSF       0xa6,0x4,0x0                EECON1bits.FREE = 1;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // disable interrupts                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
000682   9ef2     BCF       0xf2,0x7,0x0                INTCONbits.GIE = 0;                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // Do it!                                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
000684   0e55     MOVLW     0x55                        EECON2 = 0x55;                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
000686   6ea7     MOVWF     0xa7,0x0                                                                                        
000688   0eaa     MOVLW     0xaa                        EECON2 = 0xAA;                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
00068a   6ea7     MOVWF     0xa7,0x0                                                                                        
00068c   82a6     BSF       0xa6,0x1,0x0                EECON1bits.WR = 1;                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // enable interrupts                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
00068e   8ef2     BSF       0xf2,0x7,0x0                INTCONbits.GIE = 1;                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        //Load Table pointer registers with base address to program.                 F:\MCP\projects\CAN\canBoot\Source\Main.c
000690   c0c7     MOVFF     0xc7,0x0                    TBLPTRU = (BYTE)((pgmAddress & 0xFF0000)>>16);                               F:\MCP\projects\CAN\canBoot\Source\Main.c
000692   f000                                                                                                               
000694   c0c8     MOVFF     0xc8,0x1                                                                                        
000696   f001                                                                                                               
000698   c0c9     MOVFF     0xc9,0x2                                                                                        
00069a   f002                                                                                                               
00069c   c0ca     MOVFF     0xca,0x3                                                                                        
00069e   f003                                                                                                               
0006a0   6a00     CLRF      0x0,0x0                                                                                         
0006a2   6a01     CLRF      0x1,0x0                                                                                         
0006a4   6a03     CLRF      0x3,0x0                                                                                         
0006a6   0e10     MOVLW     0x10                                                                                            
0006a8   90d8     BCF       0xd8,0x0,0x0                                                                                    
0006aa   3203     RRCF      0x3,0x1,0x0                                                                                     
0006ac   3202     RRCF      0x2,0x1,0x0                                                                                     
0006ae   3201     RRCF      0x1,0x1,0x0                                                                                     
0006b0   3200     RRCF      0x0,0x1,0x0                                                                                     
0006b2   06e8     DECF      0xe8,0x1,0x0                                                                                    
0006b4   e1f9     BNZ       0x6a8                                                                                           
0006b6   5000     MOVF      0x0,0x0,0x0                                                                                     
0006b8   6ef8     MOVWF     0xf8,0x0                                                                                        
0006ba   c0c7     MOVFF     0xc7,0x0                    TBLPTRH = (BYTE)((pgmAddress & 0xFF00)>>8);                                  F:\MCP\projects\CAN\canBoot\Source\Main.c
0006bc   f000                                                                                                               
0006be   c0c8     MOVFF     0xc8,0x1                                                                                        
0006c0   f001                                                                                                               
0006c2   c0c9     MOVFF     0xc9,0x2                                                                                        
0006c4   f002                                                                                                               
0006c6   c0ca     MOVFF     0xca,0x3                                                                                        
0006c8   f003                                                                                                               
0006ca   6a00     CLRF      0x0,0x0                                                                                         
0006cc   6a02     CLRF      0x2,0x0                                                                                         
0006ce   6a03     CLRF      0x3,0x0                                                                                         
0006d0   0e08     MOVLW     0x8                                                                                             
0006d2   90d8     BCF       0xd8,0x0,0x0                                                                                    
0006d4   3203     RRCF      0x3,0x1,0x0                                                                                     
0006d6   3202     RRCF      0x2,0x1,0x0                                                                                     
0006d8   3201     RRCF      0x1,0x1,0x0                                                                                     
0006da   3200     RRCF      0x0,0x1,0x0                                                                                     
0006dc   06e8     DECF      0xe8,0x1,0x0                                                                                    
0006de   e1f9     BNZ       0x6d2                                                                                           
0006e0   5000     MOVF      0x0,0x0,0x0                                                                                     
0006e2   6ef7     MOVWF     0xf7,0x0                                                                                        
0006e4   0100     MOVLB     0x0                         TBLPTRL = (BYTE)(pgmAddress & 0xFF);                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
0006e6   51c7     MOVF      0xc7,0x0,0x1                                                                                    
0006e8   6ef6     MOVWF     0xf6,0x0                                                                                        
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // Load bytes                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
0006ea   0e04     MOVLW     0x4                         for(i=0;i<63;i++)                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
0006ec   6adb     CLRF      0xdb,0x0                                                                                        
0006ee   0e3f     MOVLW     0x3f                                                                                            
0006f0   6ef3     MOVWF     0xf3,0x0                                                                                        
0006f2   0e04     MOVLW     0x4                                                                                             
0006f4   cfdb     MOVFF     0xfdb,0xff4                                                                                     
0006f6   fff4                                                                                                               
0006f8   50f3     MOVF      0xf3,0x0,0x0                                                                                    
0006fa   5cf4     SUBWF     0xf4,0x0,0x0                                                                                    
0006fc   e20d     BC        0x718                                                                                           
000712   0e04     MOVLW     0x4                                                                                             
000714   2adb     INCF      0xdb,0x1,0x0                                                                                    
000716   d7eb     BRA       0x6ee                                                                                           
                                                        {                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
0006fe   0e04     MOVLW     0x4                             TABLAT=pgmData[i];                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
000700   50db     MOVF      0xdb,0x0,0x0                                                                                    
000702   6aea     CLRF      0xea,0x0                                                                                        
000704   0f70     ADDLW     0x70                                                                                            
000706   6ee9     MOVWF     0xe9,0x0                                                                                        
000708   0e00     MOVLW     0x0                                                                                             
00070a   22ea     ADDWFC    0xea,0x1,0x0                                                                                    
00070c   50ef     MOVF      0xef,0x0,0x0                                                                                    
00070e   6ef5     MOVWF     0xf5,0x0                                                                                        
000710   d9fe     RCALL     0xb0e                           TBLWTPOSTINC_Func();                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        }                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000718   c0af     MOVFF     0xaf,0xff5                  TABLAT=pgmData[63];                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
00071a   fff5                                                                                                               
00071c   d9f6     RCALL     0xb0a                       TBLWT_Func();                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // point to Flash program memory                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
00071e   8ea6     BSF       0xa6,0x7,0x0                EECON1bits.EEPGD = 1;                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // access Flash program memory                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
000720   9ca6     BCF       0xa6,0x6,0x0                EECON1bits.CFGS = 0;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // enable write to memory                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
000722   84a6     BSF       0xa6,0x2,0x0                EECON1bits.WREN = 1;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // disable interrupts                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
000724   9ef2     BCF       0xf2,0x7,0x0                INTCONbits.GIE = 0;                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // Do it!                                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
000726   0e55     MOVLW     0x55                        EECON2 = 0x55;                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
000728   6ea7     MOVWF     0xa7,0x0                                                                                        
00072a   0eaa     MOVLW     0xaa                        EECON2 = 0xAA;                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
00072c   6ea7     MOVWF     0xa7,0x0                                                                                        
00072e   82a6     BSF       0xa6,0x1,0x0                EECON1bits.WR = 1;                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // enable interrupts                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
000730   8ef2     BSF       0xf2,0x7,0x0                INTCONbits.GIE = 1;                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                        // disable write to memory                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
000732   94a6     BCF       0xa6,0x2,0x0                EECON1bits.WREN = 0;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000734   0e40     MOVLW     0x40                        pgmAddress     += 64;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
000736   0100     MOVLB     0x0                                                                                             
000738   27c7     ADDWF     0xc7,0x1,0x1                                                                                    
00073a   0e00     MOVLW     0x0                                                                                             
00073c   0100     MOVLB     0x0                                                                                             
00073e   23c8     ADDWFC    0xc8,0x1,0x1                                                                                    
000740   0e00     MOVLW     0x0                                                                                             
000742   0100     MOVLB     0x0                                                                                             
000744   23c9     ADDWFC    0xc9,0x1,0x1                                                                                    
000746   0e00     MOVLW     0x0                                                                                             
000748   0100     MOVLB     0x0                                                                                             
00074a   23ca     ADDWFC    0xca,0x1,0x1                                                                                    
00074c   0100     MOVLB     0x0                         bytesReceived   = 0;                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
00074e   6bcb     CLRF      0xcb,0x1                                                                                        
000750   0100     MOVLB     0x0                         errMsg          = ERR_NO_ERROR;                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
000752   6bc5     CLRF      0xc5,0x1                                                                                        
000754   0100     MOVLB     0x0                         pgs             = pgsSEND_ACK;                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
000756   0e01     MOVLW     0x1                                                                                             
000758   6fbe     MOVWF     0xbe,0x1                                                                                        
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
00075a   d006     BRA       0x768                   break;                                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                    case pgsDONE:                                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
00075c   ef00     GOTO      0x1000                      _asm  goto RM_RESET_VECTOR _endasm                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
00075e   f008                                                                                                               
000760   d003     BRA       0x768                   break;                                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                    default:                                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
000762   0100     MOVLB     0x0                         pgs = pgsWATING_START;                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
000764   6bbe     CLRF      0xbe,0x1                                                                                        
000766   d000     BRA       0x768                   break;                                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                }                                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            }                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
00076a   0e18     MOVLW     0x18           }                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
00076c   5ce1     SUBWF     0xe1,0x0,0x0                                                                                    
00076e   e202     BC        0x774                                                                                           
000770   6ae1     CLRF      0xe1,0x0                                                                                        
000772   52e5     MOVF      0xe5,0x1,0x0                                                                                    
000774   6ee1     MOVWF     0xe1,0x0                                                                                        
000776   52e5     MOVF      0xe5,0x1,0x0                                                                                    
000778   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
00077a   ffd9                                                                                                               
00077c   0012     RETURN    0x0                                                                                             
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           /*                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Function: mainInit                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Input:  none                                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Output: none                                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Pre-conditions: none                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Affects: Se code                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Depends: none.                                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           */                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           void mainInit()                                                                  F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           {                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
00077e   9294     BCF       0x94,0x1,0x0    LED0_TRIS=0;                                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                               // Enable internal PORTB pull-ups                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000780   9ef1     BCF       0xf1,0x7,0x0       INTCON2bits.RBPU = 0;                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // Enable Interrupts                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000782   8ef2     BSF       0xf2,0x7,0x0       INTCONbits.GIEH = 1;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
000784   8cf2     BSF       0xf2,0x6,0x0       INTCONbits.GIEL = 1;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // Enable interrupt prirority                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
000786   8ed0     BSF       0xd0,0x7,0x0    RCONbits.IPEN=1;                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000788   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           /// CAN-------------------------------------------------------                   F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #ifdef USE_CAN                                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           /*                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Function: canInit                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Input:  none                                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Output: none                                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Pre-conditions: none                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Affects: Changes can registers.                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Depends: none.                                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           */                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           void canInit()                                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           {                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
00078a   0e80     MOVLW     0x80            CANCON = 0x80; //request config mode                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
00078c   6e6f     MOVWF     0x6f,0x0                                                                                        
00078e   0ee0     MOVLW     0xe0            while ((CANSTAT & 0xE0) != 0x80 ); //wait for config mode request               F:\MCP\projects\CAN\canBoot\Source\Main.c
000790   146e     ANDWF     0x6e,0x0,0x0                                                                                    
000792   0880     SUBLW     0x80                                                                                            
000794   e001     BZ        0x798                                                                                           
000796   d7fb     BRA       0x78e                                                                                           
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // BAUD AND TQS                                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000798   6a70     CLRF      0x70,0x0        BRGCON1=0;                                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // Sync_Seq = 2 x TQ = 1                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
00079a   9e70     BCF       0x70,0x7,0x0    BRGCON1bits.SJW1=0;                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
00079c   8c70     BSF       0x70,0x6,0x0    BRGCON1bits.SJW0=1;                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // Setting BRP.                                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
00079e   0e04     MOVLW     0x4             BRGCON1=BRGCON1|CAN_BRP;                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
0007a0   1070     IORWF     0x70,0x0,0x0                                                                                    
0007a2   6e70     MOVWF     0x70,0x0                                                                                        
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // Maximum PHEG1                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
0007a4   8e71     BSF       0x71,0x7,0x0    BRGCON2bits.SEG2PHTS = 1;                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // Phase_Seg1 = 2 x TQ = 1                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
0007a6   9a71     BCF       0x71,0x5,0x0    BRGCON2bits.SEG1PH2 = 0;                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
0007a8   9871     BCF       0x71,0x4,0x0    BRGCON2bits.SEG1PH1 = 0;                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
0007aa   8671     BSF       0x71,0x3,0x0    BRGCON2bits.SEG1PH0 = 1;                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // Prop_Seq = 2 x TQ = 1                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
0007ac   9471     BCF       0x71,0x2,0x0    BRGCON2bits.PRSEG2 = 0;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
0007ae   9271     BCF       0x71,0x1,0x0    BRGCON2bits.PRSEG1 = 0;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
0007b0   8071     BSF       0x71,0x0,0x0    BRGCON2bits.PRSEG0 = 1;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            //  Enableing bus wake-up                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
0007b2   9e72     BCF       0x72,0x7,0x0    BRGCON3bits.WAKDIS = 0;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // Dont use filter when wakeup                                                  F:\MCP\projects\CAN\canBoot\Source\Main.c
0007b4   9c72     BCF       0x72,0x6,0x0    BRGCON3bits.WAKFIL = 0;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // Phase_Seg2 = 2 x TQ = 1                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
0007b6   9472     BCF       0x72,0x2,0x0    BRGCON3bits.SEG2PH2 = 0;                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
0007b8   9272     BCF       0x72,0x1,0x0    BRGCON3bits.SEG2PH1 = 0;                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
0007ba   8072     BSF       0x72,0x0,0x0    BRGCON3bits.SEG2PH0 = 1;                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
0007bc   6a77     CLRF      0x77,0x0        ECANCON=0;                                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
0007be   9e77     BCF       0x77,0x7,0x0    ECANCONbits.MDSEL1 = 0;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
0007c0   8c77     BSF       0x77,0x6,0x0    ECANCONbits.MDSEL0 = 1;                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // FILTERS AND MASKS                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
0007c2   8c60     BSF       0x60,0x6,0x0    RXB0CONbits.RXM1=1;                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
0007c4   9a60     BCF       0x60,0x5,0x0    RXB0CONbits.RXM0=0;                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // INTERRUPTS                                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // Diable transmit interrupt                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
0007c6   010d     MOVLB     0xd             TXBIE = 0;                                                                      F:\MCP\projects\CAN\canBoot\Source\Main.c
0007c8   6bfc     CLRF      0xfc,0x1                                                                                        
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            //rx no interrupt                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
0007ca   6aa4     CLRF      0xa4,0x0        PIR3 = 0;                                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
0007cc   6aa3     CLRF      0xa3,0x0        PIE3 = 0;                                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            // Programmable no buffers interrupt                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
0007ce   6bfa     CLRF      0xfa,0x1        BIE0  = 0x00;                                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            //loopback mode or not                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            #ifdef CAN_LOOPBACK_MODE                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                CANCON = 0x40;//request loopback mode                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                while ((CANSTAT & 0xE0) != 0x40 );//wait for loopback mode                     F:\MCP\projects\CAN\canBoot\Source\Main.c
                                            #else                                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
0007d0   6a6f     CLRF      0x6f,0x0            CANCON = 0x00;//request normal mode                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
0007d2   0ee0     MOVLW     0xe0                while ((CANSTAT & 0xE0) != 0x00 );//wait for normal mode                       F:\MCP\projects\CAN\canBoot\Source\Main.c
0007d4   146e     ANDWF     0x6e,0x0,0x0                                                                                    
0007d6   e001     BZ        0x7da                                                                                           
0007d8   d7fc     BRA       0x7d2                                                                                           
                                            #endif                                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
0007da   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           /*                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Function: canGetPacket                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Input:  none                                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Output: none                                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Pre-conditions: a call to canISR and an packet is available and banked to RXB0 F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Affects: Calls canParse() function in main for parsing received packet.        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Depends: none.                                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           */                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           BOOL canGetPacket()                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           {                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                // Get which buffer that is ful.                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
0007dc   ae60     BTFSS     0x60,0x7,0x0             if (RXB0CONbits.RXFUL) { ECANCON=(ECANCON&0b00000)|0b10000;  }               F:\MCP\projects\CAN\canBoot\Source\Main.c
0007de   d005     BRA       0x7ea                                                                                           
0007e0   0e00     MOVLW     0x0                                                                                             
0007e2   1477     ANDWF     0x77,0x0,0x0                                                                                    
0007e4   0910     IORLW     0x10                                                                                            
0007e6   6e77     MOVWF     0x77,0x0                                                                                        
0007e8   d035     BRA       0x854               else if (RXB1CONbits.RXFUL) { ECANCON=(ECANCON&0b00000)|0b10001;  }            F:\MCP\projects\CAN\canBoot\Source\Main.c
0007ea   010f     MOVLB     0xf                                                                                             
0007ec   af50     BTFSS     0x50,0x7,0x1                                                                                    
0007ee   d005     BRA       0x7fa                                                                                           
0007f0   0e00     MOVLW     0x0                                                                                             
0007f2   1477     ANDWF     0x77,0x0,0x0                                                                                    
0007f4   0911     IORLW     0x11                                                                                            
0007f6   6e77     MOVWF     0x77,0x0                                                                                        
0007f8   d02d     BRA       0x854               else if (B0CONbits.RXFUL)   { ECANCON=(ECANCON&0b00000)|0b10010;  }             F:\MCP\projects\CAN\canBoot\Source\Main.c
0007fa   010e     MOVLB     0xe                                                                                             
0007fc   af20     BTFSS     0x20,0x7,0x1                                                                                    
0007fe   d005     BRA       0x80a                                                                                           
000800   0e00     MOVLW     0x0                                                                                             
000802   1477     ANDWF     0x77,0x0,0x0                                                                                    
000804   0912     IORLW     0x12                                                                                            
000806   6e77     MOVWF     0x77,0x0                                                                                        
000808   d025     BRA       0x854               else if (B1CONbits.RXFUL)   { ECANCON=(ECANCON&0b00000)|0b10011;  }             F:\MCP\projects\CAN\canBoot\Source\Main.c
00080a   af30     BTFSS     0x30,0x7,0x1                                                                                    
00080c   d005     BRA       0x818                                                                                           
00080e   0e00     MOVLW     0x0                                                                                             
000810   1477     ANDWF     0x77,0x0,0x0                                                                                    
000812   0913     IORLW     0x13                                                                                            
000814   6e77     MOVWF     0x77,0x0                                                                                        
000816   d01e     BRA       0x854               else if (B2CONbits.RXFUL)   { ECANCON=(ECANCON&0b00000)|0b10100;  }             F:\MCP\projects\CAN\canBoot\Source\Main.c
000818   af40     BTFSS     0x40,0x7,0x1                                                                                    
00081a   d005     BRA       0x826                                                                                           
00081c   0e00     MOVLW     0x0                                                                                             
00081e   1477     ANDWF     0x77,0x0,0x0                                                                                    
000820   0914     IORLW     0x14                                                                                            
000822   6e77     MOVWF     0x77,0x0                                                                                        
000824   d017     BRA       0x854               else if (B3CONbits.RXFUL)   { ECANCON=(ECANCON&0b00000)|0b10101;  }             F:\MCP\projects\CAN\canBoot\Source\Main.c
000826   af50     BTFSS     0x50,0x7,0x1                                                                                    
000828   d005     BRA       0x834                                                                                           
00082a   0e00     MOVLW     0x0                                                                                             
00082c   1477     ANDWF     0x77,0x0,0x0                                                                                    
00082e   0915     IORLW     0x15                                                                                            
000830   6e77     MOVWF     0x77,0x0                                                                                        
000832   d010     BRA       0x854               else if (B4CONbits.RXFUL)   { ECANCON=(ECANCON&0b00000)|0b10110;  }             F:\MCP\projects\CAN\canBoot\Source\Main.c
000834   af60     BTFSS     0x60,0x7,0x1                                                                                    
000836   d005     BRA       0x842                                                                                           
000838   0e00     MOVLW     0x0                                                                                             
00083a   1477     ANDWF     0x77,0x0,0x0                                                                                    
00083c   0916     IORLW     0x16                                                                                            
00083e   6e77     MOVWF     0x77,0x0                                                                                        
000840   d009     BRA       0x854               else if (B5CONbits.RXFUL)   { ECANCON=(ECANCON&0b00000)|0b10111;  }             F:\MCP\projects\CAN\canBoot\Source\Main.c
000842   af70     BTFSS     0x70,0x7,0x1                                                                                    
000844   d005     BRA       0x850                                                                                           
000846   0e00     MOVLW     0x0                                                                                             
000848   1477     ANDWF     0x77,0x0,0x0                                                                                    
00084a   0917     IORLW     0x17                                                                                            
00084c   6e77     MOVWF     0x77,0x0                                                                                        
00084e   d002     BRA       0x854               else return FALSE;                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
000850   0e00     MOVLW     0x0                                                                                             
000852   d083     BRA       0x95a                                                                                           
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                //RXB0SIDH 28 27 26 25 24 23 22 21                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                   //RXB0SIDL 20 19 18 xx xx xx 17 16                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                   //RXB0EIDH 15 14 13 12 11 10 09 08                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                   //RXB0EIDL 07 06 05 04 03 02 01 00                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                //funct xx xx xx xx 28 27 26 25                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                //funcc xx xx xx xx xx xx 24 23 22 21 20 19 18 17 16 15                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                //nid   xx xx 14 13 12 11 10 09                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                //sid   xx xx xx xx xx xx xx 08 07 06 05 04 03 02 01 00                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000854   0ef0     MOVLW     0xf0                    cm.funct=((RXB0SIDH & 0xF0)>>4);                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
000856   1461     ANDWF     0x61,0x0,0x0                                                                                    
000858   38e8     SWAPF     0xe8,0x0,0x0                                                                                    
00085a   0b0f     ANDLW     0xf                                                                                             
00085c   0100     MOVLB     0x0                                                                                             
00085e   6f60     MOVWF     0x60,0x1                                                                                        
000860   0e0f     MOVLW     0xf                    cm.funcc=(((WORD)(RXB0SIDH & 0x0F))<<6)+(((WORD)(RXB0SIDL & 0xE0))>>2)+(((WORD)(RXB0SIDL & 0x03))<<1)+(((WORD)(RXB0EIDH & 0x80))>>7); F:\MCP\projects\CAN\canBoot\Source\Main.c
000862   1461     ANDWF     0x61,0x0,0x0                                                                                    
000864   6e04     MOVWF     0x4,0x0                                                                                         
000866   6a05     CLRF      0x5,0x0                                                                                         
000868   0e06     MOVLW     0x6                                                                                             
00086a   90d8     BCF       0xd8,0x0,0x0                                                                                    
00086c   3604     RLCF      0x4,0x1,0x0                                                                                     
00086e   3605     RLCF      0x5,0x1,0x0                                                                                     
000870   04e8     DECF      0xe8,0x0,0x0                                                                                    
000872   e1fb     BNZ       0x86a                                                                                           
000874   0ee0     MOVLW     0xe0                                                                                            
000876   1462     ANDWF     0x62,0x0,0x0                                                                                    
000878   6e06     MOVWF     0x6,0x0                                                                                         
00087a   6a07     CLRF      0x7,0x0                                                                                         
00087c   90d8     BCF       0xd8,0x0,0x0                                                                                    
00087e   3207     RRCF      0x7,0x1,0x0                                                                                     
000880   3206     RRCF      0x6,0x1,0x0                                                                                     
000882   90d8     BCF       0xd8,0x0,0x0                                                                                    
000884   3207     RRCF      0x7,0x1,0x0                                                                                     
000886   3206     RRCF      0x6,0x1,0x0                                                                                     
000888   5004     MOVF      0x4,0x0,0x0                                                                                     
00088a   2406     ADDWF     0x6,0x0,0x0                                                                                     
00088c   6e02     MOVWF     0x2,0x0                                                                                         
00088e   5005     MOVF      0x5,0x0,0x0                                                                                     
000890   2007     ADDWFC    0x7,0x0,0x0                                                                                     
000892   6e03     MOVWF     0x3,0x0                                                                                         
000894   0e03     MOVLW     0x3                                                                                             
000896   1462     ANDWF     0x62,0x0,0x0                                                                                    
000898   6e08     MOVWF     0x8,0x0                                                                                         
00089a   6a09     CLRF      0x9,0x0                                                                                         
00089c   90d8     BCF       0xd8,0x0,0x0                                                                                    
00089e   3608     RLCF      0x8,0x1,0x0                                                                                     
0008a0   3609     RLCF      0x9,0x1,0x0                                                                                     
0008a2   5002     MOVF      0x2,0x0,0x0                                                                                     
0008a4   2408     ADDWF     0x8,0x0,0x0                                                                                     
0008a6   6e00     MOVWF     0x0,0x0                                                                                         
0008a8   5003     MOVF      0x3,0x0,0x0                                                                                     
0008aa   2009     ADDWFC    0x9,0x0,0x0                                                                                     
0008ac   6e01     MOVWF     0x1,0x0                                                                                         
0008ae   0e80     MOVLW     0x80                                                                                            
0008b0   1463     ANDWF     0x63,0x0,0x0                                                                                    
0008b2   6e0a     MOVWF     0xa,0x0                                                                                         
0008b4   6a0b     CLRF      0xb,0x0                                                                                         
0008b6   0e07     MOVLW     0x7                                                                                             
0008b8   90d8     BCF       0xd8,0x0,0x0                                                                                    
0008ba   320b     RRCF      0xb,0x1,0x0                                                                                     
0008bc   320a     RRCF      0xa,0x1,0x0                                                                                     
0008be   04e8     DECF      0xe8,0x0,0x0                                                                                    
0008c0   e1fb     BNZ       0x8b8                                                                                           
0008c2   5000     MOVF      0x0,0x0,0x0                                                                                     
0008c4   240a     ADDWF     0xa,0x0,0x0                                                                                     
0008c6   0100     MOVLB     0x0                                                                                             
0008c8   6f61     MOVWF     0x61,0x1                                                                                        
0008ca   5001     MOVF      0x1,0x0,0x0                                                                                     
0008cc   200b     ADDWFC    0xb,0x0,0x0                                                                                     
0008ce   6f62     MOVWF     0x62,0x1                                                                                        
0008d0   0e7e     MOVLW     0x7e                   cm.nid=((RXB0EIDH & 0x7E)>>1);                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
0008d2   1463     ANDWF     0x63,0x0,0x0                                                                                    
0008d4   40e8     RRNCF     0xe8,0x0,0x0                                                                                    
0008d6   0b7f     ANDLW     0x7f                                                                                            
0008d8   6f63     MOVWF     0x63,0x1                                                                                        
0008da   0e01     MOVLW     0x1                    cm.sid=(((WORD)(RXB0EIDH & 0x01))<<8)+RXB0EIDL;                          F:\MCP\projects\CAN\canBoot\Source\Main.c
0008dc   1463     ANDWF     0x63,0x0,0x0                                                                                    
0008de   6e00     MOVWF     0x0,0x0                                                                                         
0008e0   c000     MOVFF     0x0,0x1                                                                                         
0008e2   f001                                                                                                               
0008e4   6a00     CLRF      0x0,0x0                                                                                         
0008e6   5064     MOVF      0x64,0x0,0x0                                                                                    
0008e8   2400     ADDWF     0x0,0x0,0x0                                                                                     
0008ea   6f64     MOVWF     0x64,0x1                                                                                        
0008ec   0e00     MOVLW     0x0                                                                                             
0008ee   2001     ADDWFC    0x1,0x0,0x0                                                                                     
0008f0   6f65     MOVWF     0x65,0x1                                                                                        
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                // Data length                                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
0008f2   5065     MOVF      0x65,0x0,0x0        cm.data_length=(RXB0DLCbits.DLC3<<3)+(RXB0DLCbits.DLC2<<2)+(RXB0DLCbits.DLC1<<1)+RXB0DLCbits.DLC0; F:\MCP\projects\CAN\canBoot\Source\Main.c
0008f4   0b01     ANDLW     0x1                                                                                             
0008f6   6e02     MOVWF     0x2,0x0                                                                                         
0008f8   5065     MOVF      0x65,0x0,0x0                                                                                    
0008fa   0b02     ANDLW     0x2                                                                                             
0008fc   e001     BZ        0x900                                                                                           
0008fe   0e01     MOVLW     0x1                                                                                             
000900   24e8     ADDWF     0xe8,0x0,0x0                                                                                    
000902   6e01     MOVWF     0x1,0x0                                                                                         
000904   5065     MOVF      0x65,0x0,0x0                                                                                    
000906   0b04     ANDLW     0x4                                                                                             
000908   e001     BZ        0x90c                                                                                           
00090a   0e01     MOVLW     0x1                                                                                             
00090c   0d04     MULLW     0x4                                                                                             
00090e   cff3     MOVFF     0xff3,0x0                                                                                       
000910   f000                                                                                                               
000912   5065     MOVF      0x65,0x0,0x0                                                                                    
000914   0b08     ANDLW     0x8                                                                                             
000916   e001     BZ        0x91a                                                                                           
000918   0e01     MOVLW     0x1                                                                                             
00091a   0d08     MULLW     0x8                                                                                             
00091c   50f3     MOVF      0xf3,0x0,0x0                                                                                    
00091e   2400     ADDWF     0x0,0x0,0x0                                                                                     
000920   2401     ADDWF     0x1,0x0,0x0                                                                                     
000922   2402     ADDWF     0x2,0x0,0x0                                                                                     
000924   6f66     MOVWF     0x66,0x1                                                                                        
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                // Remote request                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
000926   5065     MOVF      0x65,0x0,0x0        cm.remote_request=(RXB0DLCbits.RXRTR==0?FALSE:TRUE);                           F:\MCP\projects\CAN\canBoot\Source\Main.c
000928   0b40     ANDLW     0x40                                                                                            
00092a   e102     BNZ       0x930                                                                                           
00092c   0e00     MOVLW     0x0                                                                                             
00092e   d001     BRA       0x932                                                                                           
000930   0e01     MOVLW     0x1                                                                                             
000932   6f67     MOVWF     0x67,0x1                                                                                        
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                // Data one bye one, for speed                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
000934   cf66     MOVFF     0xf66,0x68          cm.data[0]=RXB0D0;  cm.data[1]=RXB0D1;                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
000936   f068                                                                                                               
000938   cf67     MOVFF     0xf67,0x69                                                                                      
00093a   f069                                                                                                               
00093c   cf68     MOVFF     0xf68,0x6a          cm.data[2]=RXB0D2;  cm.data[3]=RXB0D3;                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
00093e   f06a                                                                                                               
000940   cf69     MOVFF     0xf69,0x6b                                                                                      
000942   f06b                                                                                                               
000944   cf6a     MOVFF     0xf6a,0x6c          cm.data[4]=RXB0D4;  cm.data[5]=RXB0D5;                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
000946   f06c                                                                                                               
000948   cf6b     MOVFF     0xf6b,0x6d                                                                                      
00094a   f06d                                                                                                               
00094c   cf6c     MOVFF     0xf6c,0x6e          cm.data[6]=RXB0D6;  cm.data[7]=RXB0D7;                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
00094e   f06e                                                                                                               
000950   cf6d     MOVFF     0xf6d,0x6f                                                                                      
000952   f06f                                                                                                               
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                // Clear ful status                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000954   9e60     BCF       0x60,0x7,0x0        RXB0CONbits.RXFUL=0;                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000956   0e01     MOVLW     0x1                 return TRUE;                                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
000958   d000     BRA       0x95a                                                                                           
00095a   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           /*                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Function: canSendMessage                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Input:  CAN_MESSAGE to send                                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Output: True if packet scheduled sucess, false otherwise.                      F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Pre-conditions: canInit                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Affects: ..                                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           *    Depends: ..                                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           */                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
00095c   cfd9     MOVFF     0xfd9,0xfe6    BOOL canSendMessage(CAN_PROTO_MESSAGE cm,CAN_PRIORITY prio)                      F:\MCP\projects\CAN\canBoot\Source\Main.c
00095e   ffe6                                                                                                               
000960   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
000962   ffd9                                                                                                               
                                           {                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000964   010f     MOVLB     0xf             if ( TXB0CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00011; }           F:\MCP\projects\CAN\canBoot\Source\Main.c
000966   b740     BTFSC     0x40,0x3,0x1                                                                                    
000968   d004     BRA       0x972                                                                                           
00096a   0e00     MOVLW     0x0                                                                                             
00096c   1477     ANDWF     0x77,0x0,0x0                                                                                    
00096e   0903     IORLW     0x3                                                                                             
000970   6e77     MOVWF     0x77,0x0                                                                                        
000972   010f     MOVLB     0xf             if ( TXB1CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00100; }           F:\MCP\projects\CAN\canBoot\Source\Main.c
000974   b730     BTFSC     0x30,0x3,0x1                                                                                    
000976   d004     BRA       0x980                                                                                           
000978   0e00     MOVLW     0x0                                                                                             
00097a   1477     ANDWF     0x77,0x0,0x0                                                                                    
00097c   0904     IORLW     0x4                                                                                             
00097e   6e77     MOVWF     0x77,0x0                                                                                        
000980   010f     MOVLB     0xf             if ( TXB2CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00101; }           F:\MCP\projects\CAN\canBoot\Source\Main.c
000982   b720     BTFSC     0x20,0x3,0x1                                                                                    
000984   d005     BRA       0x990                                                                                           
000986   0e00     MOVLW     0x0                                                                                             
000988   1477     ANDWF     0x77,0x0,0x0                                                                                    
00098a   0905     IORLW     0x5                                                                                             
00098c   6e77     MOVWF     0x77,0x0                                                                                        
                                            // None of the transmit buffers were empty.                                     F:\MCP\projects\CAN\canBoot\Source\Main.c
00098e   d002     BRA       0x994           else { return FALSE;}                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
000990   0e00     MOVLW     0x0                                                                                             
000992   d0b5     BRA       0xafe                                                                                           
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000994   0eee     MOVLW     0xee            if (prio<0 || prio>3) prio = 0;                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
000996   cfdb     MOVFF     0xfdb,0x0                                                                                       
000998   f000                                                                                                               
00099a   3400     RLCF      0x0,0x0,0x0                                                                                     
00099c   e20e     BC        0x9ba                                                                                           
00099e   0eee     MOVLW     0xee                                                                                            
0009a0   cfdb     MOVFF     0xfdb,0x1                                                                                       
0009a2   f001                                                                                                               
0009a4   0e03     MOVLW     0x3                                                                                             
0009a6   6ee7     MOVWF     0xe7,0x0                                                                                        
0009a8   1801     XORWF     0x1,0x0,0x0                                                                                     
0009aa   aee8     BTFSS     0xe8,0x7,0x0                                                                                    
0009ac   d002     BRA       0x9b2                                                                                           
0009ae   3401     RLCF      0x1,0x0,0x0                                                                                     
0009b0   d003     BRA       0x9b8                                                                                           
0009b2   50e7     MOVF      0xe7,0x0,0x0                                                                                    
0009b4   80d8     BSF       0xd8,0x0,0x0                                                                                    
0009b6   5401     SUBFWB    0x1,0x0,0x0                                                                                     
0009b8   e202     BC        0x9be                                                                                           
0009ba   0eee     MOVLW     0xee                                                                                            
0009bc   6adb     CLRF      0xdb,0x0                                                                                        
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                //RXB0SIDH 28 27 26 25 24 23 22 21                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                   //RXB0SIDL 20 19 18 xx xx xx 17 16                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                   //RXB0EIDH 15 14 13 12 11 10 09 08                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                   //RXB0EIDL 07 06 05 04 03 02 01 00                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                //funct xx xx xx xx 28 27 26 25                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                //funcc xx xx xx xx xx xx 24 23 22 21 20 19 18 17 16 15                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                //nid   xx xx 14 13 12 11 10 09                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                //sid   xx xx xx xx xx xx xx 08 07 06 05 04 03 02 01 00                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
0009be   0ef0     MOVLW     0xf0                RXB0SIDH = (BYTE)((cm.funct & 0x0F)<<4)+(BYTE)((cm.funcc & 0x03C0)>>6);        F:\MCP\projects\CAN\canBoot\Source\Main.c
0009c0   cfdb     MOVFF     0xfdb,0x0                                                                                       
0009c2   f000                                                                                                               
0009c4   0ef1     MOVLW     0xf1                                                                                            
0009c6   cfdb     MOVFF     0xfdb,0x1                                                                                       
0009c8   f001                                                                                                               
0009ca   0ec0     MOVLW     0xc0                                                                                            
0009cc   1600     ANDWF     0x0,0x1,0x0                                                                                     
0009ce   0e03     MOVLW     0x3                                                                                             
0009d0   1601     ANDWF     0x1,0x1,0x0                                                                                     
0009d2   0e06     MOVLW     0x6                                                                                             
0009d4   90d8     BCF       0xd8,0x0,0x0                                                                                    
0009d6   3201     RRCF      0x1,0x1,0x0                                                                                     
0009d8   3200     RRCF      0x0,0x1,0x0                                                                                     
0009da   04e8     DECF      0xe8,0x0,0x0                                                                                    
0009dc   e1fb     BNZ       0x9d4                                                                                           
0009de   0eef     MOVLW     0xef                                                                                            
0009e0   50db     MOVF      0xdb,0x0,0x0                                                                                    
0009e2   0b0f     ANDLW     0xf                                                                                             
0009e4   0d10     MULLW     0x10                                                                                            
0009e6   50f3     MOVF      0xf3,0x0,0x0                                                                                    
0009e8   2400     ADDWF     0x0,0x0,0x0                                                                                     
0009ea   6e61     MOVWF     0x61,0x0                                                                                        
0009ec   0e06     MOVLW     0x6                 RXB0SIDL = (BYTE)((cm.funcc & 0x003F)<<2)+(BYTE)((cm.funcc & 0x0006)>>1);      F:\MCP\projects\CAN\canBoot\Source\Main.c
0009ee   6ee7     MOVWF     0xe7,0x0                                                                                        
0009f0   0ef0     MOVLW     0xf0                                                                                            
0009f2   cfdb     MOVFF     0xfdb,0x2                                                                                       
0009f4   f002                                                                                                               
0009f6   0ef1     MOVLW     0xf1                                                                                            
0009f8   cfdb     MOVFF     0xfdb,0x3                                                                                       
0009fa   f003                                                                                                               
0009fc   50e7     MOVF      0xe7,0x0,0x0                                                                                    
0009fe   1602     ANDWF     0x2,0x1,0x0                                                                                     
000a00   6a03     CLRF      0x3,0x0                                                                                         
000a02   90d8     BCF       0xd8,0x0,0x0                                                                                    
000a04   3203     RRCF      0x3,0x1,0x0                                                                                     
000a06   3202     RRCF      0x2,0x1,0x0                                                                                     
000a08   0e3f     MOVLW     0x3f                                                                                            
000a0a   6ee7     MOVWF     0xe7,0x0                                                                                        
000a0c   0ef0     MOVLW     0xf0                                                                                            
000a0e   cfdb     MOVFF     0xfdb,0x0                                                                                       
000a10   f000                                                                                                               
000a12   0ef1     MOVLW     0xf1                                                                                            
000a14   cfdb     MOVFF     0xfdb,0x1                                                                                       
000a16   f001                                                                                                               
000a18   50e7     MOVF      0xe7,0x0,0x0                                                                                    
000a1a   1600     ANDWF     0x0,0x1,0x0                                                                                     
000a1c   6a01     CLRF      0x1,0x0                                                                                         
000a1e   90d8     BCF       0xd8,0x0,0x0                                                                                    
000a20   3600     RLCF      0x0,0x1,0x0                                                                                     
000a22   3601     RLCF      0x1,0x1,0x0                                                                                     
000a24   90d8     BCF       0xd8,0x0,0x0                                                                                    
000a26   3600     RLCF      0x0,0x1,0x0                                                                                     
000a28   3601     RLCF      0x1,0x1,0x0                                                                                     
000a2a   5000     MOVF      0x0,0x0,0x0                                                                                     
000a2c   2402     ADDWF     0x2,0x0,0x0                                                                                     
000a2e   6e62     MOVWF     0x62,0x0                                                                                        
000a30   0ef3     MOVLW     0xf3                RXB0EIDH = (BYTE)((cm.funcc & 0x0001)<<7)+(BYTE)((cm.nid & 0x3F)<<1)+(BYTE)((cm.sid & 0x0100)>>8); F:\MCP\projects\CAN\canBoot\Source\Main.c
000a32   cfdb     MOVFF     0xfdb,0x2                                                                                       
000a34   f002                                                                                                               
000a36   0ef4     MOVLW     0xf4                                                                                            
000a38   cfdb     MOVFF     0xfdb,0x3                                                                                       
000a3a   f003                                                                                                               
000a3c   0e00     MOVLW     0x0                                                                                             
000a3e   1602     ANDWF     0x2,0x1,0x0                                                                                     
000a40   0e01     MOVLW     0x1                                                                                             
000a42   1603     ANDWF     0x3,0x1,0x0                                                                                     
000a44   c003     MOVFF     0x3,0x2                                                                                         
000a46   f002                                                                                                               
000a48   6a03     CLRF      0x3,0x0                                                                                         
000a4a   0e01     MOVLW     0x1                                                                                             
000a4c   6ee7     MOVWF     0xe7,0x0                                                                                        
000a4e   0ef0     MOVLW     0xf0                                                                                            
000a50   cfdb     MOVFF     0xfdb,0x0                                                                                       
000a52   f000                                                                                                               
000a54   0ef1     MOVLW     0xf1                                                                                            
000a56   cfdb     MOVFF     0xfdb,0x1                                                                                       
000a58   f001                                                                                                               
000a5a   50e7     MOVF      0xe7,0x0,0x0                                                                                    
000a5c   1600     ANDWF     0x0,0x1,0x0                                                                                     
000a5e   6a01     CLRF      0x1,0x0                                                                                         
000a60   0e07     MOVLW     0x7                                                                                             
000a62   90d8     BCF       0xd8,0x0,0x0                                                                                    
000a64   3600     RLCF      0x0,0x1,0x0                                                                                     
000a66   3601     RLCF      0x1,0x1,0x0                                                                                     
000a68   04e8     DECF      0xe8,0x0,0x0                                                                                    
000a6a   e1fb     BNZ       0xa62                                                                                           
000a6c   0ef2     MOVLW     0xf2                                                                                            
000a6e   50db     MOVF      0xdb,0x0,0x0                                                                                    
000a70   0b3f     ANDLW     0x3f                                                                                            
000a72   24e8     ADDWF     0xe8,0x0,0x0                                                                                    
000a74   2400     ADDWF     0x0,0x0,0x0                                                                                     
000a76   2402     ADDWF     0x2,0x0,0x0                                                                                     
000a78   6e63     MOVWF     0x63,0x0                                                                                        
000a7a   0eff     MOVLW     0xff                RXB0EIDL = (BYTE)((cm.sid & 0x00FF));                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
000a7c   6ee7     MOVWF     0xe7,0x0                                                                                        
000a7e   0ef3     MOVLW     0xf3                                                                                            
000a80   cfdb     MOVFF     0xfdb,0x0                                                                                       
000a82   f000                                                                                                               
000a84   0ef4     MOVLW     0xf4                                                                                            
000a86   cfdb     MOVFF     0xfdb,0x1                                                                                       
000a88   f001                                                                                                               
000a8a   50e7     MOVF      0xe7,0x0,0x0                                                                                    
000a8c   1600     ANDWF     0x0,0x1,0x0                                                                                     
000a8e   6a01     CLRF      0x1,0x0                                                                                         
000a90   5000     MOVF      0x0,0x0,0x0                                                                                     
000a92   6e64     MOVWF     0x64,0x0                                                                                        
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                // Data length                                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
000a94   6a65     CLRF      0x65,0x0            RXB0DLC = 0;                                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
000a96   0ef5     MOVLW     0xf5                if (cm.data_length>8) RXB0DLC=8; else RXB0DLC=cm.data_length;                  F:\MCP\projects\CAN\canBoot\Source\Main.c
000a98   50db     MOVF      0xdb,0x0,0x0                                                                                    
000a9a   0808     SUBLW     0x8                                                                                             
000a9c   e203     BC        0xaa4                                                                                           
000a9e   0e08     MOVLW     0x8                                                                                             
000aa0   6e65     MOVWF     0x65,0x0                                                                                        
000aa2   d003     BRA       0xaaa                                                                                           
000aa4   0ef5     MOVLW     0xf5                                                                                            
000aa6   50db     MOVF      0xdb,0x0,0x0                                                                                    
000aa8   6e65     MOVWF     0x65,0x0                                                                                        
                                                                                                                               F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                // Remote request                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
000aaa   0ef6     MOVLW     0xf6                if (cm.remote_request==TRUE)                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
000aac   04db     DECF      0xdb,0x0,0x0                                                                                    
000aae   e102     BNZ       0xab4                                                                                           
                                                {                                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                    _asm                                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
000ab0   8c65     BSF       0x65,0x6,0x0                bsf RXB0DLC, 6, 0                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                    _endasm                                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                }                                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
000ab2   d001     BRA       0xab6               else                                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                {                                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                    _asm                                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
000ab4   9c65     BCF       0x65,0x6,0x0                bcf RXB0DLC, 6, 0                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                    _endasm                                                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                }                                                                              F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                // Data one bye one, for speed                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
000ab6   0ef7     MOVLW     0xf7                RXB0D0=cm.data[0];  RXB0D1=cm.data[1];                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
000ab8   50db     MOVF      0xdb,0x0,0x0                                                                                    
000aba   6e66     MOVWF     0x66,0x0                                                                                        
000abc   0ef8     MOVLW     0xf8                                                                                            
000abe   50db     MOVF      0xdb,0x0,0x0                                                                                    
000ac0   6e67     MOVWF     0x67,0x0                                                                                        
000ac2   0ef9     MOVLW     0xf9                RXB0D2=cm.data[2];  RXB0D3=cm.data[3];                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
000ac4   50db     MOVF      0xdb,0x0,0x0                                                                                    
000ac6   6e68     MOVWF     0x68,0x0                                                                                        
000ac8   0efa     MOVLW     0xfa                                                                                            
000aca   50db     MOVF      0xdb,0x0,0x0                                                                                    
000acc   6e69     MOVWF     0x69,0x0                                                                                        
000ace   0efb     MOVLW     0xfb                RXB0D4=cm.data[4];  RXB0D5=cm.data[5];                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
000ad0   50db     MOVF      0xdb,0x0,0x0                                                                                    
000ad2   6e6a     MOVWF     0x6a,0x0                                                                                        
000ad4   0efc     MOVLW     0xfc                                                                                            
000ad6   50db     MOVF      0xdb,0x0,0x0                                                                                    
000ad8   6e6b     MOVWF     0x6b,0x0                                                                                        
000ada   0efd     MOVLW     0xfd                RXB0D6=cm.data[6];  RXB0D7=cm.data[7];                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
000adc   50db     MOVF      0xdb,0x0,0x0                                                                                    
000ade   6e6c     MOVWF     0x6c,0x0                                                                                        
000ae0   0efe     MOVLW     0xfe                                                                                            
000ae2   50db     MOVF      0xdb,0x0,0x0                                                                                    
000ae4   6e6d     MOVWF     0x6d,0x0                                                                                        
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                // set extended or not                                                         F:\MCP\projects\CAN\canBoot\Source\Main.c
000ae6   8662     BSF       0x62,0x3,0x0        RXB0SIDLbits.EXID=1;                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                // Priority                                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
000ae8   0eee     MOVLW     0xee                RXB0CON = (RXB0CON & 0b11111100) | prio;                                       F:\MCP\projects\CAN\canBoot\Source\Main.c
000aea   cfdb     MOVFF     0xfdb,0xfe6                                                                                     
000aec   ffe6                                                                                                               
000aee   0efc     MOVLW     0xfc                                                                                            
000af0   1460     ANDWF     0x60,0x0,0x0                                                                                    
000af2   52e5     MOVF      0xe5,0x1,0x0                                                                                    
000af4   10e7     IORWF     0xe7,0x0,0x0                                                                                    
000af6   6e60     MOVWF     0x60,0x0                                                                                        
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                // mark as redy to transmit                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                _asm                                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
000af8   8660     BSF       0x60,0x3,0x0            bsf RXB0CON, 3, 0                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                _endasm                                                                        F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000afa   0e01     MOVLW     0x1                 return TRUE;                                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
000afc   d000     BRA       0xafe                                                                                           
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
000afe   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
000b00   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
000b02   ffd9                                                                                                               
000b04   0012     RETURN    0x0                                                                                             
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #endif //USE_CAN                                                                 F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           void TBLRD_Func()                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           {                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           _asm                                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
000b06   0008     TBLRD                     TBLRD                                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           _endasm                                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
000b08   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           void TBLWT_Func()                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           {                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           _asm                                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
000b0a   000c     TBLWT                     TBLWT                                                                           F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           _endasm                                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
000b0c   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           void TBLWTPOSTINC_Func (void){                                                   F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           _asm                                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
000b0e   000d     TBLWTPOSTINC              TBLWTPOSTINC                                                                    F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           _endasm                                                                          F:\MCP\projects\CAN\canBoot\Source\Main.c
000b10   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           DWORD tickGet()                                                                  F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           {                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
000b12   c0b6     MOVFF     0xb6,0x10       return tickCounter;                                                             F:\MCP\projects\CAN\canBoot\Source\Main.c
000b14   f010                                                                                                               
000b16   c0b7     MOVFF     0xb7,0x11                                                                                       
000b18   f011                                                                                                               
000b1a   c0b8     MOVFF     0xb8,0x12                                                                                       
000b1c   f012                                                                                                               
000b1e   c0b9     MOVFF     0xb9,0x13                                                                                       
000b20   f013                                                                                                               
000b22   d000     BRA       0xb24                                                                                           
000b24   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                                                                                                            F:\MCP\projects\CAN\canBoot\Source\Main.c
                                           #pragma code user = RM_RESET_VECTOR                                              F:\MCP\projects\CAN\canBoot\Source\Main.c