gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 1 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00001 ;-------------------------------------------------------- 00002 ; File Created by SDCC : free open source ANSI-C Compiler 00003 ; Version 2.9.7 #5883 (Jul 21 2010) (CYGWIN) 00004 ; This file was generated Thu Dec 30 17:14:06 2010 00005 ;-------------------------------------------------------- 00006 ; PIC16 port for the Microchip 16-bit core micros 00007 ;-------------------------------------------------------- 00008 list p=18f2680 00009 00010 radix dec 00011 00012 ;-------------------------------------------------------- 00013 ; public variables in this module 00014 ;-------------------------------------------------------- 00015 global _CAN_status_ptr 00016 global _pt 00017 global _ui 00018 global _CAN_init 00019 global _CAN_recv 00020 global _CAN_send 00021 global _CAN_setFilters 00022 global _CAN_status1 00023 global _CAN_runOnce 00024 00025 ;-------------------------------------------------------- 00026 ; extern variables in this module 00027 ;-------------------------------------------------------- 00028 extern __gptrput2 00029 extern __gptrget1 00030 extern __gptrget2 00031 extern _RXF6SIDHbits 00032 extern _RXF6SIDLbits 00033 extern _RXF6EIDHbits 00034 extern _RXF6EIDLbits 00035 extern _RXF7SIDHbits 00036 extern _RXF7SIDLbits 00037 extern _RXF7EIDHbits 00038 extern _RXF7EIDLbits 00039 extern _RXF8SIDHbits 00040 extern _RXF8SIDLbits 00041 extern _RXF8EIDHbits 00042 extern _RXF8EIDLbits 00043 extern _RXF9SIDHbits 00044 extern _RXF9SIDLbits 00045 extern _RXF9EIDHbits 00046 extern _RXF9EIDLbits 00047 extern _RXF10SIDHbits 00048 extern _RXF10SIDLbits 00049 extern _RXF10EIDHbits 00050 extern _RXF10EIDLbits 00051 extern _RXF11SIDHbits 00052 extern _RXF11SIDLbits 00053 extern _RXF11EIDHbits 00054 extern _RXF11EIDLbits gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 2 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00055 extern _RXF12SIDHbits 00056 extern _RXF12SIDLbits 00057 extern _RXF12EIDHbits 00058 extern _RXF12EIDLbits 00059 extern _RXF13SIDHbits 00060 extern _RXF13SIDLbits 00061 extern _RXF13EIDHbits 00062 extern _RXF13EIDLbits 00063 extern _RXF14SIDHbits 00064 extern _RXF14SIDLbits 00065 extern _RXF14EIDHbits 00066 extern _RXF14EIDLbits 00067 extern _RXF15SIDHbits 00068 extern _RXF15SIDLbits 00069 extern _RXF15EIDHbits 00070 extern _RXF15EIDLbits 00071 extern _RXFCON0bits 00072 extern _RXFCON1bits 00073 extern _SDFLCbits 00074 extern _RXFBCON0bits 00075 extern _RXFBCON1bits 00076 extern _RXFBCON2bits 00077 extern _RXFBCON3bits 00078 extern _RXFBCON4bits 00079 extern _RXFBCON5bits 00080 extern _RXFBCON6bits 00081 extern _RXFBCON7bits 00082 extern _MSEL0bits 00083 extern _MSEL1bits 00084 extern _MSEL2bits 00085 extern _MSEL3bits 00086 extern _BSEL0bits 00087 extern _BIE0bits 00088 extern _TXBIEbits 00089 extern _B0CONbits 00090 extern _B0SIDHbits 00091 extern _B0SIDLbits 00092 extern _B0EIDHbits 00093 extern _B0EIDLbits 00094 extern _B0DLCbits 00095 extern _B0D0bits 00096 extern _B0D1bits 00097 extern _B0D2bits 00098 extern _B0D3bits 00099 extern _B0D4bits 00100 extern _B0D5bits 00101 extern _B0D6bits 00102 extern _B0D7bits 00103 extern _CANSTAT_RO9bits 00104 extern _CANCON_RO9bits 00105 extern _B1CONbits 00106 extern _B1SIDHbits 00107 extern _B1SIDLbits 00108 extern _B1EIDHbits gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 3 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00109 extern _B1EIDLbits 00110 extern _B1DLCbits 00111 extern _B1D0bits 00112 extern _B1D1bits 00113 extern _B1D2bits 00114 extern _B1D3bits 00115 extern _B1D4bits 00116 extern _B1D5bits 00117 extern _B1D6bits 00118 extern _B1D7bits 00119 extern _CANSTAT_RO8bits 00120 extern _CANCON_RO8bits 00121 extern _B2CONbits 00122 extern _B2SIDHbits 00123 extern _B2SIDLbits 00124 extern _B2EIDHbits 00125 extern _B2EIDLbits 00126 extern _B2DLCbits 00127 extern _B2D0bits 00128 extern _B2D1bits 00129 extern _B2D2bits 00130 extern _B2D3bits 00131 extern _B2D4bits 00132 extern _B2D5bits 00133 extern _B2D6bits 00134 extern _B2D7bits 00135 extern _CANSTAT_RO7bits 00136 extern _CANCON_RO7bits 00137 extern _B3CONbits 00138 extern _B3SIDHbits 00139 extern _B3SIDLbits 00140 extern _B3EIDHbits 00141 extern _B3EIDLbits 00142 extern _B3DLCbits 00143 extern _B3D0bits 00144 extern _B3D1bits 00145 extern _B3D2bits 00146 extern _B3D3bits 00147 extern _B3D4bits 00148 extern _B3D5bits 00149 extern _B3D6bits 00150 extern _B3D7bits 00151 extern _CANSTAT_RO6bits 00152 extern _CANCON_RO6bits 00153 extern _B4CONbits 00154 extern _B4SIDHbits 00155 extern _B4SIDLbits 00156 extern _B4EIDHbits 00157 extern _B4EIDLbits 00158 extern _B4DLCbits 00159 extern _B4D0bits 00160 extern _B4D1bits 00161 extern _B4D2bits 00162 extern _B4D3bits gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 4 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00163 extern _B4D4bits 00164 extern _B4D5bits 00165 extern _B4D6bits 00166 extern _B4D7bits 00167 extern _CANSTAT_RO5bits 00168 extern _CANCON_RO5bits 00169 extern _B5CONbits 00170 extern _B5SIDHbits 00171 extern _B5SIDLbits 00172 extern _B5EIDHbits 00173 extern _B5EIDLbits 00174 extern _B5DLCbits 00175 extern _B5D0bits 00176 extern _B5D1bits 00177 extern _B5D2bits 00178 extern _B5D3bits 00179 extern _B5D4bits 00180 extern _B5D5bits 00181 extern _B5D6bits 00182 extern _B5D7bits 00183 extern _CANSTAT_RO4bits 00184 extern _CANCON_RO4bits 00185 extern _RXF0SIDHbits 00186 extern _RXF0SIDLbits 00187 extern _RXF0EIDHbits 00188 extern _RXF0EIDLbits 00189 extern _RXF1SIDHbits 00190 extern _RXF1SIDLbits 00191 extern _RXF1EIDHbits 00192 extern _RXF1EIDLbits 00193 extern _RXF2SIDHbits 00194 extern _RXF2SIDLbits 00195 extern _RXF2EIDHbits 00196 extern _RXF2EIDLbits 00197 extern _RXF3SIDHbits 00198 extern _RXF3SIDLbits 00199 extern _RXF3EIDHbits 00200 extern _RXF3EIDLbits 00201 extern _RXF4SIDHbits 00202 extern _RXF4SIDLbits 00203 extern _RXF4EIDHbits 00204 extern _RXF4EIDLbits 00205 extern _RXF5SIDHbits 00206 extern _RXF5SIDLbits 00207 extern _RXF5EIDHbits 00208 extern _RXF5EIDLbits 00209 extern _RXM0SIDHbits 00210 extern _RXM0SIDLbits 00211 extern _RXM0EIDHbits 00212 extern _RXM0EIDLbits 00213 extern _RXM1SIDHbits 00214 extern _RXM1SIDLbits 00215 extern _RXM1EIDHbits 00216 extern _RXM1EIDLbits gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 5 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00217 extern _TXB2CONbits 00218 extern _TXB2SIDHbits 00219 extern _TXB2SIDLbits 00220 extern _TXB2EIDHbits 00221 extern _TXB2EIDLbits 00222 extern _TXB2DLCbits 00223 extern _TXB2D0bits 00224 extern _TXB2D1bits 00225 extern _TXB2D2bits 00226 extern _TXB2D3bits 00227 extern _TXB2D4bits 00228 extern _TXB2D5bits 00229 extern _TXB2D6bits 00230 extern _TXB2D7bits 00231 extern _CANSTAT_RO3bits 00232 extern _CANCON_RO3bits 00233 extern _TXB1CONbits 00234 extern _TXB1SIDHbits 00235 extern _TXB1SIDLbits 00236 extern _TXB1EIDHbits 00237 extern _TXB1EIDLbits 00238 extern _TXB1DLCbits 00239 extern _TXB1D0bits 00240 extern _TXB1D1bits 00241 extern _TXB1D2bits 00242 extern _TXB1D3bits 00243 extern _TXB1D4bits 00244 extern _TXB1D5bits 00245 extern _TXB1D6bits 00246 extern _TXB1D7bits 00247 extern _CANSTAT_RO2bits 00248 extern _CANCON_RO2bits 00249 extern _TXB0CONbits 00250 extern _TXB0SIDHbits 00251 extern _TXB0SIDLbits 00252 extern _TXB0EIDHbits 00253 extern _TXB0EIDLbits 00254 extern _TXB0DLCbits 00255 extern _TXB0D0bits 00256 extern _TXB0D1bits 00257 extern _TXB0D2bits 00258 extern _TXB0D3bits 00259 extern _TXB0D4bits 00260 extern _TXB0D5bits 00261 extern _TXB0D6bits 00262 extern _TXB0D7bits 00263 extern _CANSTAT_RO1bits 00264 extern _CANCON_RO1bits 00265 extern _RXB1CONbits 00266 extern _RXB1SIDHbits 00267 extern _RXB1SIDLbits 00268 extern _RXB1EIDHbits 00269 extern _RXB1EIDLbits 00270 extern _RXB1DLCbits gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 6 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00271 extern _RXB1D0bits 00272 extern _RXB1D1bits 00273 extern _RXB1D2bits 00274 extern _RXB1D3bits 00275 extern _RXB1D4bits 00276 extern _RXB1D5bits 00277 extern _RXB1D6bits 00278 extern _RXB1D7bits 00279 extern _CANSTAT_RO0bits 00280 extern _CANCON_RO0bits 00281 extern _RXB0CONbits 00282 extern _RXB0SIDHbits 00283 extern _RXB0SIDLbits 00284 extern _RXB0EIDHbits 00285 extern _RXB0EIDLbits 00286 extern _RXB0DLCbits 00287 extern _RXB0D0bits 00288 extern _RXB0D1bits 00289 extern _RXB0D2bits 00290 extern _RXB0D3bits 00291 extern _RXB0D4bits 00292 extern _RXB0D5bits 00293 extern _RXB0D6bits 00294 extern _RXB0D7bits 00295 extern _CANSTATbits 00296 extern _CANCONbits 00297 extern _BRGCON1bits 00298 extern _BRGCON2bits 00299 extern _BRGCON3bits 00300 extern _CIOCONbits 00301 extern _COMSTATbits 00302 extern _RXERRCNTbits 00303 extern _TXERRCNTbits 00304 extern _ECANCONbits 00305 extern _PORTAbits 00306 extern _PORTBbits 00307 extern _PORTCbits 00308 extern _LATAbits 00309 extern _LATBbits 00310 extern _LATCbits 00311 extern _DDRAbits 00312 extern _TRISAbits 00313 extern _DDRBbits 00314 extern _TRISBbits 00315 extern _DDRCbits 00316 extern _TRISCbits 00317 extern _OSCTUNEbits 00318 extern _PIE1bits 00319 extern _PIR1bits 00320 extern _IPR1bits 00321 extern _PIE2bits 00322 extern _PIR2bits 00323 extern _IPR2bits 00324 extern _PIE3bits gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 7 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00325 extern _PIR3bits 00326 extern _IPR3bits 00327 extern _EECON1bits 00328 extern _RCSTAbits 00329 extern _TXSTAbits 00330 extern _T3CONbits 00331 extern _BAUDCONbits 00332 extern _CCP1CONbits 00333 extern _ADCON2bits 00334 extern _ADCON1bits 00335 extern _ADCON0bits 00336 extern _SSPCON2bits 00337 extern _SSPCON1bits 00338 extern _SSPSTATbits 00339 extern _T2CONbits 00340 extern _T1CONbits 00341 extern _RCONbits 00342 extern _WDTCONbits 00343 extern _HLVDCONbits 00344 extern _LVDCONbits 00345 extern _OSCCONbits 00346 extern _T0CONbits 00347 extern _STATUSbits 00348 extern _INTCON3bits 00349 extern _INTCON2bits 00350 extern _INTCONbits 00351 extern _STKPTRbits 00352 extern __ECANRxFilterHitInfo 00353 extern _RXF6SIDH 00354 extern _RXF6SIDL 00355 extern _RXF6EIDH 00356 extern _RXF6EIDL 00357 extern _RXF7SIDH 00358 extern _RXF7SIDL 00359 extern _RXF7EIDH 00360 extern _RXF7EIDL 00361 extern _RXF8SIDH 00362 extern _RXF8SIDL 00363 extern _RXF8EIDH 00364 extern _RXF8EIDL 00365 extern _RXF9SIDH 00366 extern _RXF9SIDL 00367 extern _RXF9EIDH 00368 extern _RXF9EIDL 00369 extern _RXF10SIDH 00370 extern _RXF10SIDL 00371 extern _RXF10EIDH 00372 extern _RXF10EIDL 00373 extern _RXF11SIDH 00374 extern _RXF11SIDL 00375 extern _RXF11EIDH 00376 extern _RXF11EIDL 00377 extern _RXF12SIDH 00378 extern _RXF12SIDL gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 8 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00379 extern _RXF12EIDH 00380 extern _RXF12EIDL 00381 extern _RXF13SIDH 00382 extern _RXF13SIDL 00383 extern _RXF13EIDH 00384 extern _RXF13EIDL 00385 extern _RXF14SIDH 00386 extern _RXF14SIDL 00387 extern _RXF14EIDH 00388 extern _RXF14EIDL 00389 extern _RXF15SIDH 00390 extern _RXF15SIDL 00391 extern _RXF15EIDH 00392 extern _RXF15EIDL 00393 extern _RXFCON0 00394 extern _RXFCON1 00395 extern _SDFLC 00396 extern _RXFBCON0 00397 extern _RXFBCON1 00398 extern _RXFBCON2 00399 extern _RXFBCON3 00400 extern _RXFBCON4 00401 extern _RXFBCON5 00402 extern _RXFBCON6 00403 extern _RXFBCON7 00404 extern _MSEL0 00405 extern _MSEL1 00406 extern _MSEL2 00407 extern _MSEL3 00408 extern _BSEL0 00409 extern _BIE0 00410 extern _TXBIE 00411 extern _B0CON 00412 extern _B0SIDH 00413 extern _B0SIDL 00414 extern _B0EIDH 00415 extern _B0EIDL 00416 extern _B0DLC 00417 extern _B0D0 00418 extern _B0D1 00419 extern _B0D2 00420 extern _B0D3 00421 extern _B0D4 00422 extern _B0D5 00423 extern _B0D6 00424 extern _B0D7 00425 extern _CANSTAT_RO9 00426 extern _CANCON_RO9 00427 extern _B1CON 00428 extern _B1SIDH 00429 extern _B1SIDL 00430 extern _B1EIDH 00431 extern _B1EIDL 00432 extern _B1DLC gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 9 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00433 extern _B1D0 00434 extern _B1D1 00435 extern _B1D2 00436 extern _B1D3 00437 extern _B1D4 00438 extern _B1D5 00439 extern _B1D6 00440 extern _B1D7 00441 extern _CANSTAT_RO8 00442 extern _CANCON_RO8 00443 extern _B2CON 00444 extern _B2SIDH 00445 extern _B2SIDL 00446 extern _B2EIDH 00447 extern _B2EIDL 00448 extern _B2DLC 00449 extern _B2D0 00450 extern _B2D1 00451 extern _B2D2 00452 extern _B2D3 00453 extern _B2D4 00454 extern _B2D5 00455 extern _B2D6 00456 extern _B2D7 00457 extern _CANSTAT_RO7 00458 extern _CANCON_RO7 00459 extern _B3CON 00460 extern _B3SIDH 00461 extern _B3SIDL 00462 extern _B3EIDH 00463 extern _B3EIDL 00464 extern _B3DLC 00465 extern _B3D0 00466 extern _B3D1 00467 extern _B3D2 00468 extern _B3D3 00469 extern _B3D4 00470 extern _B3D5 00471 extern _B3D6 00472 extern _B3D7 00473 extern _CANSTAT_RO6 00474 extern _CANCON_RO6 00475 extern _B4CON 00476 extern _B4SIDH 00477 extern _B4SIDL 00478 extern _B4EIDH 00479 extern _B4EIDL 00480 extern _B4DLC 00481 extern _B4D0 00482 extern _B4D1 00483 extern _B4D2 00484 extern _B4D3 00485 extern _B4D4 00486 extern _B4D5 gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 10 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00487 extern _B4D6 00488 extern _B4D7 00489 extern _CANSTAT_RO5 00490 extern _CANCON_RO5 00491 extern _B5CON 00492 extern _B5SIDH 00493 extern _B5SIDL 00494 extern _B5EIDH 00495 extern _B5EIDL 00496 extern _B5DLC 00497 extern _B5D0 00498 extern _B5D1 00499 extern _B5D2 00500 extern _B5D3 00501 extern _B5D4 00502 extern _B5D5 00503 extern _B5D6 00504 extern _B5D7 00505 extern _CANSTAT_RO4 00506 extern _CANCON_RO4 00507 extern _RXF0SIDH 00508 extern _RXF0SIDL 00509 extern _RXF0EIDH 00510 extern _RXF0EIDL 00511 extern _RXF1SIDH 00512 extern _RXF1SIDL 00513 extern _RXF1EIDH 00514 extern _RXF1EIDL 00515 extern _RXF2SIDH 00516 extern _RXF2SIDL 00517 extern _RXF2EIDH 00518 extern _RXF2EIDL 00519 extern _RXF3SIDH 00520 extern _RXF3SIDL 00521 extern _RXF3EIDH 00522 extern _RXF3EIDL 00523 extern _RXF4SIDH 00524 extern _RXF4SIDL 00525 extern _RXF4EIDH 00526 extern _RXF4EIDL 00527 extern _RXF5SIDH 00528 extern _RXF5SIDL 00529 extern _RXF5EIDH 00530 extern _RXF5EIDL 00531 extern _RXM0SIDH 00532 extern _RXM0SIDL 00533 extern _RXM0EIDH 00534 extern _RXM0EIDL 00535 extern _RXM1SIDH 00536 extern _RXM1SIDL 00537 extern _RXM1EIDH 00538 extern _RXM1EIDL 00539 extern _TXB2CON 00540 extern _TXB2SIDH gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 11 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00541 extern _TXB2SIDL 00542 extern _TXB2EIDH 00543 extern _TXB2EIDL 00544 extern _TXB2DLC 00545 extern _TXB2D0 00546 extern _TXB2D1 00547 extern _TXB2D2 00548 extern _TXB2D3 00549 extern _TXB2D4 00550 extern _TXB2D5 00551 extern _TXB2D6 00552 extern _TXB2D7 00553 extern _CANSTAT_RO3 00554 extern _CANCON_RO3 00555 extern _TXB1CON 00556 extern _TXB1SIDH 00557 extern _TXB1SIDL 00558 extern _TXB1EIDH 00559 extern _TXB1EIDL 00560 extern _TXB1DLC 00561 extern _TXB1D0 00562 extern _TXB1D1 00563 extern _TXB1D2 00564 extern _TXB1D3 00565 extern _TXB1D4 00566 extern _TXB1D5 00567 extern _TXB1D6 00568 extern _TXB1D7 00569 extern _CANSTAT_RO2 00570 extern _CANCON_RO2 00571 extern _TXB0CON 00572 extern _TXB0SIDH 00573 extern _TXB0SIDL 00574 extern _TXB0EIDH 00575 extern _TXB0EIDL 00576 extern _TXB0DLC 00577 extern _TXB0D0 00578 extern _TXB0D1 00579 extern _TXB0D2 00580 extern _TXB0D3 00581 extern _TXB0D4 00582 extern _TXB0D5 00583 extern _TXB0D6 00584 extern _TXB0D7 00585 extern _CANSTAT_RO1 00586 extern _CANCON_RO1 00587 extern _RXB1CON 00588 extern _RXB1SIDH 00589 extern _RXB1SIDL 00590 extern _RXB1EIDH 00591 extern _RXB1EIDL 00592 extern _RXB1DLC 00593 extern _RXB1D0 00594 extern _RXB1D1 gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 12 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00595 extern _RXB1D2 00596 extern _RXB1D3 00597 extern _RXB1D4 00598 extern _RXB1D5 00599 extern _RXB1D6 00600 extern _RXB1D7 00601 extern _CANSTAT_RO0 00602 extern _CANCON_RO0 00603 extern _RXB0CON 00604 extern _RXB0SIDH 00605 extern _RXB0SIDL 00606 extern _RXB0EIDH 00607 extern _RXB0EIDL 00608 extern _RXB0DLC 00609 extern _RXB0D0 00610 extern _RXB0D1 00611 extern _RXB0D2 00612 extern _RXB0D3 00613 extern _RXB0D4 00614 extern _RXB0D5 00615 extern _RXB0D6 00616 extern _RXB0D7 00617 extern _CANSTAT 00618 extern _CANCON 00619 extern _BRGCON1 00620 extern _BRGCON2 00621 extern _BRGCON3 00622 extern _CIOCON 00623 extern _COMSTAT 00624 extern _RXERRCNT 00625 extern _TXERRCNT 00626 extern _ECANCON 00627 extern _PORTA 00628 extern _PORTB 00629 extern _PORTC 00630 extern _LATA 00631 extern _LATB 00632 extern _LATC 00633 extern _DDRA 00634 extern _TRISA 00635 extern _DDRB 00636 extern _TRISB 00637 extern _DDRC 00638 extern _TRISC 00639 extern _OSCTUNE 00640 extern _PIE1 00641 extern _PIR1 00642 extern _IPR1 00643 extern _PIE2 00644 extern _PIR2 00645 extern _IPR2 00646 extern _PIE3 00647 extern _PIR3 00648 extern _IPR3 gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 13 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00649 extern _EECON1 00650 extern _EECON2 00651 extern _EEDATA 00652 extern _EEADR 00653 extern _EEADRH 00654 extern _RCSTA 00655 extern _TXSTA 00656 extern _TXREG 00657 extern _RCREG 00658 extern _SPBRG 00659 extern _SPBRGH 00660 extern _T3CON 00661 extern _TMR3L 00662 extern _TMR3H 00663 extern _BAUDCON 00664 extern _CCP1CON 00665 extern _CCPR1 00666 extern _CCPR1L 00667 extern _CCPR1H 00668 extern _ADCON2 00669 extern _ADCON1 00670 extern _ADCON0 00671 extern _ADRES 00672 extern _ADRESL 00673 extern _ADRESH 00674 extern _SSPCON2 00675 extern _SSPCON1 00676 extern _SSPSTAT 00677 extern _SSPADD 00678 extern _SSPBUF 00679 extern _T2CON 00680 extern _PR2 00681 extern _TMR2 00682 extern _T1CON 00683 extern _TMR1L 00684 extern _TMR1H 00685 extern _RCON 00686 extern _WDTCON 00687 extern _HLVDCON 00688 extern _LVDCON 00689 extern _OSCCON 00690 extern _T0CON 00691 extern _TMR0L 00692 extern _TMR0H 00693 extern _STATUS 00694 extern _FSR2L 00695 extern _FSR2H 00696 extern _PLUSW2 00697 extern _PREINC2 00698 extern _POSTDEC2 00699 extern _POSTINC2 00700 extern _INDF2 00701 extern _BSR 00702 extern _FSR1L gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 14 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00703 extern _FSR1H 00704 extern _PLUSW1 00705 extern _PREINC1 00706 extern _POSTDEC1 00707 extern _POSTINC1 00708 extern _INDF1 00709 extern _WREG 00710 extern _FSR0L 00711 extern _FSR0H 00712 extern _PLUSW0 00713 extern _PREINC0 00714 extern _POSTDEC0 00715 extern _POSTINC0 00716 extern _INDF0 00717 extern _INTCON3 00718 extern _INTCON2 00719 extern _INTCON 00720 extern _PROD 00721 extern _PRODL 00722 extern _PRODH 00723 extern _TABLAT 00724 extern _TBLPTR 00725 extern _TBLPTRL 00726 extern _TBLPTRH 00727 extern _TBLPTRU 00728 extern _PC 00729 extern _PCL 00730 extern _PCLATH 00731 extern _PCLATU 00732 extern _STKPTR 00733 extern _TOS 00734 extern _TOSL 00735 extern _TOSH 00736 extern _TOSU 00737 extern _ECANInitialize 00738 extern _ECANSendMessage 00739 extern _ECANReceiveMessage 00740 extern _ECANSetOperationMode 00741 extern __CANIDToRegs 00742 ;-------------------------------------------------------- 00743 ; Equates to used internal registers 00744 ;-------------------------------------------------------- 00000FD8 00745 STATUS equ 0xfd8 00000FF9 00746 PCL equ 0xff9 00000FFA 00747 PCLATH equ 0xffa 00000FFB 00748 PCLATU equ 0xffb 00000FE8 00749 WREG equ 0xfe8 00000FE9 00750 FSR0L equ 0xfe9 00000FEA 00751 FSR0H equ 0xfea 00000FE1 00752 FSR1L equ 0xfe1 00000FD9 00753 FSR2L equ 0xfd9 00000FEF 00754 INDF0 equ 0xfef 00000FE5 00755 POSTDEC1 equ 0xfe5 00000FE4 00756 PREINC1 equ 0xfe4 gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 15 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00000FDB 00757 PLUSW2 equ 0xfdb 00000FF3 00758 PRODL equ 0xff3 00000FF4 00759 PRODH equ 0xff4 00760 00761 00762 idata 00763 _ui db 0x61 00764 _pt db LOW(_ui), HIGH(_ui), 0x80 00765 _CAN_status_ptr db LOW(_CAN_status1), HIGH(_CAN_status1), 0x80 00766 _CAN_send_rr_1_1 db 0x00 00767 _CAN_setFilters_fltId_1_1 db 0x00, 0x01, 0x02, 0x03, 0x04, 0x05 00768 00769 00770 ; Internal registers 00771 .registers udata_ovr 0x0000 00772 r0x00 res 1 00773 r0x01 res 1 00774 r0x02 res 1 00775 r0x03 res 1 00776 r0x04 res 1 00777 r0x05 res 1 00778 r0x06 res 1 00779 r0x07 res 1 00780 r0x08 res 1 00781 r0x09 res 1 00782 r0x0a res 1 00783 r0x0b res 1 00784 r0x0c res 1 00785 r0x0d res 1 00786 r0x0e res 1 00787 r0x0f res 1 00788 r0x10 res 1 00789 r0x11 res 1 00790 00791 udata_can_0 udata 00792 _CAN_status1 res 5 00793 00794 udata_can_1 udata 00795 _CAN_recv_temp_1_1 res 4 00796 00797 udata_can_2 udata 00798 _CAN_recv_flags_1_1 res 1 00799 00800 ;-------------------------------------------------------- 00801 ; global & static initialisations 00802 ;-------------------------------------------------------- 00803 ; I code from now on! 00804 ; ; Starting pCode block 00805 S_can__CAN_setFilters code 0000 00806 _CAN_setFilters: 00807 ; .line 88; can.c int CAN_setFilters( struct CAN_filter_dcr *flt ){ 0000 CFD9 FFE5 00808 MOVFF FSR2L, POSTDEC1 0004 CFE1 FFD9 00809 MOVFF FSR1L, FSR2L 0008 C000 FFE5 00810 MOVFF r0x00, POSTDEC1 gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 16 LOC OBJECT CODE LINE SOURCE TEXT VALUE 000C C000 FFE5 00811 MOVFF r0x01, POSTDEC1 0010 C000 FFE5 00812 MOVFF r0x02, POSTDEC1 0014 C000 FFE5 00813 MOVFF r0x03, POSTDEC1 0018 C000 FFE5 00814 MOVFF r0x04, POSTDEC1 001C C000 FFE5 00815 MOVFF r0x05, POSTDEC1 0020 C000 FFE5 00816 MOVFF r0x06, POSTDEC1 0024 C000 FFE5 00817 MOVFF r0x07, POSTDEC1 0028 C000 FFE5 00818 MOVFF r0x08, POSTDEC1 002C C000 FFE5 00819 MOVFF r0x09, POSTDEC1 0030 C000 FFE5 00820 MOVFF r0x0a, POSTDEC1 0034 C000 FFE5 00821 MOVFF r0x0b, POSTDEC1 0038 C000 FFE5 00822 MOVFF r0x0c, POSTDEC1 003C C000 FFE5 00823 MOVFF r0x0d, POSTDEC1 0040 C000 FFE5 00824 MOVFF r0x0e, POSTDEC1 0044 C000 FFE5 00825 MOVFF r0x0f, POSTDEC1 0048 0E02 00826 MOVLW 0x02 004A CFDB F000 00827 MOVFF PLUSW2, r0x00 004E 0E03 00828 MOVLW 0x03 0050 CFDB F000 00829 MOVFF PLUSW2, r0x01 0054 0E04 00830 MOVLW 0x04 0056 CFDB F000 00831 MOVFF PLUSW2, r0x02 00832 ; .line 99; can.c ECANSetOperationMode(ECAN_OP_MODE_CONFIG); // must be in config mode to change masks/filters 005A 0E80 00833 MOVLW 0x80 005C 6EE5 00834 MOVWF POSTDEC1 005E EC00 F000 00835 CALL _ECANSetOperationMode 0062 2AE1 00836 INCF FSR1L, F 00837 ; .line 102; can.c ECANSetRXM0Value(CAN_MASK_ELEVEN_BITS, ECAN_MSG_STD); 0064 0E00 00838 MOVLW HIGH(_RXM0SIDH) 0066 6E00 00839 MOVWF r0x04 0068 0E00 00840 MOVLW LOW(_RXM0SIDH) 006A 6E00 00841 MOVWF r0x03 006C 0E80 00842 MOVLW 0x80 006E 6E00 00843 MOVWF r0x05 0070 0E00 00844 MOVLW 0x00 0072 6EE5 00845 MOVWF POSTDEC1 0074 0E00 00846 MOVLW 0x00 0076 6EE5 00847 MOVWF POSTDEC1 0078 0E00 00848 MOVLW 0x00 007A 6EE5 00849 MOVWF POSTDEC1 007C 0E07 00850 MOVLW 0x07 007E 6EE5 00851 MOVWF POSTDEC1 0080 0EFF 00852 MOVLW 0xff 0082 6EE5 00853 MOVWF POSTDEC1 0084 5000 00854 MOVF r0x05, W 0086 6EE5 00855 MOVWF POSTDEC1 0088 5000 00856 MOVF r0x04, W 008A 6EE5 00857 MOVWF POSTDEC1 008C 5000 00858 MOVF r0x03, W 008E 6EE5 00859 MOVWF POSTDEC1 0090 EC00 F000 00860 CALL __CANIDToRegs 0094 0E08 00861 MOVLW 0x08 0096 26E1 00862 ADDWF FSR1L, F 00863 ; .line 103; can.c ECANSetRXM1Value(CAN_MASK_ELEVEN_BITS, ECAN_MSG_STD); 0098 0E00 00864 MOVLW HIGH(_RXM1SIDH) gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 17 LOC OBJECT CODE LINE SOURCE TEXT VALUE 009A 6E00 00865 MOVWF r0x04 009C 0E00 00866 MOVLW LOW(_RXM1SIDH) 009E 6E00 00867 MOVWF r0x03 00A0 0E80 00868 MOVLW 0x80 00A2 6E00 00869 MOVWF r0x05 00A4 0E00 00870 MOVLW 0x00 00A6 6EE5 00871 MOVWF POSTDEC1 00A8 0E00 00872 MOVLW 0x00 00AA 6EE5 00873 MOVWF POSTDEC1 00AC 0E00 00874 MOVLW 0x00 00AE 6EE5 00875 MOVWF POSTDEC1 00B0 0E07 00876 MOVLW 0x07 00B2 6EE5 00877 MOVWF POSTDEC1 00B4 0EFF 00878 MOVLW 0xff 00B6 6EE5 00879 MOVWF POSTDEC1 00B8 5000 00880 MOVF r0x05, W 00BA 6EE5 00881 MOVWF POSTDEC1 00BC 5000 00882 MOVF r0x04, W 00BE 6EE5 00883 MOVWF POSTDEC1 00C0 5000 00884 MOVF r0x03, W 00C2 6EE5 00885 MOVWF POSTDEC1 00C4 EC00 F000 00886 CALL __CANIDToRegs 00C8 0E08 00887 MOVLW 0x08 00CA 26E1 00888 ADDWF FSR1L, F 00889 ; .line 105; can.c for (k = 0; kID, msg->buf, msg->len, 0042 C000 FFE9 01276 MOVFF r0x00, FSR0L 0046 C000 FFF3 01277 MOVFF r0x01, PRODL 004A 5000 01278 MOVF r0x02, W 004C EC00 F000 01279 CALL __gptrget2 0050 6E00 01280 MOVWF r0x03 0052 CFF3 F000 01281 MOVFF PRODL, r0x04 0056 6A00 01282 CLRF r0x05 0058 6A00 01283 CLRF r0x06 005A 5000 01284 MOVF r0x00, W 005C 0F03 01285 ADDLW 0x03 005E 6E00 01286 MOVWF r0x07 0060 0E00 01287 MOVLW 0x00 0062 2000 01288 ADDWFC r0x01, W 0064 6E00 01289 MOVWF r0x08 0066 0E00 01290 MOVLW 0x00 0068 2000 01291 ADDWFC r0x02, W 006A 6E00 01292 MOVWF r0x09 006C 0E02 01293 MOVLW 0x02 006E 2600 01294 ADDWF r0x00, F 0070 0E00 01295 MOVLW 0x00 0072 2200 01296 ADDWFC r0x01, F gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 25 LOC OBJECT CODE LINE SOURCE TEXT VALUE 0074 0E00 01297 MOVLW 0x00 0076 2200 01298 ADDWFC r0x02, F 0078 C000 FFE9 01299 MOVFF r0x00, FSR0L 007C C000 FFF3 01300 MOVFF r0x01, PRODL 0080 5000 01301 MOVF r0x02, W 0082 EC00 F000 01302 CALL __gptrget1 0086 6E00 01303 MOVWF r0x00 01304 ; .line 79; can.c ECAN_TX_PRIORITY_0 & ECAN_TX_STD_FRAME & ECAN_TX_NO_RTR_FRAME); 0088 0E00 01305 MOVLW 0x00 008A 6EE5 01306 MOVWF POSTDEC1 008C 5000 01307 MOVF r0x00, W 008E 6EE5 01308 MOVWF POSTDEC1 0090 5000 01309 MOVF r0x09, W 0092 6EE5 01310 MOVWF POSTDEC1 0094 5000 01311 MOVF r0x08, W 0096 6EE5 01312 MOVWF POSTDEC1 0098 5000 01313 MOVF r0x07, W 009A 6EE5 01314 MOVWF POSTDEC1 009C 5000 01315 MOVF r0x06, W 009E 6EE5 01316 MOVWF POSTDEC1 00A0 5000 01317 MOVF r0x05, W 00A2 6EE5 01318 MOVWF POSTDEC1 00A4 5000 01319 MOVF r0x04, W 00A6 6EE5 01320 MOVWF POSTDEC1 00A8 5000 01321 MOVF r0x03, W 00AA 6EE5 01322 MOVWF POSTDEC1 00AC EC00 F000 01323 CALL _ECANSendMessage 00B0 6E00 01324 MOVWF r0x00 00B2 0E09 01325 MOVLW 0x09 00B4 26E1 01326 ADDWF FSR1L, F 00B6 6A00 01327 CLRF r0x01 01328 ; .line 81; can.c if (rc) 00B8 5000 01329 MOVF r0x00, W 00BA 1000 01330 IORWF r0x01, W 00BC E000 01331 BZ _00142_DS_ 01332 ; .line 82; can.c CAN_status1.tx++; 00BE C000 F000 01333 MOVFF _CAN_status1, r0x02 00C2 2A00 01334 INCF r0x02, F 00C4 5000 01335 MOVF r0x02, W 00C6 0000 01336 BANKSEL _CAN_status1 00C8 6F00 01337 MOVWF _CAN_status1, B 00CA D000 01338 BRA _00143_DS_ 00CC 01339 _00142_DS_: 01340 ; .line 84; can.c CAN_status1.txError++; 00CC C000 F000 01341 MOVFF (_CAN_status1 + 1), r0x02 00D0 2A00 01342 INCF r0x02, F 00D2 5000 01343 MOVF r0x02, W 00D4 0000 01344 BANKSEL (_CAN_status1 + 1) 00D6 6F00 01345 MOVWF (_CAN_status1 + 1), B 00D8 01346 _00143_DS_: 01347 ; .line 86; can.c return rc; 00D8 C000 FFF3 01348 MOVFF r0x01, PRODL 00DC 5000 01349 MOVF r0x00, W 00DE CFE4 F000 01350 MOVFF PREINC1, r0x09 gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 26 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00E2 CFE4 F000 01351 MOVFF PREINC1, r0x08 00E6 CFE4 F000 01352 MOVFF PREINC1, r0x07 00EA CFE4 F000 01353 MOVFF PREINC1, r0x06 00EE CFE4 F000 01354 MOVFF PREINC1, r0x05 00F2 CFE4 F000 01355 MOVFF PREINC1, r0x04 00F6 CFE4 F000 01356 MOVFF PREINC1, r0x03 00FA CFE4 F000 01357 MOVFF PREINC1, r0x02 00FE CFE4 F000 01358 MOVFF PREINC1, r0x01 0102 CFE4 F000 01359 MOVFF PREINC1, r0x00 0106 CFE4 FFD9 01360 MOVFF PREINC1, FSR2L 010A 0012 01361 RETURN 01362 01363 ; ; Starting pCode block 01364 S_can__CAN_recv code 0000 01365 _CAN_recv: 01366 ; .line 44; can.c int CAN_recv( struct CAN_msg *msg ) { 0000 CFD9 FFE5 01367 MOVFF FSR2L, POSTDEC1 0004 CFE1 FFD9 01368 MOVFF FSR1L, FSR2L 0008 C000 FFE5 01369 MOVFF r0x00, POSTDEC1 000C C000 FFE5 01370 MOVFF r0x01, POSTDEC1 0010 C000 FFE5 01371 MOVFF r0x02, POSTDEC1 0014 C000 FFE5 01372 MOVFF r0x03, POSTDEC1 0018 C000 FFE5 01373 MOVFF r0x04, POSTDEC1 001C C000 FFE5 01374 MOVFF r0x05, POSTDEC1 0020 C000 FFE5 01375 MOVFF r0x06, POSTDEC1 0024 C000 FFE5 01376 MOVFF r0x07, POSTDEC1 0028 C000 FFE5 01377 MOVFF r0x08, POSTDEC1 002C C000 FFE5 01378 MOVFF r0x09, POSTDEC1 0030 C000 FFE5 01379 MOVFF r0x0a, POSTDEC1 0034 C000 FFE5 01380 MOVFF r0x0b, POSTDEC1 0038 C000 FFE5 01381 MOVFF r0x0c, POSTDEC1 003C C000 FFE5 01382 MOVFF r0x0d, POSTDEC1 0040 C000 FFE5 01383 MOVFF r0x0e, POSTDEC1 0044 0E02 01384 MOVLW 0x02 0046 CFDB F000 01385 MOVFF PLUSW2, r0x00 004A 0E03 01386 MOVLW 0x03 004C CFDB F000 01387 MOVFF PLUSW2, r0x01 0050 0E04 01388 MOVLW 0x04 0052 CFDB F000 01389 MOVFF PLUSW2, r0x02 01390 ; .line 56; can.c if (!ECANReceiveMessage ((unsigned long *)&temp, msg->buf, &msg->len, &flags)) 0056 0E00 01391 MOVLW HIGH(_CAN_recv_temp_1_1) 0058 6E00 01392 MOVWF r0x04 005A 0E00 01393 MOVLW LOW(_CAN_recv_temp_1_1) 005C 6E00 01394 MOVWF r0x03 005E 0E80 01395 MOVLW 0x80 0060 6E00 01396 MOVWF r0x05 0062 5000 01397 MOVF r0x00, W 0064 0F03 01398 ADDLW 0x03 0066 6E00 01399 MOVWF r0x06 0068 0E00 01400 MOVLW 0x00 006A 2000 01401 ADDWFC r0x01, W 006C 6E00 01402 MOVWF r0x07 006E 0E00 01403 MOVLW 0x00 0070 2000 01404 ADDWFC r0x02, W gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 27 LOC OBJECT CODE LINE SOURCE TEXT VALUE 0072 6E00 01405 MOVWF r0x08 0074 5000 01406 MOVF r0x00, W 0076 0F02 01407 ADDLW 0x02 0078 6E00 01408 MOVWF r0x09 007A 0E00 01409 MOVLW 0x00 007C 2000 01410 ADDWFC r0x01, W 007E 6E00 01411 MOVWF r0x0a 0080 0E00 01412 MOVLW 0x00 0082 2000 01413 ADDWFC r0x02, W 0084 6E00 01414 MOVWF r0x0b 0086 0E00 01415 MOVLW HIGH(_CAN_recv_flags_1_1) 0088 6E00 01416 MOVWF r0x0d 008A 0E00 01417 MOVLW LOW(_CAN_recv_flags_1_1) 008C 6E00 01418 MOVWF r0x0c 008E 0E80 01419 MOVLW 0x80 0090 6E00 01420 MOVWF r0x0e 0092 5000 01421 MOVF r0x0e, W 0094 6EE5 01422 MOVWF POSTDEC1 0096 5000 01423 MOVF r0x0d, W 0098 6EE5 01424 MOVWF POSTDEC1 009A 5000 01425 MOVF r0x0c, W 009C 6EE5 01426 MOVWF POSTDEC1 009E 5000 01427 MOVF r0x0b, W 00A0 6EE5 01428 MOVWF POSTDEC1 00A2 5000 01429 MOVF r0x0a, W 00A4 6EE5 01430 MOVWF POSTDEC1 00A6 5000 01431 MOVF r0x09, W 00A8 6EE5 01432 MOVWF POSTDEC1 00AA 5000 01433 MOVF r0x08, W 00AC 6EE5 01434 MOVWF POSTDEC1 00AE 5000 01435 MOVF r0x07, W 00B0 6EE5 01436 MOVWF POSTDEC1 00B2 5000 01437 MOVF r0x06, W 00B4 6EE5 01438 MOVWF POSTDEC1 00B6 5000 01439 MOVF r0x05, W 00B8 6EE5 01440 MOVWF POSTDEC1 00BA 5000 01441 MOVF r0x04, W 00BC 6EE5 01442 MOVWF POSTDEC1 00BE 5000 01443 MOVF r0x03, W 00C0 6EE5 01444 MOVWF POSTDEC1 00C2 EC00 F000 01445 CALL _ECANReceiveMessage 00C6 6E00 01446 MOVWF r0x03 00C8 0E0C 01447 MOVLW 0x0c 00CA 26E1 01448 ADDWF FSR1L, F 00CC 5000 01449 MOVF r0x03, W 00CE E100 01450 BNZ _00125_DS_ 01451 ; .line 57; can.c return 0; 00D0 6AF3 01452 CLRF PRODL 00D2 6AE8 01453 CLRF WREG 00D4 D000 01454 BRA _00130_DS_ 00D6 01455 _00125_DS_: 00D6 0000 01456 BANKSEL _CAN_recv_temp_1_1 01457 ; .line 58; can.c msg->ID = (uint16_t) temp; 00D8 5100 01458 MOVF _CAN_recv_temp_1_1, W, B gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 28 LOC OBJECT CODE LINE SOURCE TEXT VALUE 00DA 6E00 01459 MOVWF r0x03 00DC 0000 01460 BANKSEL (_CAN_recv_temp_1_1 + 1) 00DE 5100 01461 MOVF (_CAN_recv_temp_1_1 + 1), W, B 00E0 6E00 01462 MOVWF r0x04 00E2 C000 FFE5 01463 MOVFF r0x03, POSTDEC1 00E6 C000 FFF4 01464 MOVFF r0x04, PRODH 00EA C000 FFE9 01465 MOVFF r0x00, FSR0L 00EE C000 FFF3 01466 MOVFF r0x01, PRODL 00F2 5000 01467 MOVF r0x02, W 00F4 EC00 F000 01468 CALL __gptrput2 01469 ; .line 59; can.c CAN_status1.rx ++; 00F8 C000 F000 01470 MOVFF (_CAN_status1 + 2), r0x03 00FC 2A00 01471 INCF r0x03, F 00FE 5000 01472 MOVF r0x03, W 0100 0000 01473 BANKSEL (_CAN_status1 + 2) 0102 6F00 01474 MOVWF (_CAN_status1 + 2), B 0104 0000 01475 BANKSEL _CAN_recv_flags_1_1 01476 ; .line 61; can.c if (flags & (ECAN_RX_XTD_FRAME | ECAN_RX_RTR_FRAME)) { // don't accept these strange things. 0106 5100 01477 MOVF _CAN_recv_flags_1_1, W, B 0108 0B60 01478 ANDLW 0x60 010A E000 01479 BZ _00127_DS_ 01480 ; .line 62; can.c CAN_status1.exotic++; 010C C000 F000 01481 MOVFF (_CAN_status1 + 4), r0x03 0110 2A00 01482 INCF r0x03, F 0112 5000 01483 MOVF r0x03, W 0114 0000 01484 BANKSEL (_CAN_status1 + 4) 0116 6F00 01485 MOVWF (_CAN_status1 + 4), B 01486 ; .line 63; can.c return -1; 0118 68F3 01487 SETF PRODL 011A 68E8 01488 SETF WREG 011C D000 01489 BRA _00130_DS_ 011E 01490 _00127_DS_: 011E 0000 01491 BANKSEL _CAN_recv_flags_1_1 01492 ; .line 65; can.c if (flags & ECAN_RX_OVERFLOW) { // it's not clear what this flag means, but count it. 0120 A700 01493 BTFSS _CAN_recv_flags_1_1, 3, B 0122 D000 01494 BRA _00129_DS_ 01495 ; .line 66; can.c CAN_status1.overflow++; 0124 C000 F000 01496 MOVFF (_CAN_status1 + 3), r0x03 0128 2A00 01497 INCF r0x03, F 012A 5000 01498 MOVF r0x03, W 012C 0000 01499 BANKSEL (_CAN_status1 + 3) 012E 6F00 01500 MOVWF (_CAN_status1 + 3), B 01501 ; .line 67; can.c return -2; 0130 68F3 01502 SETF PRODL 0132 0EFE 01503 MOVLW 0xfe 0134 D000 01504 BRA _00130_DS_ 0136 01505 _00129_DS_: 01506 ; .line 70; can.c return msg->len; 0136 0E02 01507 MOVLW 0x02 0138 2600 01508 ADDWF r0x00, F 013A 0E00 01509 MOVLW 0x00 013C 2200 01510 ADDWFC r0x01, F 013E 0E00 01511 MOVLW 0x00 0140 2200 01512 ADDWFC r0x02, F gpasm-0.13.7 beta can.asm 12-30-2010 17:14:06 PAGE 29 LOC OBJECT CODE LINE SOURCE TEXT VALUE 0142 C000 FFE9 01513 MOVFF r0x00, FSR0L 0146 C000 FFF3 01514 MOVFF r0x01, PRODL 014A 5000 01515 MOVF r0x02, W 014C EC00 F000 01516 CALL __gptrget1 0150 6E00 01517 MOVWF r0x00 0152 6A00 01518 CLRF r0x01 0154 C000 FFF3 01519 MOVFF r0x01, PRODL 0158 5000 01520 MOVF r0x00, W 015A 01521 _00130_DS_: 015A CFE4 F000 01522 MOVFF PREINC1, r0x0e 015E CFE4 F000 01523 MOVFF PREINC1, r0x0d 0162 CFE4 F000 01524 MOVFF PREINC1, r0x0c 0166 CFE4 F000 01525 MOVFF PREINC1, r0x0b 016A CFE4 F000 01526 MOVFF PREINC1, r0x0a 016E CFE4 F000 01527 MOVFF PREINC1, r0x09 0172 CFE4 F000 01528 MOVFF PREINC1, r0x08 0176 CFE4 F000 01529 MOVFF PREINC1, r0x07 017A CFE4 F000 01530 MOVFF PREINC1, r0x06 017E CFE4 F000 01531 MOVFF PREINC1, r0x05 0182 CFE4 F000 01532 MOVFF PREINC1, r0x04 0186 CFE4 F000 01533 MOVFF PREINC1, r0x03 018A CFE4 F000 01534 MOVFF PREINC1, r0x02 018E CFE4 F000 01535 MOVFF PREINC1, r0x01 0192 CFE4 F000 01536 MOVFF PREINC1, r0x00 0196 CFE4 FFD9 01537 MOVFF PREINC1, FSR2L 019A 0012 01538 RETURN 01539 01540 ; ; Starting pCode block 01541 S_can__CAN_init code 0000 01542 _CAN_init: 01543 ; .line 31; can.c int CAN_init( void ) { 0000 CFD9 FFE5 01544 MOVFF FSR2L, POSTDEC1 0004 CFE1 FFD9 01545 MOVFF FSR1L, FSR2L 0008 C000 FFE5 01546 MOVFF r0x00, POSTDEC1 000C C000 FFE5 01547 MOVFF r0x01, POSTDEC1 0010 C000 FFE5 01548 MOVFF r0x02, POSTDEC1 0014 C000 FFE5 01549 MOVFF r0x03, POSTDEC1 01550 ; .line 36; can.c ECANInitialize(); 0018 EC00 F000 01551 CALL _ECANInitialize 01552 ; .line 38; can.c for (k = 0; k