Microchip MPLAB XC8 Assembler V2.40 build 20220703182018 Fri Feb 24 13:49:42 2023 Microchip MPLAB XC8 C Compiler v2.40 (Free license) build 20220703182018 Og1 1 processor 18F97J60 2 fnconf rparam,??,?,0 3 pagewidth 120 4 opt flic 5 psect smallconst,global,reloc=2,class=SMALLCONST,delta=1,noexec 6 psect cinit,global,reloc=2,class=CODE,delta=1 7 psect bssCOMRAM,global,class=COMRAM,space=1,delta=1,lowdata,noexec 8 psect cstackCOMRAM,global,class=COMRAM,space=1,delta=1,lowdata,noexec 9 psect text0,global,reloc=2,class=CODE,delta=1 10 psect text1,global,reloc=2,class=CODE,delta=1 11 psect text2,global,reloc=2,class=CODE,delta=1 12 psect text3,global,reloc=2,class=CODE,delta=1 13 psect text4,global,reloc=2,class=CODE,delta=1 14 psect text5,global,reloc=2,class=CODE,delta=1 15 psect text6,global,reloc=2,class=CODE,delta=1 16 psect text7,global,reloc=2,class=CODE,delta=1 17 psect intsave_regs,global,class=BIGRAM,space=1,delta=1,noexec 18 psect rparam,global,class=COMRAM,space=1,delta=1,noexec 19 psect config,global,abs,ovrld,class=CONFIG,space=4,delta=1,noexec 20 000000 21 ; Version 2.40 22 ; Generated 17/11/2021 GMT 23 ; 24 ; Copyright © 2021, Microchip Technology Inc. and its subsidiaries ("Microchip") 25 ; All rights reserved. 26 ; 27 ; This software is developed by Microchip Technology Inc. and its subsidiaries ("Microch + ip"). 28 ; 29 ; Redistribution and use in source and binary forms, with or without modification, are 30 ; permitted provided that the following conditions are met: 31 ; 32 ; 1. Redistributions of source code must retain the above copyright notice, this lis + t of 33 ; conditions and the following disclaimer. 34 ; 35 ; 2. Redistributions in binary form must reproduce the above copyright notice, this + list 36 ; of conditions and the following disclaimer in the documentation and/or other 37 ; materials provided with the distribution. Publication is not required when 38 ; this file is used in an embedded application. 39 ; 40 ; 3. Microchip's name may not be used to endorse or promote products derived from th + is 41 ; software without specific prior written permission. 42 ; 43 ; THIS SOFTWARE IS PROVIDED BY MICROCHIP "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 44 ; INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS F + OR 45 ; PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL MICROCHIP BE LIABLE FOR ANY DIRECT, INDIREC + T, 46 ; INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING BUT NOT LIMITED TO 47 ; PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA OR PROFITS; OR BUSINESS 48 ; INTERRUPTION) HOWSOEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, ST + RICT 49 ; LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE U + SE OF 50 ; THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 51 ; 52 ; 53 ; Code-generator required, PIC18F97J60 Definitions 54 ; 55 ; SFR Addresses 56 000000 _ADCON0 set 4034 57 000000 _ADRESL set 4035 58 000000 _TRISJ set 3994 59 000000 _TRISD set 3989 60 000000 _TRISC set 3988 61 000000 _TRISH set 3993 62 000000 _TRISB set 3987 63 000000 _TRISG set 3992 64 000000 _TRISA set 3986 65 000000 _TRISF set 3991 66 000000 _TRISE set 3990 67 000000 _LATH set 3984 68 000000 _LATC set 3979 69 000000 _LATG set 3983 70 000000 _LATB set 3978 71 000000 _LATF set 3982 72 000000 _LATJ set 3985 73 000000 _LATDbits set 3980 74 000000 _TRISDbits set 3989 75 000000 _ADCON0bits set 4034 76 000000 _ADCON1 set 4033 77 000000 _LATA set 3977 78 000000 _LATD set 3980 79 000000 _LATE set 3981 80 000000 _OSCTUNE set 3995 81 000000 _OSCCON set 4051 82 000000 _ADCON2 set 4032 83 000000 _ADCON1bits set 4033 84 000000 _ADRESH set 4036 85 86 psect smallconst 87 001000 __psmallconst: 88 callstack 0 89 001000 00 db 0 90 001001 STR_1: 91 001001 74 db 116 ;'t' 92 001002 65 db 101 ;'e' 93 001003 73 db 115 ;'s' 94 001004 74 db 116 ;'t' 95 001005 00 db 0 96 001006 00 db 0 ; dummy byte at the end 97 000000 98 ; #config settings 99 100 psect cinit 101 00117C __pcinit: 102 callstack 0 103 00117C start_initialization: 104 callstack 0 105 00117C __initialization: 106 callstack 0 107 108 ; Clear objects allocated to COMRAM (3 bytes) 109 00117C 6A0A clrf (__pbssCOMRAM+2)& (0+255),c 110 00117E 6A09 clrf (__pbssCOMRAM+1)& (0+255),c 111 001180 6A08 clrf __pbssCOMRAM& (0+255),c 112 001182 end_of_initialization: 113 callstack 0 114 001182 __end_of__initialization: 115 callstack 0 116 001182 0100 movlb 0 117 001184 EF9A F008 goto _main ;jump to C main() function 118 119 psect bssCOMRAM 120 000008 __pbssCOMRAM: 121 callstack 0 122 000008 _ADC_InterruptHandler: 123 callstack 0 124 000008 ds 3 125 126 psect cstackCOMRAM 127 000001 __pcstackCOMRAM: 128 callstack 0 129 000001 ??_LCD_2x16_WriteCmd: 130 000001 ??_LCD_2x16_WriteData: 131 132 ; 1 bytes @ 0x0 133 000001 ds 1 134 000002 LCD_2x16_WriteCmd@command: 135 callstack 0 136 000002 LCD_2x16_WriteData@command: 137 callstack 0 138 139 ; 1 bytes @ 0x1 140 000002 ds 1 141 000003 LCD_2x16_WriteMsg@msg: 142 callstack 0 143 144 ; 2 bytes @ 0x2 145 000003 ds 2 146 000005 LCD_2x16_WriteMsg@line: 147 callstack 0 148 149 ; 1 bytes @ 0x4 150 000005 ds 1 151 000006 main@msg: 152 callstack 0 153 154 ; 2 bytes @ 0x5 155 000006 ds 2 156 157 ;; 158 ;;Main: autosize = 0, tempsize = 0, incstack = 0, save=0 159 ;; 160 ;; *************** function _main ***************** 161 ;; Defined at: 162 ;; line 50 in file "main.c" 163 ;; Parameters: Size Location Type 164 ;; None 165 ;; Auto vars: Size Location Type 166 ;; msg 2 5[COMRAM] PTR unsigned char 167 ;; -> STR_1(5), 168 ;; Return value: Size Location Type 169 ;; 1 wreg void 170 ;; Registers used: 171 ;; wreg, status,2, status,0, tblptrl, tblptrh, tblptru, cstack 172 ;; Tracked objects: 173 ;; On entry : 0/0 174 ;; On exit : 0/0 175 ;; Unchanged: 0/0 176 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5 BANK6 BANK7 BANK8 BANK9 BANK10 BANK1 +1 BANK12 BANK13 BANK14 BANK15 177 ;; Params: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 178 ;; Locals: 2 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 179 ;; Temps: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 180 ;; Totals: 2 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 181 ;;Total ram usage: 2 bytes 182 ;; Hardware stack levels required when called: 2 183 ;; This function calls: 184 ;; _LCD_2x16_WriteMsg 185 ;; _SYSTEM_Initialize 186 ;; This function is called by: 187 ;; Startup code after reset 188 ;; This function uses a non-reentrant model 189 ;; 190 191 psect text0 192 001134 __ptext0: 193 callstack 0 194 001134 _main: 195 callstack 29 196 001134 197 ;main.c: 53: SYSTEM_Initialize(); 198 001134 ECB7 F008 call _SYSTEM_Initialize ;wreg free 199 001138 l950: 200 201 ;main.c: 74: {;main.c: 75: char* msg = "test"; 202 001138 0E01 movlw low STR_1 203 00113A 6E06 movwf main@msg^0,c 204 00113C 0E10 movlw high STR_1 205 00113E 6E07 movwf (main@msg+1)^0,c 206 001140 207 ;main.c: 76: LCD_2x16_WriteMsg(msg,0); 208 001140 C006 F003 movff main@msg,LCD_2x16_WriteMsg@msg 209 001144 C007 F004 movff main@msg+1,LCD_2x16_WriteMsg@msg+1 210 001148 0E00 movlw 0 211 00114A 6E05 movwf LCD_2x16_WriteMsg@line^0,c 212 00114C EC58 F008 call _LCD_2x16_WriteMsg ;wreg free 213 001150 EF9C F008 goto l950 214 001154 EF00 F000 goto start 215 001158 __end_of_main: 216 callstack 0 217 218 ;; *************** function _SYSTEM_Initialize ***************** 219 ;; Defined at: 220 ;; line 50 in file "mcc_generated_files/mcc.c" 221 ;; Parameters: Size Location Type 222 ;; None 223 ;; Auto vars: Size Location Type 224 ;; None 225 ;; Return value: Size Location Type 226 ;; 1 wreg void 227 ;; Registers used: 228 ;; wreg, status,2, cstack 229 ;; Tracked objects: 230 ;; On entry : 0/0 231 ;; On exit : 0/0 232 ;; Unchanged: 0/0 233 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5 BANK6 BANK7 BANK8 BANK9 BANK10 BANK1 +1 BANK12 BANK13 BANK14 BANK15 234 ;; Params: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 235 ;; Locals: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 236 ;; Temps: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 237 ;; Totals: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 238 ;;Total ram usage: 0 bytes 239 ;; Hardware stack levels used: 1 240 ;; Hardware stack levels required when called: 1 241 ;; This function calls: 242 ;; _ADC_Initialize 243 ;; _OSCILLATOR_Initialize 244 ;; _PIN_MANAGER_Initialize 245 ;; This function is called by: 246 ;; _main 247 ;; This function uses a non-reentrant model 248 ;; 249 250 psect text1 251 00116E __ptext1: 252 callstack 0 253 00116E _SYSTEM_Initialize: 254 callstack 29 255 00116E 256 ;mcc_generated_files/mcc.c: 53: PIN_MANAGER_Initialize(); 257 00116E EC7B F008 call _PIN_MANAGER_Initialize ;wreg free 258 259 ;mcc_generated_files/mcc.c: 54: OSCILLATOR_Initialize(); 260 001172 ECC4 F008 call _OSCILLATOR_Initialize ;wreg free 261 262 ;mcc_generated_files/mcc.c: 55: ADC_Initialize(); 263 001176 ECAC F008 call _ADC_Initialize ;wreg free 264 00117A 0012 return ;funcret 265 00117C __end_of_SYSTEM_Initialize: 266 callstack 0 267 268 ;; *************** function _PIN_MANAGER_Initialize ***************** 269 ;; Defined at: 270 ;; line 50 in file "mcc_generated_files/pin_manager.c" 271 ;; Parameters: Size Location Type 272 ;; None 273 ;; Auto vars: Size Location Type 274 ;; None 275 ;; Return value: Size Location Type 276 ;; 1 wreg void 277 ;; Registers used: 278 ;; wreg, status,2 279 ;; Tracked objects: 280 ;; On entry : 0/0 281 ;; On exit : 0/0 282 ;; Unchanged: 0/0 283 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5 BANK6 BANK7 BANK8 BANK9 BANK10 BANK1 +1 BANK12 BANK13 BANK14 BANK15 284 ;; Params: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 285 ;; Locals: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 286 ;; Temps: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 287 ;; Totals: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 288 ;;Total ram usage: 0 bytes 289 ;; Hardware stack levels used: 1 290 ;; This function calls: 291 ;; Nothing 292 ;; This function is called by: 293 ;; _SYSTEM_Initialize 294 ;; This function uses a non-reentrant model 295 ;; 296 297 psect text2 298 0010F6 __ptext2: 299 callstack 0 300 0010F6 _PIN_MANAGER_Initialize: 301 callstack 29 302 0010F6 303 ;mcc_generated_files/pin_manager.c: 55: LATE = 0x00; 304 0010F6 0E00 movlw 0 305 0010F8 6E8D movwf 141,c ;volatile 306 307 ;mcc_generated_files/pin_manager.c: 56: LATJ = 0x00; 308 0010FA 0E00 movlw 0 309 0010FC 6E91 movwf 145,c ;volatile 310 311 ;mcc_generated_files/pin_manager.c: 57: LATD = 0x00; 312 0010FE 0E00 movlw 0 313 001100 6E8C movwf 140,c ;volatile 314 315 ;mcc_generated_files/pin_manager.c: 58: LATA = 0x00; 316 001102 0E00 movlw 0 317 001104 6E89 movwf 137,c ;volatile 318 319 ;mcc_generated_files/pin_manager.c: 59: LATF = 0x00; 320 001106 0E00 movlw 0 321 001108 6E8E movwf 142,c ;volatile 322 323 ;mcc_generated_files/pin_manager.c: 60: LATB = 0x00; 324 00110A 0E00 movlw 0 325 00110C 6E8A movwf 138,c ;volatile 326 327 ;mcc_generated_files/pin_manager.c: 61: LATG = 0x00; 328 00110E 0E00 movlw 0 329 001110 6E8F movwf 143,c ;volatile 330 331 ;mcc_generated_files/pin_manager.c: 62: LATC = 0x00; 332 001112 0E00 movlw 0 333 001114 6E8B movwf 139,c ;volatile 334 335 ;mcc_generated_files/pin_manager.c: 63: LATH = 0x00; 336 001116 0E00 movlw 0 337 001118 6E90 movwf 144,c ;volatile 338 00111A 339 ;mcc_generated_files/pin_manager.c: 68: TRISE = 0xFF; 340 00111A 6896 setf 150,c ;volatile 341 00111C 342 ;mcc_generated_files/pin_manager.c: 69: TRISF = 0xFF; 343 00111C 6897 setf 151,c ;volatile 344 345 ;mcc_generated_files/pin_manager.c: 70: TRISA = 0x3F; 346 00111E 0E3F movlw 63 347 001120 6E92 movwf 146,c ;volatile 348 001122 349 ;mcc_generated_files/pin_manager.c: 71: TRISG = 0xFF; 350 001122 6898 setf 152,c ;volatile 351 001124 352 ;mcc_generated_files/pin_manager.c: 72: TRISB = 0xFF; 353 001124 6893 setf 147,c ;volatile 354 001126 355 ;mcc_generated_files/pin_manager.c: 73: TRISH = 0xFF; 356 001126 6899 setf 153,c ;volatile 357 001128 358 ;mcc_generated_files/pin_manager.c: 74: TRISC = 0xFF; 359 001128 6894 setf 148,c ;volatile 360 00112A 361 ;mcc_generated_files/pin_manager.c: 75: TRISD = 0xFF; 362 00112A 6895 setf 149,c ;volatile 363 00112C 364 ;mcc_generated_files/pin_manager.c: 76: TRISJ = 0xFF; 365 00112C 689A setf 154,c ;volatile 366 367 ;mcc_generated_files/pin_manager.c: 81: ADCON1bits.PCFG = 0x00; 368 00112E 0EF0 movlw -16 369 001130 16C1 andwf 193,f,c ;volatile 370 001132 0012 return ;funcret 371 001134 __end_of_PIN_MANAGER_Initialize: 372 callstack 0 373 374 ;; *************** function _OSCILLATOR_Initialize ***************** 375 ;; Defined at: 376 ;; line 58 in file "mcc_generated_files/mcc.c" 377 ;; Parameters: Size Location Type 378 ;; None 379 ;; Auto vars: Size Location Type 380 ;; None 381 ;; Return value: Size Location Type 382 ;; 1 wreg void 383 ;; Registers used: 384 ;; wreg, status,2 385 ;; Tracked objects: 386 ;; On entry : 0/0 387 ;; On exit : 0/0 388 ;; Unchanged: 0/0 389 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5 BANK6 BANK7 BANK8 BANK9 BANK10 BANK1 +1 BANK12 BANK13 BANK14 BANK15 390 ;; Params: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 391 ;; Locals: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 392 ;; Temps: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 393 ;; Totals: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 394 ;;Total ram usage: 0 bytes 395 ;; Hardware stack levels used: 1 396 ;; This function calls: 397 ;; Nothing 398 ;; This function is called by: 399 ;; _SYSTEM_Initialize 400 ;; This function uses a non-reentrant model 401 ;; 402 403 psect text3 404 001188 __ptext3: 405 callstack 0 406 001188 _OSCILLATOR_Initialize: 407 callstack 29 408 001188 409 ;mcc_generated_files/mcc.c: 61: OSCCON = 0x02; 410 001188 0E02 movlw 2 411 00118A 6ED3 movwf 211,c ;volatile 412 413 ;mcc_generated_files/mcc.c: 63: OSCTUNE = 0x00; 414 00118C 0E00 movlw 0 415 00118E 6E9B movwf 155,c ;volatile 416 001190 0012 return ;funcret 417 001192 __end_of_OSCILLATOR_Initialize: 418 callstack 0 419 420 ;; *************** function _ADC_Initialize ***************** 421 ;; Defined at: 422 ;; line 61 in file "mcc_generated_files/adc.c" 423 ;; Parameters: Size Location Type 424 ;; None 425 ;; Auto vars: Size Location Type 426 ;; None 427 ;; Return value: Size Location Type 428 ;; 1 wreg void 429 ;; Registers used: 430 ;; wreg, status,2 431 ;; Tracked objects: 432 ;; On entry : 0/0 433 ;; On exit : 0/0 434 ;; Unchanged: 0/0 435 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5 BANK6 BANK7 BANK8 BANK9 BANK10 BANK1 +1 BANK12 BANK13 BANK14 BANK15 436 ;; Params: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 437 ;; Locals: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 438 ;; Temps: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 439 ;; Totals: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 440 ;;Total ram usage: 0 bytes 441 ;; Hardware stack levels used: 1 442 ;; This function calls: 443 ;; Nothing 444 ;; This function is called by: 445 ;; _SYSTEM_Initialize 446 ;; This function uses a non-reentrant model 447 ;; 448 449 psect text4 450 001158 __ptext4: 451 callstack 0 452 001158 _ADC_Initialize: 453 callstack 29 454 001158 455 ;mcc_generated_files/adc.c: 66: ADCON1 = 0x00; 456 001158 0E00 movlw 0 457 00115A 6EC1 movwf 193,c ;volatile 458 459 ;mcc_generated_files/adc.c: 69: ADCON2 = 0x00; 460 00115C 0E00 movlw 0 461 00115E 6EC0 movwf 192,c ;volatile 462 463 ;mcc_generated_files/adc.c: 72: ADRESL = 0x00; 464 001160 0E00 movlw 0 465 001162 6EC3 movwf 195,c ;volatile 466 467 ;mcc_generated_files/adc.c: 75: ADRESH = 0x00; 468 001164 0E00 movlw 0 469 001166 6EC4 movwf 196,c ;volatile 470 471 ;mcc_generated_files/adc.c: 78: ADCON0 = 0x01; 472 001168 0E01 movlw 1 473 00116A 6EC2 movwf 194,c ;volatile 474 00116C 0012 return ;funcret 475 00116E __end_of_ADC_Initialize: 476 callstack 0 477 478 ;; *************** function _LCD_2x16_WriteMsg ***************** 479 ;; Defined at: 480 ;; line 74 in file "lcd/lcd.c" 481 ;; Parameters: Size Location Type 482 ;; msg 2 2[COMRAM] PTR unsigned char 483 ;; -> STR_1(5), 484 ;; line 1 4[COMRAM] unsigned char 485 ;; Auto vars: Size Location Type 486 ;; None 487 ;; Return value: Size Location Type 488 ;; 1 wreg void 489 ;; Registers used: 490 ;; wreg, status,2, status,0, tblptrl, tblptrh, tblptru, cstack 491 ;; Tracked objects: 492 ;; On entry : 0/0 493 ;; On exit : 0/0 494 ;; Unchanged: 0/0 495 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5 BANK6 BANK7 BANK8 BANK9 BANK10 BANK1 +1 BANK12 BANK13 BANK14 BANK15 496 ;; Params: 3 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 497 ;; Locals: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 498 ;; Temps: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 499 ;; Totals: 3 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 500 ;;Total ram usage: 3 bytes 501 ;; Hardware stack levels used: 1 502 ;; Hardware stack levels required when called: 1 503 ;; This function calls: 504 ;; _LCD_2x16_WriteCmd 505 ;; _LCD_2x16_WriteData 506 ;; This function is called by: 507 ;; _main 508 ;; This function uses a non-reentrant model 509 ;; 510 511 psect text5 512 0010B0 __ptext5: 513 callstack 0 514 0010B0 _LCD_2x16_WriteMsg: 515 callstack 29 516 0010B0 517 ;lcd/lcd.c: 74: void LCD_2x16_WriteMsg(unsigned char * msg, uint8_t line);lcd/lcd.c: 75: + {;lcd/lcd.c: 76: LCD_2x16_WriteCmd(0x80 | (line << 6)); 518 0010B0 4005 rrncf LCD_2x16_WriteMsg@line^0,w,c 519 0010B2 42E8 rrncf wreg,f,c 520 0010B4 0BC0 andlw 192 521 0010B6 0980 iorlw 128 522 0010B8 EC04 F008 call _LCD_2x16_WriteCmd 523 0010BC l942: 524 525 ;lcd/lcd.c: 78: {;lcd/lcd.c: 79: LCD_2x16_WriteData(*msg); 526 0010BC C003 FFF6 movff LCD_2x16_WriteMsg@msg,tblptrl 527 0010C0 C004 FFF7 movff LCD_2x16_WriteMsg@msg+1,tblptrh 528 0010C4 if 0 ;tblptru may be non-zero 529 0010C4 endif 530 0010C4 if 1 ;Program memory is > 0xFFFF, there are 3 active tblptr bytes 531 0010C4 0E00 movlw low (__mediumconst shr (0+16)) 532 0010C6 6EF8 movwf tblptru,c 533 0010C8 endif 534 0010C8 0008 tblrd * 535 0010CA 50F5 movf tablat,w,c 536 0010CC EC31 F008 call _LCD_2x16_WriteData 537 0010D0 538 ;lcd/lcd.c: 80: msg++; 539 0010D0 4A03 infsnz LCD_2x16_WriteMsg@msg^0,f,c 540 0010D2 2A04 incf (LCD_2x16_WriteMsg@msg+1)^0,f,c 541 0010D4 542 ;lcd/lcd.c: 81: }while(*msg != 0); 543 0010D4 C003 FFF6 movff LCD_2x16_WriteMsg@msg,tblptrl 544 0010D8 C004 FFF7 movff LCD_2x16_WriteMsg@msg+1,tblptrh 545 0010DC if 0 ;tblptru may be non-zero 546 0010DC endif 547 0010DC if 1 ;Program memory is > 0xFFFF, there are 3 active tblptr bytes 548 0010DC 0E00 movlw low (__mediumconst shr (0+16)) 549 0010DE 6EF8 movwf tblptru,c 550 0010E0 endif 551 0010E0 0008 tblrd * 552 0010E2 50F5 movf tablat,w,c 553 0010E4 0900 iorlw 0 554 0010E6 A4D8 btfss status,2,c 555 0010E8 EF78 F008 goto u31 556 0010EC EF7A F008 goto u30 557 0010F0 u31: 558 0010F0 EF5E F008 goto l942 559 0010F4 u30: 560 0010F4 0012 return ;funcret 561 0010F6 __end_of_LCD_2x16_WriteMsg: 562 callstack 0 563 564 ;; *************** function _LCD_2x16_WriteData ***************** 565 ;; Defined at: 566 ;; line 58 in file "lcd/lcd.c" 567 ;; Parameters: Size Location Type 568 ;; command 1 wreg unsigned char 569 ;; Auto vars: Size Location Type 570 ;; command 1 1[COMRAM] unsigned char 571 ;; Return value: Size Location Type 572 ;; 1 wreg void 573 ;; Registers used: 574 ;; wreg, status,2, status,0 575 ;; Tracked objects: 576 ;; On entry : 0/0 577 ;; On exit : 0/0 578 ;; Unchanged: 0/0 579 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5 BANK6 BANK7 BANK8 BANK9 BANK10 BANK1 +1 BANK12 BANK13 BANK14 BANK15 580 ;; Params: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 581 ;; Locals: 1 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 582 ;; Temps: 1 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 583 ;; Totals: 2 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 584 ;;Total ram usage: 2 bytes 585 ;; Hardware stack levels used: 1 586 ;; This function calls: 587 ;; Nothing 588 ;; This function is called by: 589 ;; _LCD_2x16_WriteMsg 590 ;; This function uses a non-reentrant model 591 ;; 592 593 psect text6 594 001062 __ptext6: 595 callstack 0 596 001062 _LCD_2x16_WriteData: 597 callstack 29 598 599 ;incstack = 0 600 ;LCD_2x16_WriteData@command stored from wreg 601 001062 6E02 movwf LCD_2x16_WriteData@command^0,c 602 001064 603 ;lcd/lcd.c: 58: void LCD_2x16_WriteData(uint8_t command);lcd/lcd.c: 59: {;lcd/lcd.c: 60: + LATDbits.LATD3 = 1; 604 001064 868C bsf 140,3,c ;volatile 605 001066 606 ;lcd/lcd.c: 61: LATJ = (command & 0xF0) | (LATJ & 0x0F); 607 001066 CF91 F001 movff 3985,??_LCD_2x16_WriteData ;volatile 608 00106A 0E0F movlw 15 609 00106C 1601 andwf ??_LCD_2x16_WriteData^0,f,c 610 00106E 5002 movf LCD_2x16_WriteData@command^0,w,c 611 001070 0BF0 andlw 240 612 001072 1001 iorwf ??_LCD_2x16_WriteData^0,w,c 613 001074 6E91 movwf 145,c ;volatile 614 001076 615 ;lcd/lcd.c: 62: LATDbits.LATD2 = 1; 616 001076 848C bsf 140,2,c ;volatile 617 001078 618 ;lcd/lcd.c: 63: _delay((unsigned long)((1)*(25000000L/4000000.0))); 619 001078 D000 nop2 ;2 cycle nop 620 00107A D000 nop2 ;2 cycle nop 621 00107C D000 nop2 ;2 cycle nop 622 00107E 623 ;lcd/lcd.c: 64: LATDbits.LATD2 = 0; 624 00107E 948C bcf 140,2,c ;volatile 625 001080 626 ;lcd/lcd.c: 65: _delay((unsigned long)((1)*(25000000L/4000000.0))); 627 001080 D000 nop2 ;2 cycle nop 628 001082 D000 nop2 ;2 cycle nop 629 001084 D000 nop2 ;2 cycle nop 630 631 ;lcd/lcd.c: 66: command = command << 4; 632 001086 3802 swapf LCD_2x16_WriteData@command^0,w,c 633 001088 0BF0 andlw 240 634 00108A 6E02 movwf LCD_2x16_WriteData@command^0,c 635 636 ;lcd/lcd.c: 67: LATJ = (command & 0xF0) | (LATJ & 0x0F); 637 00108C CF91 F001 movff 3985,??_LCD_2x16_WriteData ;volatile 638 001090 0E0F movlw 15 639 001092 1601 andwf ??_LCD_2x16_WriteData^0,f,c 640 001094 5002 movf LCD_2x16_WriteData@command^0,w,c 641 001096 0BF0 andlw 240 642 001098 1001 iorwf ??_LCD_2x16_WriteData^0,w,c 643 00109A 6E91 movwf 145,c ;volatile 644 00109C 645 ;lcd/lcd.c: 68: LATDbits.LATD2 = 1; 646 00109C 848C bsf 140,2,c ;volatile 647 00109E 648 ;lcd/lcd.c: 69: _delay((unsigned long)((1)*(25000000L/4000000.0))); 649 00109E D000 nop2 ;2 cycle nop 650 0010A0 D000 nop2 ;2 cycle nop 651 0010A2 D000 nop2 ;2 cycle nop 652 0010A4 653 ;lcd/lcd.c: 70: LATDbits.LATD2 = 0; 654 0010A4 948C bcf 140,2,c ;volatile 655 0010A6 656 ;lcd/lcd.c: 71: _delay((unsigned long)((100)*(25000000L/4000000.0))); 657 0010A6 0ED0 movlw 208 658 0010A8 u47: 659 0010A8 2EE8 decfsz wreg,f,c 660 0010AA D7FE bra u47 661 0010AC F000 nop 662 0010AE 0012 return ;funcret 663 0010B0 __end_of_LCD_2x16_WriteData: 664 callstack 0 665 666 ;; *************** function _LCD_2x16_WriteCmd ***************** 667 ;; Defined at: 668 ;; line 43 in file "lcd/lcd.c" 669 ;; Parameters: Size Location Type 670 ;; command 1 wreg unsigned char 671 ;; Auto vars: Size Location Type 672 ;; command 1 1[COMRAM] unsigned char 673 ;; Return value: Size Location Type 674 ;; 1 wreg void 675 ;; Registers used: 676 ;; wreg, status,2, status,0 677 ;; Tracked objects: 678 ;; On entry : 0/0 679 ;; On exit : 0/0 680 ;; Unchanged: 0/0 681 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5 BANK6 BANK7 BANK8 BANK9 BANK10 BANK1 +1 BANK12 BANK13 BANK14 BANK15 682 ;; Params: 0 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 683 ;; Locals: 1 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 684 ;; Temps: 1 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 685 ;; Totals: 2 0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 686 ;;Total ram usage: 2 bytes 687 ;; Hardware stack levels used: 1 688 ;; This function calls: 689 ;; Nothing 690 ;; This function is called by: 691 ;; _LCD_2x16_WriteMsg 692 ;; _Lcd_Init 693 ;; This function uses a non-reentrant model 694 ;; 695 696 psect text7 697 001008 __ptext7: 698 callstack 0 699 001008 _LCD_2x16_WriteCmd: 700 callstack 29 701 702 ;incstack = 0 703 ;LCD_2x16_WriteCmd@command stored from wreg 704 001008 6E02 movwf LCD_2x16_WriteCmd@command^0,c 705 00100A 706 ;lcd/lcd.c: 43: void LCD_2x16_WriteCmd(uint8_t command);lcd/lcd.c: 44: {;lcd/lcd.c: 45: + LATDbits.LATD3 = 0; 707 00100A 968C bcf 140,3,c ;volatile 708 00100C 709 ;lcd/lcd.c: 46: LATJ = (command & 0xF0) | (LATJ & 0x0F); 710 00100C CF91 F001 movff 3985,??_LCD_2x16_WriteCmd ;volatile 711 001010 0E0F movlw 15 712 001012 1601 andwf ??_LCD_2x16_WriteCmd^0,f,c 713 001014 5002 movf LCD_2x16_WriteCmd@command^0,w,c 714 001016 0BF0 andlw 240 715 001018 1001 iorwf ??_LCD_2x16_WriteCmd^0,w,c 716 00101A 6E91 movwf 145,c ;volatile 717 00101C 718 ;lcd/lcd.c: 47: LATDbits.LATD2 = 1; 719 00101C 848C bsf 140,2,c ;volatile 720 00101E 721 ;lcd/lcd.c: 48: _delay((unsigned long)((10)*(25000000L/4000000.0))); 722 00101E 0E14 movlw 20 723 001020 u57: 724 001020 2EE8 decfsz wreg,f,c 725 001022 D7FE bra u57 726 001024 D000 nop2 727 001026 728 ;lcd/lcd.c: 49: LATDbits.LATD2 = 0; 729 001026 948C bcf 140,2,c ;volatile 730 001028 731 ;lcd/lcd.c: 50: _delay((unsigned long)((1)*(25000000L/4000000.0))); 732 001028 D000 nop2 ;2 cycle nop 733 00102A D000 nop2 ;2 cycle nop 734 00102C D000 nop2 ;2 cycle nop 735 00102E 736 ;lcd/lcd.c: 51: command = command << 4; 737 00102E 3802 swapf LCD_2x16_WriteCmd@command^0,w,c 738 001030 0BF0 andlw 240 739 001032 6E02 movwf LCD_2x16_WriteCmd@command^0,c 740 001034 741 ;lcd/lcd.c: 52: LATJ = (command & 0xF0) | (LATJ & 0x0F); 742 001034 CF91 F001 movff 3985,??_LCD_2x16_WriteCmd ;volatile 743 001038 0E0F movlw 15 744 00103A 1601 andwf ??_LCD_2x16_WriteCmd^0,f,c 745 00103C 5002 movf LCD_2x16_WriteCmd@command^0,w,c 746 00103E 0BF0 andlw 240 747 001040 1001 iorwf ??_LCD_2x16_WriteCmd^0,w,c 748 001042 6E91 movwf 145,c ;volatile 749 001044 750 ;lcd/lcd.c: 53: LATDbits.LATD2 = 1; 751 001044 848C bsf 140,2,c ;volatile 752 001046 753 ;lcd/lcd.c: 54: _delay((unsigned long)((10)*(25000000L/4000000.0))); 754 001046 0E14 movlw 20 755 001048 u67: 756 001048 2EE8 decfsz wreg,f,c 757 00104A D7FE bra u67 758 00104C D000 nop2 759 00104E 760 ;lcd/lcd.c: 55: LATDbits.LATD2 = 0; 761 00104E 948C bcf 140,2,c ;volatile 762 001050 763 ;lcd/lcd.c: 56: _delay((unsigned long)((3)*(25000000L/4000.0))); 764 001050 0E19 movlw 25 765 001052 6E01 movwf ??_LCD_2x16_WriteCmd^0,c 766 001054 0E58 movlw 88 767 001056 u77: 768 001056 2EE8 decfsz wreg,f,c 769 001058 D7FE bra u77 770 00105A 2E01 decfsz ??_LCD_2x16_WriteCmd^0,f,c 771 00105C D7FC bra u77 772 00105E D000 nop2 773 001060 0012 return ;funcret 774 001062 __end_of_LCD_2x16_WriteCmd: 775 callstack 0 776 777 psect rparam 778 000000 779 psect config 780 781 ;Config register CONFIG1L @ 0x1FFF8 782 ; Watchdog Timer Enable bit 783 ; WDT = OFF, WDT disabled (control is placed on SWDTEN bit) 784 ; Stack Overflow/Underflow Reset Enable bit 785 ; STVR = ON, Reset on stack overflow/underflow enabled 786 ; Extended Instruction Set Enable bit 787 ; XINST = OFF, Instruction set extension and Indexed Addressing mode disabled (Legacy mo + de) 788 ; Background Debugger Enable bit 789 ; DEBUG = OFF, Background debugger disabled; RB6 and RB7 configured as general purpose I + /O pins 790 01FFF8 org 131064 791 01FFF8 A0 db 160 792 793 ;Config register CONFIG1H @ 0x1FFF9 794 ; Code Protection bit 795 ; CP0 = OFF, Program memory is not code-protected 796 01FFF9 org 131065 797 01FFF9 F4 db 244 798 799 ;Config register CONFIG2L @ 0x1FFFA 800 ; Oscillator Selection bits 801 ; FOSC = HS, HS oscillator 802 ; Default/Reset System Clock Select bit 803 ; FOSC2 = ON, Clock selected by FOSC1:FOSC0 as system clock is enabled when OSCCON<1:0> + = 00 804 ; Fail-Safe Clock Monitor Enable 805 ; FCMEN = ON, Fail-Safe Clock Monitor enabled 806 ; Two-Speed Start-up (Internal/External Oscillator Switchover) Control bit 807 ; IESO = ON, Two-Speed Start-up enabled 808 01FFFA org 131066 809 01FFFA C4 db 196 810 811 ;Config register CONFIG2H @ 0x1FFFB 812 ; Watchdog Timer Postscaler Select bits 813 ; WDTPS = 32768, 1:32768 814 01FFFB org 131067 815 01FFFB FF db 255 816 817 ;Config register CONFIG3L @ 0x1FFFC 818 ; External Address Bus Shift Enable bit 819 ; EASHFT = ON, Address shifting enabled; address on external bus is offset to start at 0 + 00000h 820 ; External Memory Bus 821 ; MODE = MM, Microcontroller mode, external bus disabled 822 ; Data Bus Width Select bit 823 ; BW = 16, 16-Bit Data Width mode 824 ; External Bus Wait Enable bit 825 ; WAIT = OFF, Wait states for operations on external memory bus disabled 826 01FFFC org 131068 827 01FFFC F8 db 248 828 829 ;Config register CONFIG3H @ 0x1FFFD 830 ; ECCP2 MUX bit 831 ; CCP2MX = ON, ECCP2/P2A is multiplexed with RC1 832 ; ECCP MUX bit 833 ; ECCPMX = ON, ECCP1 outputs (P1B/P1C) are multiplexed with RE6 and RE5; ECCP3 outputs ( + P3B/P3C) are multiplexed with RE4 and RE3 834 ; Ethernet LED Enable bit 835 ; ETHLED = ON, RA0/RA1 are multiplexed with LEDA/LEDB when Ethernet module is enabled an + d function as I/O when Ethernet is disabled 836 01FFFD org 131069 837 01FFFD F7 db 247 838 tosu equ 0xFFF 839 tosh equ 0xFFE 840 tosl equ 0xFFD 841 stkptr equ 0xFFC 842 pclatu equ 0xFFB 843 pclath equ 0xFFA 844 pcl equ 0xFF9 845 tblptru equ 0xFF8 846 tblptrh equ 0xFF7 847 tblptrl equ 0xFF6 848 tablat equ 0xFF5 849 prodh equ 0xFF4 850 prodl equ 0xFF3 851 indf0 equ 0xFEF 852 postinc0 equ 0xFEE 853 postdec0 equ 0xFED 854 preinc0 equ 0xFEC 855 plusw0 equ 0xFEB 856 fsr0h equ 0xFEA 857 fsr0l equ 0xFE9 858 wreg equ 0xFE8 859 indf1 equ 0xFE7 860 postinc1 equ 0xFE6 861 postdec1 equ 0xFE5 862 preinc1 equ 0xFE4 863 plusw1 equ 0xFE3 864 fsr1h equ 0xFE2 865 fsr1l equ 0xFE1 866 bsr equ 0xFE0 867 indf2 equ 0xFDF 868 postinc2 equ 0xFDE 869 postdec2 equ 0xFDD 870 preinc2 equ 0xFDC 871 plusw2 equ 0xFDB 872 fsr2h equ 0xFDA 873 fsr2l equ 0xFD9 874 status equ 0xFD8 Data Sizes: Strings 5 Constant 0 Data 0 BSS 3 Persistent 0 Stack 0 Auto Spaces: Space Size Autos Used COMRAM 95 7 10 BANK0 160 0 0 BANK1 256 0 0 BANK2 256 0 0 BANK3 256 0 0 BANK4 256 0 0 BANK5 256 0 0 BANK6 256 0 0 BANK7 256 0 0 BANK8 256 0 0 BANK9 256 0 0 BANK10 256 0 0 BANK11 256 0 0 BANK12 256 0 0 BANK13 256 0 0 BANK14 128 0 0 BANK15 96 0 0 Pointer List with Targets: ADC_InterruptHandler PTR FTN()void size(3) Largest target is 1 -> Absolute function(), LCD_2x16_WriteMsg@msg PTR unsigned char size(2) Largest target is 5 -> STR_1(CODE[5]), main@msg PTR unsigned char size(2) Largest target is 5 -> STR_1(CODE[5]), Critical Paths under _main in COMRAM _main->_LCD_2x16_WriteMsg _LCD_2x16_WriteMsg->_LCD_2x16_WriteCmd _LCD_2x16_WriteMsg->_LCD_2x16_WriteData Critical Paths under _main in BANK0 None. Critical Paths under _main in BANK1 None. Critical Paths under _main in BANK2 None. Critical Paths under _main in BANK3 None. Critical Paths under _main in BANK4 None. Critical Paths under _main in BANK5 None. Critical Paths under _main in BANK6 None. Critical Paths under _main in BANK7 None. Critical Paths under _main in BANK8 None. Critical Paths under _main in BANK9 None. Critical Paths under _main in BANK10 None. Critical Paths under _main in BANK11 None. Critical Paths under _main in BANK12 None. Critical Paths under _main in BANK13 None. Critical Paths under _main in BANK14 None. Critical Paths under _main in BANK15 None. Call Graph Tables: --------------------------------------------------------------------------------- (Depth) Function Calls Base Space Used Autos Params Refs --------------------------------------------------------------------------------- (0) _main 2 2 0 332 5 COMRAM 2 2 0 _LCD_2x16_WriteMsg _SYSTEM_Initialize --------------------------------------------------------------------------------- (1) _SYSTEM_Initialize 0 0 0 0 _ADC_Initialize _OSCILLATOR_Initialize _PIN_MANAGER_Initialize --------------------------------------------------------------------------------- (2) _PIN_MANAGER_Initialize 0 0 0 0 --------------------------------------------------------------------------------- (2) _OSCILLATOR_Initialize 0 0 0 0 --------------------------------------------------------------------------------- (2) _ADC_Initialize 0 0 0 0 --------------------------------------------------------------------------------- (1) _LCD_2x16_WriteMsg 3 0 3 309 2 COMRAM 3 0 3 _LCD_2x16_WriteCmd _LCD_2x16_WriteData --------------------------------------------------------------------------------- (2) _LCD_2x16_WriteData 2 2 0 45 0 COMRAM 2 2 0 --------------------------------------------------------------------------------- (2) _LCD_2x16_WriteCmd 2 2 0 45 0 COMRAM 2 2 0 --------------------------------------------------------------------------------- Estimated maximum stack depth 2 --------------------------------------------------------------------------------- Call Graph Graphs: _main (ROOT) _LCD_2x16_WriteMsg _LCD_2x16_WriteCmd _LCD_2x16_WriteData _SYSTEM_Initialize _ADC_Initialize _OSCILLATOR_Initialize _PIN_MANAGER_Initialize Address spaces: Name Size Autos Total Cost Usage BIGRAM E7F 0 0 43 0.0% BITBANK13 100 0 0 30 0.0% BANK13 100 0 0 31 0.0% BITBANK12 100 0 0 28 0.0% BANK12 100 0 0 29 0.0% BITBANK11 100 0 0 26 0.0% BANK11 100 0 0 27 0.0% BITBANK10 100 0 0 24 0.0% BANK10 100 0 0 25 0.0% BITBANK9 100 0 0 22 0.0% BANK9 100 0 0 23 0.0% BITBANK8 100 0 0 20 0.0% BANK8 100 0 0 21 0.0% BITBANK7 100 0 0 18 0.0% BANK7 100 0 0 19 0.0% BITBANK6 100 0 0 16 0.0% BANK6 100 0 0 17 0.0% BITBANK5 100 0 0 14 0.0% BANK5 100 0 0 15 0.0% BITBANK4 100 0 0 12 0.0% BANK4 100 0 0 13 0.0% BITBANK3 100 0 0 10 0.0% BANK3 100 0 0 11 0.0% BITBANK2 100 0 0 8 0.0% BANK2 100 0 0 9 0.0% BITBANK1 100 0 0 6 0.0% BANK1 100 0 0 7 0.0% BITBANK0 A0 0 0 4 0.0% BANK0 A0 0 0 5 0.0% BITBIGSFR 80 0 0 42 0.0% BITBANK14 80 0 0 33 0.0% BANK14 80 0 0 34 0.0% BITBANK15 60 0 0 35 0.0% BANK15 60 0 0 36 0.0% BIGRAM_1 60 0 0 41 0.0% BITCOMRAM 5F 0 0 0 0.0% COMRAM 5F 7 A 1 10.5% BITBIGSFR_1h 2C 0 0 37 0.0% BITBIGSFR_1llll 29 0 0 40 0.0% BITBIGSFR_1lhl 24 0 0 39 0.0% BITBIGSFR_1lhhh E 0 0 38 0.0% BIGSFR_1 0 0 0 200 0.0% BIGSFR 0 0 0 200 0.0% BITSFR_1 0 0 0 200 0.0% SFR_1 0 0 0 200 0.0% BITSFR 0 0 0 200 0.0% SFR 0 0 0 200 0.0% STACK 0 0 0 2 0.0% NULL 0 0 0 0 0.0% ABS 0 0 A 32 0.0% DATA 0 0 A 3 0.0% CODE 0 0 0 0 0.0% Microchip Technology PIC18 Macro Assembler V2.40 build 20220703182018 Symbol Table Fri Feb 24 13:49:42 2023 l13 117A l16 1190 l91 116C l69 1132 u30 10F4 u31 10F0 u47 10A8 u57 1020 u67 1048 u77 1056 l130 1060 l133 10AE l138 10F4 l820 1122 l830 112C l822 1124 l814 10F6 l840 101C l832 1188 l824 1126 l816 111A l850 1034 l842 101E l834 1158 l826 1128 l818 111C l852 1044 l844 1026 l836 100A l860 1064 l940 10B0 l828 112A l854 1046 l846 1028 l838 100C l870 1080 l862 1066 l942 10BC l950 1138 l856 104E l848 102E l872 109C l864 1076 l944 10D0 l880 116E l952 1140 l858 1050 l874 109E l866 1078 l946 10D4 l876 10A4 l868 107E l948 1134 l878 10A6 wreg 000FE8 STR_1 1001 _LATA 000F89 _LATB 000F8A _LATC 000F8B _LATD 000F8C _LATE 000F8D _LATF 000F8E _LATG 000F8F _LATH 000F90 _LATJ 000F91 _main 1134 start 0000 ___param_bank 000000 __end_of_OSCILLATOR_Initialize 1192 ?_main 0001 _TRISA 000F92 _TRISB 000F93 _TRISC 000F94 _TRISD 000F95 _TRISE 000F96 _TRISF 000F97 _TRISG 000F98 _TRISH 000F99 _TRISJ 000F9A tablat 000FF5 status 000FD8 __initialization 117C __end_of_main 1158 ??_main 0006 __activetblptr 000003 _ADCON0 000FC2 _ADCON1 000FC1 _ADCON2 000FC0 _ADRESH 000FC4 _ADRESL 000FC3 _OSCCON 000FD3 isa$std 000001 __mediumconst 0000 tblptrh 000FF7 tblptrl 000FF6 tblptru 000FF8 _SYSTEM_Initialize 116E __accesstop 0060 __end_of__initialization 1182 ?_SYSTEM_Initialize 0001 ___rparam_used 000001 __pcstackCOMRAM 0001 ??_SYSTEM_Initialize 0001 _LCD_2x16_WriteCmd 1008 _LCD_2x16_WriteMsg 10B0 __end_of_SYSTEM_Initialize 117C ?_LCD_2x16_WriteCmd 0001 ?_LCD_2x16_WriteMsg 0003 __end_of_LCD_2x16_WriteData 10B0 ??_LCD_2x16_WriteCmd 0001 ??_LCD_2x16_WriteMsg 0006 __end_of_LCD_2x16_WriteCmd 1062 __end_of_LCD_2x16_WriteMsg 10F6 _OSCTUNE 000F9B _ADC_InterruptHandler 0008 __Hparam 0000 __Lparam 0000 __psmallconst 1000 __pcinit 117C __ramtop 1000 LCD_2x16_WriteMsg@msg 0003 __ptext0 1134 __ptext1 116E __ptext2 10F6 __ptext3 1188 __ptext4 1158 __ptext5 10B0 __ptext6 1062 __ptext7 1008 _OSCILLATOR_Initialize 1188 ??_PIN_MANAGER_Initialize 0001 LCD_2x16_WriteCmd@command 0002 main@msg 0006 end_of_initialization 1182 LCD_2x16_WriteData@command 0002 _TRISDbits 000F95 _ADC_Initialize 1158 ?_OSCILLATOR_Initialize 0001 start_initialization 117C _LCD_2x16_WriteData 1062 __end_of_ADC_Initialize 116E ?_LCD_2x16_WriteData 0001 __pbssCOMRAM 0008 ??_LCD_2x16_WriteData 0001 _PIN_MANAGER_Initialize 10F6 ?_ADC_Initialize 0001 __smallconst 1000 _LATDbits 000F8C _ADCON0bits 000FC2 _ADCON1bits 000FC1 __Hrparam 0000 __Lrparam 0000 ??_OSCILLATOR_Initialize 0001 LCD_2x16_WriteMsg@line 0005 isa$xinst 000000 ?_PIN_MANAGER_Initialize 0001 ??_ADC_Initialize 0001 __end_of_PIN_MANAGER_Initialize 1134