Originally posted by bernte_one
View Post

;DAVID MILLS #include "p12f675.inc" errorlevel -302 ; CONFIG ; __config 0x319C ; __CONFIG _FOSC_INTRCIO & _WDTE_ON & _PWRTE_OFF & _MCLRE_OFF & _BOREN_OFF & _CP_OFF & _CPD_OFF ; __CONFIG _INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_OFF & _MCLRE_OFF & _BODEN_OFF & _CP_OFF & _CPD_OFF __CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT & _MCLRE_OFF & _CPD_OFF ; cblock 0x20 ; endc radix HEX org 0x000 ; reset vector START MOVLW 0x3 ; 3003 0 1 MOVWF PCLATH ; 008A 1 2 GOTO SETUP ;0x357 ; 2B57 2 3 NOP ; 0 3 4 BTFSC STATUS, 0x5 ; 1A83 4 5 GOTO G0xA ; 280A 5 6 MOVWF 0x24 ; 00A4 6 7 SWAPF STATUS, W ; 0.00E+00 7 8 MOVWF 0x25 ; 00A5 8 9 GOTO G0xF ; 280F 9 10 G0xA BCF STATUS, 0x5 ; 1283 00A 11 MOVWF 0x24 ; 00A4 00B 12 SWAPF STATUS, W ; 0.00E+00 00C 13 MOVWF 0x25 ; 00A5 00D 14 BSF 0x25, 0x1 ; 14A5 00E 15 G0xF MOVF PCLATH, W ; 080A 00F 16 MOVWF 0x2B ; 00AB 10 17 CLRF PCLATH ; 018A 11 18 BCF STATUS, 0x7 ; 1383 12 19 SWAPF 0x24, F ; 0EA4 13 20 MOVF FSR, W ; 804 14 21 MOVWF 0x26 ; 00A6 15 22 MOVF 0x20, W ; 820 16 23 MOVWF 0x27 ; 00A7 17 24 MOVF 0x21, W ; 821 18 25 MOVWF 0x28 ; 00A8 19 26 MOVF 0x22, W ; 822 01A 27 MOVWF 0x29 ; 00A9 01B 28 MOVF 0x23, W ; 823 01C 29 MOVWF 0x2A ; 00AA 01D 30 BCF STATUS, 0x5 ; 1283 01E 31 BTFSS INTCON, 0x5 ; 1E8B 01F 32 GOTO G0x23 ; 2823 20 33 BTFSC INTCON, 0x2 ; 190B 21 34 GOTO G0x36 ; 2836 22 35 G0x23 MOVF 0x26, W ; 826 23 36 MOVWF FSR ; 84 24 37 MOVF 0x27, W ; 827 25 38 MOVWF 0x20 ; 00A0 26 39 MOVF 0x28, W ; 828 27 40 MOVWF 0x21 ; 00A1 28 41 MOVF 0x29, W ; 829 29 42 MOVWF 0x22 ; 00A2 02A 43 MOVF 0x2A, W ; 082A 02B 44 MOVWF 0x23 ; 00A3 02C 45 MOVF 0x2B, W ; 082B 02D 46 MOVWF PCLATH ; 008A 02E 47 SWAPF 0x25, W ; 0.00E+00 02F 48 MOVWF STATUS ; 83 30 49 BCF STATUS, 0x5 ; 1283 31 50 SWAPF 0x24, W ; 0.00E+00 32 51 BTFSC 0x25, 0x1 ; 18A5 33 52 BSF STATUS, 0x5 ; 1683 34 53 RETFIE ; 9 35 54 G0x36 MOVF TMR1H, W ; 080F 36 55 MOVWF 0x23 ; 00A3 37 56 MOVF TMR1L, W ; 080E 38 57 MOVWF 0x20 ; 00A0 39 58 MOVF TMR1H, W ; 080F 03A 59 SUBWF 0x23, W ; 223 03B 60 BTFSS STATUS, 0x2 ; 1D03 03C 61 GOTO G0x36 ; 2836 03D 62 MOVF 0x20, W ; 820 03E 63 MOVWF 0x2D ; 00AD 03F 64 MOVF 0x23, W ; 823 40 65 MOVWF 0x2E ; 00AE 41 66 CLRF TMR1L ; 018E 42 67 CLRF TMR1H ; 018F 43 68 CLRF TMR1L ; 018E 44 69 MOVF 0x3B, W ; 083B 45 70 MOVWF TMR0 ; 81 46 71 BSF 0x2C, 0x0 ; 142C 47 72 BCF INTCON, 0x2 ; 110B 48 73 BCF PCLATH, 0x3 ; 118A 49 74 GOTO G0x23 ; 2823 04A 75 C0x4B MOVLW 0x4A ; 304A 04B 76 MOVWF FSR ; 84 04C 77 MOVF INDF, W ; 800 04D 78 BTFSC STATUS, 0x2 ; 1903 04E 79 GOTO G0x61 ; 2861 04F 80 G0x50 MOVLW 0x6 ; 3006 50 81 MOVWF 0x21 ; 00A1 51 82 G0x52 MOVLW 0xBF ; 30BF 52 83 MOVWF 0x20 ; 00A0 53 84 G0x54 CLRWDT ; 64 54 85 DECFSZ 0x20, F ; 0BA0 55 86 GOTO G0x54 ; 2854 56 87 DECFSZ 0x21, F ; 0BA1 57 88 GOTO G0x52 ; 2852 58 89 MOVLW 0x7A ; 307A 59 90 MOVWF 0x20 ; 00A0 05A 91 G0x5B DECFSZ 0x20, F ; 0BA0 05B 92 GOTO G0x5B ; 285B 05C 93 GOTO G0x5E ; 285E 05D 94 G0x5E CLRWDT ; 64 05E 95 DECFSZ INDF, F ; 0B80 05F 96 GOTO G0x50 ; 2850 60 97 G0x61 RETURN ; 8 61 98 MOVLW 0x3 ; 3003 62 99 SUBWF 0x4B, F ; 02CB 63 100 BTFSS STATUS, 0x0 ; 1C03 64 101 GOTO G0x70 ; 2870 65 102 MOVLW 0x4B ; 304B 66 103 MOVWF FSR ; 84 67 104 MOVF INDF, W ; 800 68 105 BTFSC STATUS, 0x2 ; 1903 69 106 GOTO G0x70 ; 2870 06A 107 GOTO G0x6E ; 286E 06B 108 G0x6C NOP ; 0 06C 109 CLRWDT ; 64 06D 110 G0x6E DECFSZ INDF, F ; 0B80 06E 111 GOTO G0x6C ; 286C 06F 112 G0x70 RETURN ; 8 70 113 BSF STATUS, 0x5 ; 1683 71 114 BSF GPIO, 0x0 ; 1405 72 115 BCF STATUS, 0x5 ; 1283 73 116 G0x74 BSF GPIO, 0x4 ; 1605 74 117 MOVF 0x49, W ; 849 75 118 MOVWF 0x4B ; 00CB 76 119 CALL 0x62 ; 2062 77 120 BCF GPIO, 0x4 ; 1205 78 121 MOVF 0x49, W ; 849 79 122 MOVWF 0x4B ; 00CB 07A 123 CALL 0x62 ; 2062 07B 124 DECF 0x4A, F ; 03CA 07C 125 MOVF 0x4A, F ; 08CA 07D 126 BTFSS STATUS, 0x2 ; 1D03 07E 127 GOTO G0x74 ; 2874 07F 128 RETURN ; 8 80 129 BSF STATUS, 0x5 ; 1683 81 130 BSF GPIO, 0x0 ; 1405 82 131 MOVLW 0xF0 ; 30F0 83 132 BCF STATUS, 0x5 ; 1283 84 133 MOVWF 0x49 ; 00C9 85 134 MOVLW 0x64 ; 3064 86 135 MOVWF 0x4A ; 00CA 87 136 CALL 0x71 ; 2071 88 137 MOVLW 0xF0 ; 30F0 89 138 MOVWF 0x49 ; 00C9 08A 139 MOVLW 0x64 ; 3064 08B 140 MOVWF 0x4A ; 00CA 08C 141 CALL 0x71 ; 2071 08D 142 MOVLW 0xF0 ; 30F0 08E 143 MOVWF 0x49 ; 00C9 08F 144 MOVLW 0x64 ; 3064 90 145 MOVWF 0x4A ; 00CA 91 146 CALL 0x71 ; 2071 92 147 MOVLW 0x1E ; 301E 93 148 MOVWF 0x4A ; 00CA 94 149 CALL C0x4B ; 204B 95 150 MOVLW 0xC8 ; 30C8 96 151 MOVWF 0x49 ; 00C9 97 152 MOVLW 0x78 ; 3078 98 153 MOVWF 0x4A ; 00CA 99 154 CALL 0x71 ; 2071 09A 155 MOVLW 0xC8 ; 30C8 09B 156 MOVWF 0x49 ; 00C9 09C 157 MOVLW 0x78 ; 3078 09D 158 MOVWF 0x4A ; 00CA 09E 159 CALL 0x71 ; 2071 09F 160 MOVLW 0xC8 ; 30C8 0A0 161 MOVWF 0x49 ; 00C9 0A1 162 MOVLW 0x78 ; 3078 0A2 163 MOVWF 0x4A ; 00CA 0A3 164 CALL 0x71 ; 2071 0A4 165 MOVLW 0x1E ; 301E 0A5 166 MOVWF 0x4A ; 00CA 0A6 167 CALL C0x4B ; 204B 0A7 168 MOVLW 0x78 ; 3078 0A8 169 MOVWF 0x49 ; 00C9 0A9 170 MOVLW 0xC8 ; 30C8 0AA 171 MOVWF 0x4A ; 00CA 0AB 172 CALL 0x71 ; 2071 0AC 173 MOVLW 0x78 ; 3078 0AD 174 MOVWF 0x49 ; 00C9 0AE 175 MOVLW 0xC8 ; 30C8 0AF 176 MOVWF 0x4A ; 00CA 0B0 177 CALL 0x71 ; 2071 0B1 178 MOVLW 0x78 ; 3078 0B2 179 MOVWF 0x49 ; 00C9 0B3 180 MOVLW 0xC8 ; 30C8 0B4 181 MOVWF 0x4A ; 00CA 0B5 182 CALL 0x71 ; 2071 0B6 183 RETURN ; 8 0B7 184 G0xB8 MOVLW 0x7 ; 3007 0B8 185 MOVWF CMCON ; 99 0B9 186 BSF STATUS, 0x5 ; 1683 0BA 187 MOVF GPIO, W ; 805 0BB 188 MOVWF GPIO ; 85 0BC 189 CLRWDT ; 64 0BD 190 MOVLW 0x10 ; 3010 0BE 191 BCF STATUS, 0x5 ; 1283 0BF 192 MOVWF 0x20 ; 00A0 0C0 193 G0xC1 DECFSZ 0x20, F ; 0BA0 0C1 194 GOTO G0xC1 ; 28C1 0C2 195 MOVF CMCON, W ; 819 0C3 196 BCF PIR1, 0x3 ; 118C 0C4 197 MOVLW 0x3F ; 303F 0C5 198 BSF STATUS, 0x5 ; 1683 0C6 199 MOVWF GPIO ; 85 0C7 200 BCF STATUS, 0x5 ; 1283 0C8 201 BCF ADCON0, 0x6 ; 131F 0C9 202 BSF STATUS, 0x5 ; 1683 0CA 203 BCF ADCON0, 0x0 ; 101F 0CB 204 BCF ADCON0, 0x1 ; 109F 0CC 205 BSF ADCON0, 0x2 ; 151F 0CD 206 BCF ADCON0, 0x3 ; 119F 0CE 207 BSF ADCON0, 0x4 ; 161F 0CF 208 BSF ADCON0, 0x5 ; 169F 0D0 209 BCF ADCON0, 0x6 ; 131F 0D1 210 BCF STATUS, 0x5 ; 1283 0D2 211 BCF ADCON0, 0x7 ; 139F 0D3 212 BSF ADCON0, 0x0 ; 141F 0D4 213 MOVLW 0x8 ; 3008 0D5 214 MOVWF 0x21 ; 00A1 0D6 215 MOVF ADCON0, W ; 081F 0D7 216 ANDLW 0xF3 ; 39F3 0D8 217 IORWF 0x21, W ; 421 0D9 218 MOVWF ADCON0 ; 009F 0DA 219 CLRWDT ; 64 0DB 220 MOVLW 0xC7 ; 30C7 0DC 221 MOVWF 0x4B ; 00CB 0DD 222 CALL 0x62 ; 2062 0DE 223 BSF ADCON0, 0x1 ; 149F 0DF 224 G0xE0 BTFSC ADCON0, 0x1 ; 189F 0.00E+00 225 GOTO G0xE0 ; 2.80E+01 0.00E+00 226 MOVF ADRESH, W ; 081E 0.00E+00 227 MOVWF 0x44 ; 00C4 0.00E+00 228 CLRF 0x46 ; 01C6 0.00E+00 229 G0xE5 ;CHECK MOVF 0x46, W ; 846 0.00E+00 230 SUBLW 0x13 ; 3C13 0.00E+00 231 BTFSS STATUS, 0x0 ; 1C03 0.00E+00 232 GOTO G0xFD ; 28FD 0.00E+00 233 CLRWDT ; 64 0.00E+00 234 MOVLW 0xA6 ; 30A6 0EA 235 MOVWF 0x20 ; 00A0 0EB 236 G0xEC DECFSZ 0x20, F ; 0BA0 0EC 237 GOTO G0xEC ; 28EC 0ED 238 BSF ADCON0, 0x1 ; 149F 0EE 239 G0xEF BTFSC ADCON0, 0x1 ; 189F 0EF 240 GOTO G0xEF ; 28EF 0F0 241 MOVF ADRESH, W ; 081E 0F1 242 MOVWF 0x45 ; 00C5 0F2 243 MOVF 0x45, W ; 845 0F3 244 SUBWF 0x44, W ; 244 0F4 245 BTFSS STATUS, 0x0 ; 1C03 0F5 246 INCF 0x44, F ; 0AC4 0F6 247 MOVF 0x44, W ; 844 0F7 248 SUBWF 0x45, W ; 245 0F8 249 BTFSS STATUS, 0x0 ; 1C03 0F9 250 DECF 0x44, F ; 03C4 0FA 251 INCF 0x46, F ; 0AC6 0FB 252 GOTO G0xE5 ; 2.80E+06 0FC 253 G0xFD MOVF 0x44, W ; 844 0FD 254 SUBLW 0x68 ; 3C68 0FE 255 BTFSS STATUS, 0x0 ; 1C03 0FF 256 GOTO G0x122 ; 2922 100 257 BSF STATUS, 0x5 ; 1683 101 258 BCF GPIO, 0x4 ; 1205 102 259 BCF STATUS, 0x5 ; 1283 103 260 CALL 0x81 ; 2081 104 261 MOVLW 0xC8 ; 30C8 105 262 MOVWF 0x4A ; 00CA 106 263 CALL C0x4B ; 204B 107 264 CALL 0x81 ; 2081 108 265 BSF STATUS, 0x5 ; 1683 109 266 BCF GPIO, 0x0 ; 1005 10A 267 BCF STATUS, 0x5 ; 1283 10B 268 CLRF 0x46 ; 01C6 10C 269 G0x10D MOVF 0x46, W ; 846 10D 270 SUBLW 0x13 ; 3C13 10E 271 BTFSS STATUS, 0x0 ; 1C03 10F 272 GOTO G0x11B ; 291B 110 273 BSF GPIO, 0x0 ; 1405 111 274 MOVLW 0x50 ; 3050 112 275 MOVWF 0x4A ; 00CA 113 276 CALL C0x4B ; 204B 114 277 BCF GPIO, 0x0 ; 1005 115 278 MOVLW 0x50 ; 3050 116 279 MOVWF 0x4A ; 00CA 117 280 CALL C0x4B ; 204B 118 281 INCF 0x46, F ; 0AC6 119 282 GOTO G0x10D ; 290D 11A 283 G0x11B MOVLW 0x4 ; 3004 11B 284 MOVWF 0x47 ; 00C7 11C 285 G0x11D MOVLW 0xFA ; 30FA 11D 286 MOVWF 0x4A ; 00CA 11E 287 CALL C0x4B ; 204B 11F 288 DECFSZ 0x47, F ; 0BC7 120 289 GOTO G0x11D ; 291D 121 290 G0x122 GOTO G0x36B ; 2B6B 122 291 G0x123 BCF INTCON, 0x6 ; 130B 123 292 G0x124 BCF INTCON, 0x7 ; 138B 124 293 BTFSC INTCON, 0x7 ; 1B8B 125 294 GOTO G0x124 ; 2924 126 295 MOVLW 0xC ; 300C 127 296 MOVWF 0x20 ; 00A0 128 297 CLRF TMR0 ; 181 129 298 MOVLW 0x81 ; 3081 12A 299 MOVWF FSR ; 84 12B 300 MOVF INDF, W ; 800 12C 301 ANDLW 0xF0 ; 39F0 12D 302 IORLW 0x7 ; 3807 12E 303 MOVWF INDF ; 80 12F 304 CLRWDT ; 64 130 305 MOVF INDF, W ; 800 131 306 ANDLW 0xF7 ; 39F7 132 307 BTFSC 0x20, 0x3 ; 19A0 133 308 ANDLW 0xF0 ; 39F0 134 309 IORWF 0x20, W ; 420 135 310 MOVWF INDF ; 80 136 311 BCF ADCON0, 0x0 ; 101F 137 312 BCF ADCON0, 0x6 ; 131F 138 313 BSF STATUS, 0x5 ; 1683 139 314 BCF ADCON0, 0x0 ; 101F 13A 315 BCF ADCON0, 0x1 ; 109F 13B 316 BCF ADCON0, 0x2 ; 111F 13C 317 BCF ADCON0, 0x3 ; 119F 13D 318 MOVF TMR0, W ; 801 13E 319 ANDLW 0xC7 ; 39C7 13F 320 IORLW 0x38 ; 3838 140 321 MOVWF TMR0 ; 81 141 322 MOVLW 0x5 ; 3005 142 323 BCF STATUS, 0x5 ; 1283 143 324 MOVWF T1CON ; 90 144 325 MOVLW 0x3 ; 3003 145 326 MOVWF CMCON ; 99 146 327 BSF STATUS, 0x5 ; 1683 147 328 MOVF GPIO, W ; 805 148 329 IORLW 0x6 ; 3806 149 330 ANDLW 0xFB ; 39FB 14A 331 MOVWF GPIO ; 85 14B 332 CLRWDT ; 64 14C 333 MOVLW 0x10 ; 3010 14D 334 BCF STATUS, 0x5 ; 1283 14E 335 MOVWF 0x20 ; 00A0 14F 336 G0x150 DECFSZ 0x20, F ; 0BA0 150 337 GOTO G0x150 ; 2950 151 338 MOVF CMCON, W ; 819 152 339 BCF PIR1, 0x3 ; 118C 153 340 MOVLW 0xA1 ; 30A1 154 341 BSF STATUS, 0x5 ; 1683 155 342 MOVWF CMCON ; 99 156 343 MOVLW 0x2A ; 302A 157 344 MOVWF GPIO ; 85 158 345 BCF STATUS, 0x5 ; 1283 159 346 GOTO G0x36C ; 2B6C 15A 347 BSF STATUS, 0x5 ; 1683 15B 348 BCF GPIO, 0x0 ; 1005 15C 349 BCF STATUS, 0x5 ; 1283 15D 350 BSF GPIO, 0x0 ; 1405 15E 351 MOVLW 0x6E ; 306E 15F 352 MOVWF 0x47 ; 00C7 160 353 MOVLW 0x96 ; 3096 161 354 MOVWF 0x48 ; 00C8 162 355 G0x163 BSF GPIO, 0x4 ; 1605 163 356 MOVF 0x47, W ; 847 164 357 MOVWF 0x4B ; 00CB 165 358 CALL 0x62 ; 2062 166 359 BCF GPIO, 0x4 ; 1205 167 360 MOVF 0x47, W ; 847 168 361 MOVWF 0x4B ; 00CB 169 362 CALL 0x62 ; 2062 16A 363 DECF 0x48, F ; 03C8 16B 364 MOVF 0x48, F ; 08C8 16C 365 BTFSS STATUS, 0x2 ; 1D03 16D 366 GOTO G0x163 ; 2963 16E 367 BSF STATUS, 0x5 ; 1683 16F 368 BSF GPIO, 0x0 ; 1405 170 369 MOVLW 0xA ; 300A 171 370 BCF STATUS, 0x5 ; 1283 172 371 MOVWF 0x4A ; 00CA 173 372 CALL C0x4B ; 204B 174 373 RETURN ; 8 175 374 MOVLW 0xFF ; 30FF 176 375 MOVWF 0x49 ; 00C9 177 376 MOVWF 0x4A ; 00CA 178 377 CALL 0x71 ; 2071 179 378 MOVLW 0xFF ; 30FF 17A 379 MOVWF 0x49 ; 00C9 17B 380 MOVWF 0x4A ; 00CA 17C 381 CALL 0x71 ; 2071 17D 382 MOVLW 0xFF ; 30FF 17E 383 MOVWF 0x49 ; 00C9 17F 384 MOVWF 0x4A ; 00CA 180 385 CALL 0x71 ; 2071 181 386 MOVLW 0xFF ; 30FF 182 387 MOVWF 0x49 ; 00C9 183 388 MOVWF 0x4A ; 00CA 184 389 CALL 0x71 ; 2071 185 390 MOVLW 0xFF ; 30FF 186 391 MOVWF 0x49 ; 00C9 187 392 MOVWF 0x4A ; 00CA 188 393 CALL 0x71 ; 2071 189 394 MOVLW 0xFF ; 30FF 18A 395 MOVWF 0x49 ; 00C9 18B 396 MOVWF 0x4A ; 00CA 18C 397 CALL 0x71 ; 2071 18D 398 MOVLW 0xFF ; 30FF 18E 399 MOVWF 0x49 ; 00C9 18F 400 MOVWF 0x4A ; 00CA 190 401 CALL 0x71 ; 2071 191 402 MOVLW 0x4 ; 3004 192 403 MOVWF 0x49 ; 00C9 193 404 G0x194 MOVLW 0xFA ; 30FA 194 405 MOVWF 0x4A ; 00CA 195 406 CALL C0x4B ; 204B 196 407 DECFSZ 0x49, F ; 0BC9 197 408 GOTO G0x194 ; 2994 198 409 CLRF 0x48 ; 01C8 199 410 G0x19A MOVF 0x3E, W ; 083E 19A 411 SUBWF 0x48, W ; 248 19B 412 BTFSC STATUS, 0x0 ; 1803 19C 413 GOTO G0x1A8 ; 29A8 19D 414 MOVLW 0x96 ; 3096 19E 415 MOVWF 0x49 ; 00C9 19F 416 MOVLW 0xE6 ; 3.00E+07 1A0 417 MOVWF 0x4A ; 00CA 1A1 418 CALL 0x71 ; 2071 1A2 419 MOVLW 0xC8 ; 30C8 1A3 420 MOVWF 0x4A ; 00CA 1A4 421 CALL C0x4B ; 204B 1A5 422 INCF 0x48, F ; 0AC8 1A6 423 GOTO G0x19A ; 299A 1A7 424 G0x1A8 MOVLW 0xC ; 300C 1A8 425 MOVWF 0x49 ; 00C9 1A9 426 G0x1AA MOVLW 0xFA ; 30FA 1AA 427 MOVWF 0x4A ; 00CA 1AB 428 CALL C0x4B ; 204B 1AC 429 DECFSZ 0x49, F ; 0BC9 1AD 430 GOTO G0x1AA ; 29AA 1AE 431 CLRF PCLATH ; 018A 1AF 432 GOTO START ;0x0 ; 2800 1B0 433 RETURN ; 8 1B1 434 G0x1B2 BCF INTCON, 0x6 ; 130B 1B2 435 G0x1B3 BCF INTCON, 0x7 ; 138B 1B3 436 BTFSC INTCON, 0x7 ; 1B8B 1B4 437 GOTO G0x1B3 ; 29B3 1B5 438 BCF 0x46, 0x1 ; 10C6 1B6 439 MOVLW 0x1 ; 3001 1B7 440 MOVWF 0x3F ; 00BF 1B8 441 MOVLW 0xE ; 300E 1B9 442 MOVWF 0x45 ; 00C5 1BA 443 G0x1BB INCF 0x3F, F ; 0ABF 1BB 444 MOVF 0x3F, W ; 083F 1BC 445 IORLW 0xA0 ; 38A0 1BD 446 MOVWF 0x47 ; 00C7 1BE 447 BSF STATUS, 0x5 ; 1683 1BF 448 MOVWF CMCON ; 99 1C0 449 BCF STATUS, 0x5 ; 1283 1C1 450 CALL 0x15B ; 215B 1C2 451 MOVLW 0xC8 ; 30C8 1C3 452 MOVWF 0x4A ; 00CA 1C4 453 CALL C0x4B ; 204B 1C5 454 CLRF TMR0 ; 181 1C6 455 BCF INTCON, 0x2 ; 110B 1C7 456 MOVLW 0xA ; 300A 1C8 457 MOVWF 0x4A ; 00CA 1C9 458 CALL C0x4B ; 204B 1CA 459 BCF 0x46, 0x0 ; 1046 1CB 460 BTFSC INTCON, 0x2 ; 190B 1CC 461 BSF 0x46, 0x0 ; 1446 1CD 462 MOVF TMR0, W ; 801 1CE 463 MOVWF 0x44 ; 00C4 1CF 464 BCF 0x2C, 0x1 ; 10AC 1D0 465 BTFSC 0x46, 0x0 ; 1846 1D1 466 BSF 0x2C, 0x1 ; 14AC 1D2 467 MOVF 0x44, W ; 844 1D3 468 MOVWF 0x3B ; 00BB 1D4 469 MOVF 0x44, F ; 08C4 1D5 470 BTFSS STATUS, 0x2 ; 1D03 1D6 471 GOTO G0x1DC ; 29DC 1D7 472 BTFSC 0x46, 0x0 ; 1846 1D8 473 GOTO G0x1DC ; 29DC 1D9 474 DECF 0x45, F ; 03C5 1DA 475 GOTO G0x1F2 ; 29F2 1DB 476 G0x1DC MOVF 0x44, W ; 844 1DC 477 SUBLW 0xFA ; 3CFA 1DD 478 BTFSS STATUS, 0x0 ; 1C03 1DE 479 GOTO G0x1E2 ; 2.90E+03 1DF 480 BTFSS 0x46, 0x0 ; 1C46 1.00E+00 481 GOTO G0x1E6 ; 2.90E+07 1.00E+01 482 G0x1E2 MOVLW 0x2 ; 3002 1.00E+02 483 MOVWF 0x3E ; 00BE 1.00E+03 484 CALL 0x176 ; 2176 1.00E+04 485 GOTO G0x1F1 ; 29F1 1.00E+05 486 G0x1E6 MOVF 0x44, W ; 844 1.00E+06 487 SUBLW 0x2 ; 3C02 1.00E+07 488 BTFSC STATUS, 0x0 ; 1803 1.00E+08 489 GOTO G0x1F1 ; 29F1 1.00E+09 490 MOVF 0x44, W ; 844 1EA 491 SUBLW 0x95 ; 3C95 1EB 492 BTFSS STATUS, 0x0 ; 1C03 1EC 493 GOTO G0x1F1 ; 29F1 1ED 494 MOVLW 0x1 ; 3001 1EE 495 MOVWF 0x3E ; 00BE 1EF 496 CALL 0x176 ; 2176 1F0 497 G0x1F1 BSF 0x46, 0x1 ; 14C6 1F1 498 G0x1F2 BTFSC 0x46, 0x1 ; 18C6 1F2 499 GOTO G0x1F7 ; 29F7 1F3 500 MOVF 0x45, F ; 08C5 1F4 501 BTFSS STATUS, 0x2 ; 1D03 1F5 502 GOTO G0x1BB ; 29BB 1F6 503 G0x1F7 MOVF 0x45, F ; 08C5 1F7 504 BTFSS STATUS, 0x2 ; 1D03 1F8 505 GOTO G0x1FD ; 29FD 1F9 506 MOVLW 0x4 ; 3004 1FA 507 MOVWF 0x3E ; 00BE 1FB 508 CALL 0x176 ; 2176 1FC 509 G0x1FD MOVF 0x3F, W ; 083F 1FD 510 SUBLW 0xE ; 3C0E 1FE 511 BTFSS STATUS, 0x0 ; 1C03 1FF 512 GOTO G0x24F ; 2A4F 200 513 INCF 0x3F, F ; 0ABF 201 514 MOVF 0x3F, W ; 083F 202 515 IORLW 0xA0 ; 38A0 203 516 MOVWF 0x47 ; 00C7 204 517 BSF STATUS, 0x5 ; 1683 205 518 MOVWF CMCON ; 99 206 519 BCF STATUS, 0x5 ; 1283 207 520 MOVF 0x44, W ; 844 208 521 SUBLW 0xFF ; 3CFF 209 522 MOVWF 0x3B ; 00BB 20A 523 MOVF INTCON, W ; 080B 20B 524 MOVWF 0x20 ; 00A0 20C 525 BCF INTCON, 0x7 ; 138B 20D 526 BSF STATUS, 0x5 ; 1683 20E 527 CLRF EEADR ;0x1B ; 019B 20F 528 BCF STATUS, 0x5 ; 1283 210 529 MOVF 0x3F, W ; 083F 211 530 BSF STATUS, 0x5 ; 1683 212 531 MOVWF EEDATA ;0x1A ; 009A 213 532 BCF EECON1,7 ;0x1C, 0x7 ; 139C 214 533 BSF EECON1,2 ;0x1C, 0x2 ; 151C 215 534 MOVLW 0x55 ; 3055 216 535 MOVWF EECON2 ;0x1D ; 009D 217 536 MOVLW 0xAA ; 30AA 218 537 MOVWF EECON2 ;0x1D ; 009D 219 538 BSF EECON1,1 ;0x1C, 0x1 ; 149C 21A 539 G0x21B BTFSC EECON1,1 ;0x1C, 0x1 ; 189C 21B 540 GOTO G0x21B ; 2A1B 21C 541 BCF EECON1,2 ;0x1C, 0x2 ; 111C 21D 542 BCF STATUS, 0x5 ; 1283 21E 543 MOVF 0x20, W ; 820 21F 544 IORWF INTCON, F ; 048B 220 545 MOVF INTCON, W ; 080B 221 546 MOVWF 0x20 ; 00A0 222 547 BCF INTCON, 0x7 ; 138B 223 548 MOVLW 0x1 ; 3001 224 549 BSF STATUS, 0x5 ; 1683 225 550 MOVWF EEADR ;0x1B ; 009B 226 551 BCF STATUS, 0x5 ; 1283 227 552 MOVF 0x3B, W ; 083B 228 553 BSF STATUS, 0x5 ; 1683 229 554 MOVWF EEDATA ;0x1A ; 009A 22A 555 BCF EECON1,7 ;0x1C, 0x7 ; 139C 22B 556 BSF EECON1,2 ;0x1C, 0x2 ; 151C 22C 557 MOVLW 0x55 ; 3055 22D 558 MOVWF EECON2 ;0x1D ; 009D 22E 559 MOVLW 0xAA ; 30AA 22F 560 MOVWF EECON2 ;0x1D ; 009D 230 561 BSF EECON1,1 ;0x1C, 0x1 ; 149C 231 562 G0x232 BTFSC EECON1,1 ;0x1C, 0x1 ; 189C 232 563 GOTO G0x232 ; 2A32 233 564 BCF EECON1,2 ;0x1C, 0x2 ; 111C 234 565 BCF STATUS, 0x5 ; 1283 235 566 MOVF 0x20, W ; 820 236 567 IORWF INTCON, F ; 048B 237 568 MOVF INTCON, W ; 080B 238 569 MOVWF 0x20 ; 00A0 239 570 BCF INTCON, 0x7 ; 138B 23A 571 MOVLW 0x2 ; 3002 23B 572 BSF STATUS, 0x5 ; 1683 23C 573 MOVWF EEADR ;0x1B ; 009B 23D 574 BCF STATUS, 0x5 ; 1283 23E 575 MOVF 0x44, W ; 844 23F 576 BSF STATUS, 0x5 ; 1683 240 577 MOVWF EEDATA ;0x1A ; 009A 241 578 BCF EECON1,7 ;0x1C, 0x7 ; 139C 242 579 BSF EECON1,2 ;0x1C, 0x2 ; 151C 243 580 MOVLW 0x55 ; 3055 244 581 MOVWF EECON2 ;0x1D ; 009D 245 582 MOVLW 0xAA ; 30AA 246 583 MOVWF EECON2 ;0x1D ; 009D 247 584 BSF EECON1,1 ;0x1C, 0x1 ; 149C 248 585 G0x249 BTFSC EECON1,1 ;0x1C, 0x1 ; 189C 249 586 GOTO G0x249 ; 2A49 24A 587 BCF EECON1,2 ;0x1C, 0x2 ; 111C 24B 588 BCF STATUS, 0x5 ; 1283 24C 589 MOVF 0x20, W ; 820 24D 590 IORWF INTCON, F ; 048B 24E 591 G0x24F GOTO G0x36D ; 2B6D 24F 592 G0x250 CLRF 0x34 ; 01B4 250 593 CLRF 0x33 ; 01B3 251 594 CLRF 0x30 ; 01B0 252 595 CLRF 0x2F ; 01AF 253 596 CLRF 0x45 ; 01C5 254 597 CLRF 0x46 ; 01C6 255 598 BCF 0x47, 0x0 ; 1047 256 599 CLRF TMR1L ; 018E 257 600 CLRF TMR1H ; 018F 258 601 CLRF TMR1L ; 018E 259 602 CLRF TMR0 ; 181 25A 603 BCF INTCON, 0x2 ; 110B 25B 604 BCF PIR1, 0x0 ; 100C 25C 605 G0x260 BSF INTCON, 0x5 ; 168B 25D 606 MOVLW 0xC0 ; 30C0 25E 607 IORWF INTCON, F ; 048B 25F 608 BTFSC GPIO, 0x3 ; 1985 260 609 GOTO G0x264 ; 2A64 261 610 CLRF PCLATH ; 018A 262 611 GOTO START ;0x0 ; 2800 263 612 G0x264 BTFSS 0x2C, 0x0 ; 1C2C 264 613 GOTO G0x260 ; 2A60 265 614 MOVF 0x2E, W ; 082E 266 615 MOVWF 0x30 ; 00B0 267 616 MOVF 0x2D, W ; 082D 268 617 MOVWF 0x2F ; 00AF 269 618 G0x26A BCF 0x2C, 0x0 ; 102C 26A 619 CLRWDT ; 64 26B 620 G0x26C BTFSC GPIO, 0x3 ; 1985 26C 621 GOTO G0x270 ; 2A70 26D 622 CLRF PCLATH ; 018A 26E 623 GOTO START ;0x0 ; 2800 26F 624 G0x270 BTFSS 0x2C, 0x0 ; 1C2C 270 625 GOTO G0x26C ; 2A6C 271 626 MOVF 0x30, W ; 830 272 627 SUBWF 0x2E, W ; 022E 273 628 BTFSS STATUS, 0x0 ; 1C03 274 629 GOTO G0x27F ; 2A7F 275 630 BTFSS STATUS, 0x2 ; 1D03 276 631 GOTO G0x27C ; 2A7C 277 632 MOVF 0x2D, W ; 082D 278 633 SUBWF 0x2F, W ; 022F 279 634 BTFSC STATUS, 0x0 ; 1803 27A 635 GOTO G0x27F ; 2A7F 27B 636 G0x27C INCF 0x2F, F ; 0AAF 27C 637 BTFSC STATUS, 0x2 ; 1903 27D 638 G0x2E7 INCF 0x30, F ; 0AB0 27E 639 G0x27F MOVF 0x2E, W ; 082E 27F 640 SUBWF 0x30, W ; 230 280 641 BTFSS STATUS, 0x0 ; 1C03 281 642 GOTO G0x28D ; 2A8D 282 643 BTFSS STATUS, 0x2 ; 1D03 283 644 GOTO G0x289 ; 2A89 284 645 MOVF 0x2F, W ; 082F 285 646 SUBWF 0x2D, W ; 022D 286 647 BTFSC STATUS, 0x0 ; 1803 287 648 GOTO G0x28D ; 2A8D 288 649 G0x289 MOVF 0x2F, W ; 082F 289 650 BTFSC STATUS, 0x2 ; 1903 28A 651 DECF 0x30, F ; 03B0 28B 652 DECF 0x2F, F ; 03AF 28C 653 G0x28D INCFSZ 0x46, F ; 0FC6 28D 654 GOTO G0x292 ; 2A92 28E 655 MOVLW 0x3 ; 3003 28F 656 MOVWF 0x3E ; 00BE 290 657 CALL 0x176 ; 2176 291 658 G0x292 MOVF 0x2F, W ; 082F 292 659 SUBWF 0x2D, W ; 022D 293 660 BTFSS STATUS, 0x2 ; 1D03 294 661 GOTO G0x29A ; 2A9A 295 662 MOVF 0x30, W ; 830 296 663 SUBWF 0x2E, W ; 022E 297 664 BTFSC STATUS, 0x2 ; 1903 298 665 GOTO G0x2A0 ; 2AA0 299 666 G0x29A MOVF 0x2E, W ; 082E 29A 667 MOVWF 0x30 ; 00B0 29B 668 MOVF 0x2D, W ; 082D 29C 669 MOVWF 0x2F ; 00AF 29D 670 CLRF 0x45 ; 01C5 29E 671 GOTO G0x2A5 ; 2AA5 29F 672 G0x2A0 INCF 0x45, F ; 0AC5 2A0 673 MOVF 0x45, W ; 845 2A1 674 SUBLW 0x3 ; 3C03 2A2 675 BTFSS STATUS, 0x0 ; 1C03 2A3 676 BSF 0x47, 0x0 ; 1447 2A4 677 G0x2A5 BTFSS 0x47, 0x0 ; 1C47 2A5 678 GOTO G0x26A ; 2A6A 2A6 679 MOVF 0x30, W ; 830 2A7 680 MOVWF 0x32 ; 00B2 2A8 681 MOVF 0x2F, W ; 082F 2A9 682 MOVWF 0x31 ; 00B1 2AA 683 MOVF 0x30, W ; 830 2AB 684 MOVWF 0x3A ; 00BA 2AC 685 MOVF 0x2F, W ; 082F 2AD 686 MOVWF 0x39 ; 00B9 2AE 687 MOVLW 0xFF ; 30FF 2AF 688 MOVWF 0x48 ; 00C8 2B0 689 BSF STATUS, 0x5 ; 1683 2B1 690 BSF GPIO, 0x0 ; 1405 2B2 691 BCF STATUS, 0x5 ; 1283 2B3 692 G0x2B4 BSF GPIO, 0x4 ; 1605 2B4 693 MOVF 0x48, W ; 848 2B5 694 MOVWF 0x4B ; 00CB 2B6 695 CALL 0x62 ; 2062 2B7 696 BCF GPIO, 0x4 ; 1205 2B8 697 MOVF 0x48, W ; 848 2B9 698 MOVWF 0x4B ; 00CB 2BA 699 CALL 0x62 ; 2062 2BB 700 MOVF 0x48, W ; 848 2BC 701 MOVWF 0x4B ; 00CB 2BD 702 CALL 0x62 ; 2062 2BE 703 DECF 0x48, F ; 03C8 2BF 704 MOVF 0x48, W ; 848 2C0 705 SUBLW 0x64 ; 3C64 2C1 706 BTFSS STATUS, 0x0 ; 1C03 2C2 707 GOTO G0x2B4 ; 2AB4 2C3 708 MOVLW 0x2 ; 3002 2C4 709 MOVWF 0x49 ; 00C9 2C5 710 G0x2C6 MOVLW 0xFA ; 30FA 2C6 711 MOVWF 0x4A ; 00CA 2C7 712 CALL C0x4B ; 204B 2C8 713 DECFSZ 0x49, F ; 0BC9 2C9 714 GOTO G0x2C6 ; 2AC6 2CA 715 GOTO G0x36E ; 2B6E 2CB 716 BSF STATUS, 0x5 ; 1683 2CC 717 BCF GPIO, 0x0 ; 1005 2CD 718 BCF STATUS, 0x5 ; 1283 2CE 719 BCF GPIO, 0x0 ; 1005 2CF 720 MOVLW 0xFA ; 30FA 2D0 721 MOVWF 0x44 ; 00C4 2D1 722 MOVLW 0x50 ; 3050 2D2 723 MOVWF 0x45 ; 00C5 2D3 724 G0x2D4 BSF GPIO, 0x4 ; 1605 2D4 725 MOVF 0x44, W ; 844 2D5 726 MOVWF 0x4B ; 00CB 2D6 727 CALL 0x62 ; 2062 2D7 728 BCF GPIO, 0x4 ; 1205 2D8 729 MOVF 0x44, W ; 844 2D9 730 MOVWF 0x4B ; 00CB 2DA 731 CALL 0x62 ; 2062 2DB 732 DECF 0x45, F ; 03C5 2DC 733 MOVF 0x45, F ; 08C5 2DD 734 BTFSS STATUS, 0x2 ; 1D03 2DE 735 GOTO G0x2D4 ; 2AD4 2DF 736 BSF STATUS, 0x5 ; 1683 2.00E+00 737 BSF GPIO, 0x0 ; 1405 2.00E+01 738 MOVLW 0xA ; 300A 2.00E+02 739 BCF STATUS, 0x5 ; 1283 2.00E+03 740 MOVWF 0x4A ; 00CA 2.00E+04 741 CALL C0x4B ; 204B 2.00E+05 742 RETURN ; 8 2.00E+06 743 MOVF 0x38, W ; 838 2.00E+07 744 SUBWF 0x36, W ; 236 2.00E+08 745 BTFSS STATUS, 0x0 ; 1C03 2.00E+09 746 GOTO G0x2F5 ; 2AF5 2EA 747 BTFSS STATUS, 0x2 ; 1D03 2EB 748 GOTO G0x2F1 ; 2AF1 2EC 749 MOVF 0x35, W ; 835 2ED 750 SUBWF 0x37, W ; 237 2EE 751 BTFSC STATUS, 0x0 ; 1803 2EF 752 GOTO G0x2F5 ; 2AF5 2F0 753 G0x2F1 MOVF 0x32, W ; 832 2F1 754 MOVWF 0x30 ; 00B0 2F2 755 MOVF 0x31, W ; 831 2F3 756 MOVWF 0x2F ; 00AF 2F4 757 G0x2F5 MOVF 0x38, W ; 838 2F5 758 MOVWF 0x36 ; 00B6 2F6 759 MOVF 0x37, W ; 837 2F7 760 MOVWF 0x35 ; 00B5 2F8 761 MOVF 0x3A, W ; 083A 2F9 762 SUBWF 0x2E, W ; 022E 2FA 763 BTFSS STATUS, 0x0 ; 1C03 2FB 764 GOTO G0x306 ; 2B06 2FC 765 BTFSS STATUS, 0x2 ; 1D03 2FD 766 GOTO G0x303 ; 2B03 2FE 767 MOVF 0x2D, W ; 082D 2FF 768 SUBWF 0x39, W ; 239 300 769 BTFSC STATUS, 0x0 ; 1803 301 770 GOTO G0x306 ; 2B06 302 771 G0x303 INCF 0x39, F ; 0AB9 303 772 BTFSC STATUS, 0x2 ; 1903 304 773 INCF 0x3A, F ; 0ABA 305 774 G0x306 MOVF 0x2E, W ; 082E 306 775 SUBWF 0x3A, W ; 023A 307 776 BTFSS STATUS, 0x0 ; 1C03 308 777 GOTO G0x314 ; 2B14 309 778 BTFSS STATUS, 0x2 ; 1D03 30A 779 GOTO G0x310 ; 2B10 30B 780 MOVF 0x39, W ; 839 30C 781 SUBWF 0x2D, W ; 022D 30D 782 BTFSC STATUS, 0x0 ; 1803 30E 783 GOTO G0x314 ; 2B14 30F 784 G0x310 MOVF 0x39, W ; 839 310 785 BTFSC STATUS, 0x2 ; 1903 311 786 DECF 0x3A, F ; 03BA 312 787 DECF 0x39, F ; 03B9 313 788 G0x314 INCF 0x3C, F ; 0ABC 314 789 MOVF 0x3C, W ; 083C 315 790 SUBLW 0xF ; 3C0F 316 791 BTFSC STATUS, 0x0 ; 1803 317 792 GOTO G0x336 ; 2B36 318 793 CLRF 0x3C ; 01BC 319 794 INCF 0x3D, F ; 0ABD 31A 795 MOVF 0x30, W ; 830 31B 796 SUBWF 0x3A, W ; 023A 31C 797 BTFSS STATUS, 0x0 ; 1C03 31D 798 GOTO G0x328 ; 2B28 31E 799 BTFSS STATUS, 0x2 ; 1D03 31F 800 GOTO G0x325 ; 2B25 320 801 MOVF 0x39, W ; 839 321 802 SUBWF 0x2F, W ; 022F 322 803 BTFSC STATUS, 0x0 ; 1803 323 804 GOTO G0x328 ; 2B28 324 805 G0x325 INCF 0x2F, F ; 0AAF 325 806 BTFSC STATUS, 0x2 ; 1903 326 807 INCF 0x30, F ; 0AB0 327 808 G0x328 MOVF 0x3A, W ; 083A 328 809 SUBWF 0x30, W ; 230 329 810 BTFSS STATUS, 0x0 ; 1C03 32A 811 GOTO G0x336 ; 2B36 32B 812 BTFSS STATUS, 0x2 ; 1D03 32C 813 GOTO G0x332 ; 2B32 32D 814 MOVF 0x2F, W ; 082F 32E 815 SUBWF 0x39, W ; 239 32F 816 BTFSC STATUS, 0x0 ; 1803 330 817 GOTO G0x336 ; 2B36 331 818 G0x332 MOVF 0x2F, W ; 082F 332 819 BTFSC STATUS, 0x2 ; 1903 333 820 DECF 0x30, F ; 03B0 334 821 DECF 0x2F, F ; 03AF 335 822 G0x336 MOVF 0x3D, W ; 083D 336 823 SUBLW 0xF ; 3C0F 337 824 BTFSC STATUS, 0x0 ; 1803 338 825 GOTO G0x356 ; 2B56 339 826 CLRF 0x3D ; 01BD 33A 827 MOVF 0x30, W ; 830 33B 828 SUBWF 0x32, W ; 232 33C 829 BTFSS STATUS, 0x0 ; 1C03 33D 830 GOTO G0x349 ; 2B49 33E 831 BTFSS STATUS, 0x2 ; 1D03 33F 832 GOTO G0x345 ; 2B45 340 833 MOVF 0x31, W ; 831 341 834 SUBWF 0x2F, W ; 022F 342 835 BTFSC STATUS, 0x0 ; 1803 343 836 GOTO G0x349 ; 2B49 344 837 G0x345 MOVF 0x31, W ; 831 345 838 BTFSC STATUS, 0x2 ; 1903 346 839 DECF 0x32, F ; 03B2 347 840 DECF 0x31, F ; 03B1 348 841 G0x349 MOVF 0x32, W ; 832 349 842 SUBWF 0x30, W ; 230 34A 843 BTFSS STATUS, 0x0 ; 1C03 34B 844 GOTO G0x356 ; 2B56 34C 845 BTFSS STATUS, 0x2 ; 1D03 34D 846 GOTO G0x353 ; 2B53 34E 847 MOVF 0x2F, W ; 082F 34F 848 SUBWF 0x31, W ; 231 350 849 BTFSC STATUS, 0x0 ; 1803 351 850 GOTO G0x356 ; 2B56 352 851 G0x353 INCF 0x31, F ; 0AB1 353 852 BTFSC STATUS, 0x2 ; 1903 354 853 INCF 0x32, F ; 0AB2 355 854 G0x356 GOTO G0x3FD ; 2BFD 356 855 org 0x357 SETUP MOVF STATUS, W ; 803 357 856 ..0x18 ANDLW 0x1F ; 391F 358 857 MOVWF STATUS ; 83 359 858 BCF ADCON0, 0x6 ; 131F 35A 859 BSF STATUS, 0x5 ; 1683 35B 860 BCF ADCON0, 0x0 ; 101F 35C 861 BCF ADCON0, 0x1 ; 109F 35D 862 BCF ADCON0, 0x2 ; 111F 35E 863 BCF ADCON0, 0x3 ; 119F 35F 864 MOVLW 0x7 ; 3007 360 865 BCF STATUS, 0x5 ; 1283 361 866 MOVWF CMCON ; 99 362 867 MOVLW 0x2 ; 3002 363 868 MOVWF 0x44 ; 00C4 364 869 G0x365 MOVLW 0x96 ; 3096 365 870 MOVWF 0x4A ; 00CA 366 871 CALL C0x4B ; 204B 367 872 DECFSZ 0x44, F ; 0BC4 368 873 GOTO G0x365 ; 2B65 369 874 GOTO G0xB8 ; 28B8 36A 875 G0x36B GOTO G0x123 ; 2923 36B 876 G0x36C GOTO G0x1B2 ; 29B2 36C 877 G0x36D GOTO G0x250 ; 2A50 36D 878 G0x36E BCF 0x2C, 0x0 ; 102C 36E 879 G0x36F CLRWDT ; 64 36F 880 BTFSC GPIO, 0x3 ; 1985 370 881 GOTO G0x374 ; 2B74 371 882 CLRF PCLATH ; 018A 372 883 GOTO START ;0x0 ; 2800 373 884 G0x374 BTFSS 0x2C, 0x0 ; 1C2C 374 885 GOTO G0x36F ; 2B6F 375 886 MOVF 0x2E, W ; 082E 376 887 SUBWF 0x32, W ; 232 377 888 BTFSS STATUS, 0x0 ; 1C03 378 889 GOTO G0x38D ; 2B8D 379 890 BTFSS STATUS, 0x2 ; 1D03 37A 891 GOTO G0x380 ; 2B80 37B 892 MOVF 0x31, W ; 831 37C 893 SUBWF 0x2D, W ; 022D 37D 894 BTFSC STATUS, 0x0 ; 1803 37E 895 GOTO G0x38D ; 2B8D 37F 896 G0x380 MOVF 0x2D, W ; 082D 380 897 SUBWF 0x31, W ; 231 381 898 MOVWF 0x37 ; 00B7 382 899 MOVF 0x32, W ; 832 383 900 MOVWF 0x38 ; 00B8 384 901 MOVF 0x2E, W ; 082E 385 902 BTFSS STATUS, 0x0 ; 1C03 386 903 INCFSZ 0x2E, W ; 0F2E 387 904 SUBWF 0x38, F ; 02B8 388 905 BTFSS 0x2C, 0x1 ; 1CAC 389 906 BSF 0x43, 0x0 ; 1443 38A 907 BSF 0x2C, 0x1 ; 14AC 38B 908 GOTO G0x3A9 ; 2BA9 38C 909 G0x38D MOVF 0x32, W ; 832 38D 910 SUBWF 0x2E, W ; 022E 38E 911 BTFSS STATUS, 0x0 ; 1C03 38F 912 GOTO G0x3A4 ; 2BA4 390 913 BTFSS STATUS, 0x2 ; 1D03 391 914 GOTO G0x397 ; 2B97 392 915 MOVF 0x2D, W ; 082D 393 916 SUBWF 0x31, W ; 231 394 917 BTFSC STATUS, 0x0 ; 1803 395 918 GOTO G0x3A4 ; 2BA4 396 919 G0x397 MOVF 0x31, W ; 831 397 920 SUBWF 0x2D, W ; 022D 398 921 MOVWF 0x37 ; 00B7 399 922 MOVF 0x2E, W ; 082E 39A 923 MOVWF 0x38 ; 00B8 39B 924 MOVF 0x32, W ; 832 39C 925 BTFSS STATUS, 0x0 ; 1C03 39D 926 INCFSZ 0x32, W ; 0F32 39E 927 SUBWF 0x38, F ; 02B8 39F 928 BTFSC 0x2C, 0x1 ; 18AC 3A0 929 BSF 0x43, 0x0 ; 1443 3A1 930 BCF 0x2C, 0x1 ; 10AC 3A2 931 GOTO G0x3A9 ; 2BA9 3A3 932 G0x3A4 CLRF 0x38 ; 01B8 3A4 933 CLRF 0x37 ; 01B7 3A5 934 BCF 0x2C, 0x1 ; 10AC 3A6 935 CLRF 0x41 ; 01C1 3A7 936 BCF 0x43, 0x0 ; 1043 3A8 937 G0x3A9 MOVF 0x38, F ; 08B8 3A9 938 BTFSS STATUS, 0x2 ; 1D03 3AA 939 GOTO G0x3B0 ; 2BB0 3AB 940 MOVF 0x37, W ; 837 3AC 941 SUBLW 0x2 ; 3C02 3AD 942 BTFSC STATUS, 0x0 ; 1803 3AE 943 GOTO G0x3E9 ; 2BE9 3AF 944 G0x3B0 CLRF 0x34 ; 01B4 3B0 945 CLRF 0x33 ; 01B3 3B1 946 MOVLW 0xE ; 300E 3B2 947 MOVWF 0x42 ; 00C2 3B3 948 G0x3B4 MOVF 0x42, W ; 842 3B4 949 SUBLW 0x1 ; 3C01 3B5 950 BTFSC STATUS, 0x0 ; 1803 3B6 951 GOTO G0x3CA ; 2BCA 3B7 952 MOVF 0x38, W ; 838 3B8 953 MOVWF 0x23 ; 00A3 3B9 954 MOVF 0x37, W ; 837 3BA 955 MOVWF 0x22 ; 00A2 3BB 956 MOVF 0x42, W ; 842 3BC 957 MOVWF 0x20 ; 00A0 3BD 958 BTFSC STATUS, 0x2 ; 1903 3BE 959 GOTO G0x3C5 ; 2BC5 3BF 960 G0x3C0 BCF STATUS, 0x0 ; 1003 3C0 961 RRF 0x23, F ; 0CA3 3C1 962 RRF 0x22, F ; 0CA2 3C2 963 DECFSZ 0x20, F ; 0BA0 3C3 964 GOTO G0x3C0 ; 2BC0 3C4 965 G0x3C5 MOVF 0x22, W ; 822 3C5 966 BTFSC 0x22, 0x0 ; 1822 3C6 967 GOTO G0x3CA ; 2BCA 3C7 968 DECF 0x42, F ; 03C2 3C8 969 GOTO G0x3B4 ; 2BB4 3C9 970 MOVF 0x42, W ; 842 3CA 971 SUBLW 0xD ; 3C0D 3CB 972 MOVWF 0x20 ; 00A0 3CC 973 RRF 0x20, W ; 0C20 3CD 974 MOVWF 0x41 ; 00C1 3CE 975 RRF 0x41, F ; 0CC1 3CF 976 MOVLW 0x3F ; 303F 3D0 977 ANDWF 0x41, F ; 05C1 3D1 978 MOVF 0x40, W ; 840 3D2 979 SUBWF 0x41, W ; 241 3D3 980 BTFSC STATUS, 0x0 ; 1803 3D4 981 GOTO G0x3DF ; 2BDF 3D5 982 MOVLW 0x1 ; 3001 3D6 983 MOVWF 0x40 ; 00C0 3D7 984 BCF 0x43, 0x0 ; 1043 3D8 985 BTFSS 0x2C, 0x1 ; 1CAC 3D9 986 G0x3CA GOTO G0x3DD ; 2BDD 3DA 987 CALL 0x15B ; 215B 3DB 988 GOTO G0x3DE ; 2BDE 3DC 989 G0x3DD CALL 0x2CC ; 22CC 3DD 990 G0x3DE GOTO G0x3E8 ; 2BE8 3DE 991 G0x3DF INCF 0x40, F ; 0AC0 3DF 992 BTFSS 0x43, 0x0 ; 1C43 3.00E+00 993 GOTO G0x3E8 ; 2BE8 3.00E+01 994 BCF 0x43, 0x0 ; 1043 3.00E+02 995 BTFSS 0x2C, 0x1 ; 1CAC 3.00E+03 996 GOTO G0x3E7 ; 2BE7 3.00E+04 997 CALL 0x15B ; 215B 3.00E+05 998 GOTO G0x3E8 ; 2BE8 3.00E+06 999 G0x3E7 CALL 0x2CC ; 22CC 3.00E+07 1000 G0x3E8 GOTO G0x3FD ; 2BFD 3.00E+08 1001 G0x3E9 MOVLW 0x1 ; 3001 3.00E+09 1002 MOVWF 0x40 ; 00C0 3EA 1003 INCF 0x33, F ; 0AB3 3EB 1004 BTFSC STATUS, 0x2 ; 1903 3EC 1005 INCF 0x34, F ; 0AB4 3ED 1006 MOVF 0x34, W ; 834 3EE 1007 SUBLW 0x2D ; 3C2D 3EF 1008 BTFSC STATUS, 0x0 ; 1803 3F0 1009 GOTO G0x3FC ; 2BFC 3F1 1010 XORLW 0xFF ; 3AFF 3F2 1011 BTFSS STATUS, 0x2 ; 1D03 3F3 1012 GOTO G0x3F9 ; 2BF9 3F4 1013 MOVF 0x33, W ; 833 3F5 1014 SUBLW 0xE0 ; 3CE0 3F6 1015 BTFSC STATUS, 0x0 ; 1803 3F7 1016 GOTO G0x3FC ; 2BFC 3F8 1017 G0x3F9 CLRF 0x34 ; 01B4 3F9 1018 CLRF 0x33 ; 01B3 3FA 1019 CALL 0x81 ; 2081 3FB 1020 G0x3FC GOTO G0x2E7 ; 2AE7 3FC 1021 G0x3FD ; GOTO 0x36E ; 2B6E 3FD 1022 ;SLEEP ; 63 3FE 1023 ;ADDLW 0xFF ; 3FFF 3FF 1024 end ;END
;DAVID MILLS #include "p12f675.inc" errorlevel -302 ; CONFIG ; __config 0x319C ; __CONFIG _FOSC_INTRCIO & _WDTE_ON & _PWRTE_OFF & _MCLRE_OFF & _BOREN_OFF & _CP_OFF & _CPD_OFF ; __CONFIG _INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_OFF & _MCLRE_OFF & _BODEN_OFF & _CP_OFF & _CPD_OFF __CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT & _MCLRE_OFF & _CPD_OFF ; cblock 0x20 ; endc radix HEX org 0x000 ; reset vector START MOVLW 0x3 ; 3003 0 1 MOVWF PCLATH ; 008A 1 2 GOTO SETUP ;0x357 ; 2B57 2 3 NOP ; 0 3 4 BTFSC STATUS, 0x5 ; 1A83 4 5 GOTO G0xA ; 280A 5 6 MOVWF 0x24 ; 00A4 6 7 SWAPF STATUS, W ; 0.00E+00 7 8 MOVWF 0x25 ; 00A5 8 9 GOTO G0xF ; 280F 9 10 G0xA BCF STATUS, 0x5 ; 1283 00A 11 MOVWF 0x24 ; 00A4 00B 12 SWAPF STATUS, W ; 0.00E+00 00C 13 MOVWF 0x25 ; 00A5 00D 14 BSF 0x25, 0x1 ; 14A5 00E 15 G0xF MOVF PCLATH, W ; 080A 00F 16 MOVWF 0x2B ; 00AB 10 17 CLRF PCLATH ; 018A 11 18 BCF STATUS, 0x7 ; 1383 12 19 SWAPF 0x24, F ; 0EA4 13 20 MOVF FSR, W ; 804 14 21 MOVWF 0x26 ; 00A6 15 22 MOVF 0x20, W ; 820 16 23 MOVWF 0x27 ; 00A7 17 24 MOVF 0x21, W ; 821 18 25 MOVWF 0x28 ; 00A8 19 26 MOVF 0x22, W ; 822 01A 27 MOVWF 0x29 ; 00A9 01B 28 MOVF 0x23, W ; 823 01C 29 MOVWF 0x2A ; 00AA 01D 30 BCF STATUS, 0x5 ; 1283 01E 31 BTFSS INTCON, 0x5 ; 1E8B 01F 32 GOTO G0x23 ; 2823 20 33 BTFSC INTCON, 0x2 ; 190B 21 34 GOTO G0x36 ; 2836 22 35 G0x23 MOVF 0x26, W ; 826 23 36 MOVWF FSR ; 84 24 37 MOVF 0x27, W ; 827 25 38 MOVWF 0x20 ; 00A0 26 39 MOVF 0x28, W ; 828 27 40 MOVWF 0x21 ; 00A1 28 41 MOVF 0x29, W ; 829 29 42 MOVWF 0x22 ; 00A2 02A 43 MOVF 0x2A, W ; 082A 02B 44 MOVWF 0x23 ; 00A3 02C 45 MOVF 0x2B, W ; 082B 02D 46 MOVWF PCLATH ; 008A 02E 47 SWAPF 0x25, W ; 0.00E+00 02F 48 MOVWF STATUS ; 83 30 49 BCF STATUS, 0x5 ; 1283 31 50 SWAPF 0x24, W ; 0.00E+00 32 51 BTFSC 0x25, 0x1 ; 18A5 33 52 BSF STATUS, 0x5 ; 1683 34 53 RETFIE ; 9 35 54 G0x36 MOVF TMR1H, W ; 080F 36 55 MOVWF 0x23 ; 00A3 37 56 MOVF TMR1L, W ; 080E 38 57 MOVWF 0x20 ; 00A0 39 58 MOVF TMR1H, W ; 080F 03A 59 SUBWF 0x23, W ; 223 03B 60 BTFSS STATUS, 0x2 ; 1D03 03C 61 GOTO G0x36 ; 2836 03D 62 MOVF 0x20, W ; 820 03E 63 MOVWF 0x2D ; 00AD 03F 64 MOVF 0x23, W ; 823 40 65 MOVWF 0x2E ; 00AE 41 66 CLRF TMR1L ; 018E 42 67 CLRF TMR1H ; 018F 43 68 CLRF TMR1L ; 018E 44 69 MOVF 0x3B, W ; 083B 45 70 MOVWF TMR0 ; 81 46 71 BSF 0x2C, 0x0 ; 142C 47 72 BCF INTCON, 0x2 ; 110B 48 73 BCF PCLATH, 0x3 ; 118A 49 74 GOTO G0x23 ; 2823 04A 75 C0x4B MOVLW 0x4A ; 304A 04B 76 MOVWF FSR ; 84 04C 77 MOVF INDF, W ; 800 04D 78 BTFSC STATUS, 0x2 ; 1903 04E 79 GOTO G0x61 ; 2861 04F 80 G0x50 MOVLW 0x6 ; 3006 50 81 MOVWF 0x21 ; 00A1 51 82 G0x52 MOVLW 0xBF ; 30BF 52 83 MOVWF 0x20 ; 00A0 53 84 G0x54 CLRWDT ; 64 54 85 DECFSZ 0x20, F ; 0BA0 55 86 GOTO G0x54 ; 2854 56 87 DECFSZ 0x21, F ; 0BA1 57 88 GOTO G0x52 ; 2852 58 89 MOVLW 0x7A ; 307A 59 90 MOVWF 0x20 ; 00A0 05A 91 G0x5B DECFSZ 0x20, F ; 0BA0 05B 92 GOTO G0x5B ; 285B 05C 93 GOTO G0x5E ; 285E 05D 94 G0x5E CLRWDT ; 64 05E 95 DECFSZ INDF, F ; 0B80 05F 96 GOTO G0x50 ; 2850 60 97 G0x61 RETURN ; 8 61 98 C0x62 MOVLW 0x3 ; 3003 62 99 SUBWF 0x4B, F ; 02CB 63 100 BTFSS STATUS, 0x0 ; 1C03 64 101 GOTO G0x70 ; 2870 65 102 MOVLW 0x4B ; 304B 66 103 MOVWF FSR ; 84 67 104 MOVF INDF, W ; 800 68 105 BTFSC STATUS, 0x2 ; 1903 69 106 GOTO G0x70 ; 2870 06A 107 GOTO G0x6E ; 286E 06B 108 G0x6C NOP ; 0 06C 109 CLRWDT ; 64 06D 110 G0x6E DECFSZ INDF, F ; 0B80 06E 111 GOTO G0x6C ; 286C 06F 112 G0x70 RETURN ; 8 70 113 C0x71 BSF STATUS, 0x5 ; 1683 71 114 BSF GPIO, 0x0 ; 1405 72 115 BCF STATUS, 0x5 ; 1283 73 116 G0x74 BSF GPIO, 0x4 ; 1605 74 117 MOVF 0x49, W ; 849 75 118 MOVWF 0x4B ; 00CB 76 119 CALL C0x62 ; 2062 77 120 BCF GPIO, 0x4 ; 1205 78 121 MOVF 0x49, W ; 849 79 122 MOVWF 0x4B ; 00CB 07A 123 CALL C0x62 ; 2062 07B 124 DECF 0x4A, F ; 03CA 07C 125 MOVF 0x4A, F ; 08CA 07D 126 BTFSS STATUS, 0x2 ; 1D03 07E 127 GOTO G0x74 ; 2874 07F 128 RETURN ; 8 80 129 C0x81 BSF STATUS, 0x5 ; 1683 81 130 BSF GPIO, 0x0 ; 1405 82 131 MOVLW 0xF0 ; 30F0 83 132 BCF STATUS, 0x5 ; 1283 84 133 MOVWF 0x49 ; 00C9 85 134 MOVLW 0x64 ; 3064 86 135 MOVWF 0x4A ; 00CA 87 136 CALL C0x71 ; 2071 88 137 MOVLW 0xF0 ; 30F0 89 138 MOVWF 0x49 ; 00C9 08A 139 MOVLW 0x64 ; 3064 08B 140 MOVWF 0x4A ; 00CA 08C 141 CALL C0x71 ; 2071 08D 142 MOVLW 0xF0 ; 30F0 08E 143 MOVWF 0x49 ; 00C9 08F 144 MOVLW 0x64 ; 3064 90 145 MOVWF 0x4A ; 00CA 91 146 CALL C0x71 ; 2071 92 147 MOVLW 0x1E ; 301E 93 148 MOVWF 0x4A ; 00CA 94 149 CALL C0x4B ; 204B 95 150 MOVLW 0xC8 ; 30C8 96 151 MOVWF 0x49 ; 00C9 97 152 MOVLW 0x78 ; 3078 98 153 MOVWF 0x4A ; 00CA 99 154 CALL C0x71 ; 2071 09A 155 MOVLW 0xC8 ; 30C8 09B 156 MOVWF 0x49 ; 00C9 09C 157 MOVLW 0x78 ; 3078 09D 158 MOVWF 0x4A ; 00CA 09E 159 CALL C0x71 ; 2071 09F 160 MOVLW 0xC8 ; 30C8 0A0 161 MOVWF 0x49 ; 00C9 0A1 162 MOVLW 0x78 ; 3078 0A2 163 MOVWF 0x4A ; 00CA 0A3 164 CALL C0x71 ; 2071 0A4 165 MOVLW 0x1E ; 301E 0A5 166 MOVWF 0x4A ; 00CA 0A6 167 CALL C0x4B ; 204B 0A7 168 MOVLW 0x78 ; 3078 0A8 169 MOVWF 0x49 ; 00C9 0A9 170 MOVLW 0xC8 ; 30C8 0AA 171 MOVWF 0x4A ; 00CA 0AB 172 CALL C0x71 ; 2071 0AC 173 MOVLW 0x78 ; 3078 0AD 174 MOVWF 0x49 ; 00C9 0AE 175 MOVLW 0xC8 ; 30C8 0AF 176 MOVWF 0x4A ; 00CA 0B0 177 CALL C0x71 ; 2071 0B1 178 MOVLW 0x78 ; 3078 0B2 179 MOVWF 0x49 ; 00C9 0B3 180 MOVLW 0xC8 ; 30C8 0B4 181 MOVWF 0x4A ; 00CA 0B5 182 CALL C0x71 ; 2071 0B6 183 RETURN ; 8 0B7 184 G0xB8 MOVLW 0x7 ; 3007 0B8 185 MOVWF CMCON ; 99 0B9 186 BSF STATUS, 0x5 ; 1683 0BA 187 MOVF GPIO, W ; 805 0BB 188 MOVWF GPIO ; 85 0BC 189 CLRWDT ; 64 0BD 190 MOVLW 0x10 ; 3010 0BE 191 BCF STATUS, 0x5 ; 1283 0BF 192 MOVWF 0x20 ; 00A0 0C0 193 G0xC1 DECFSZ 0x20, F ; 0BA0 0C1 194 GOTO G0xC1 ; 28C1 0C2 195 MOVF CMCON, W ; 819 0C3 196 BCF PIR1, 0x3 ; 118C 0C4 197 MOVLW 0x3F ; 303F 0C5 198 BSF STATUS, 0x5 ; 1683 0C6 199 MOVWF GPIO ; 85 0C7 200 BCF STATUS, 0x5 ; 1283 0C8 201 BCF ADCON0, 0x6 ; 131F 0C9 202 BSF STATUS, 0x5 ; 1683 0CA 203 BCF ADCON0, 0x0 ; 101F 0CB 204 BCF ADCON0, 0x1 ; 109F 0CC 205 BSF ADCON0, 0x2 ; 151F 0CD 206 BCF ADCON0, 0x3 ; 119F 0CE 207 BSF ADCON0, 0x4 ; 161F 0CF 208 BSF ADCON0, 0x5 ; 169F 0D0 209 BCF ADCON0, 0x6 ; 131F 0D1 210 BCF STATUS, 0x5 ; 1283 0D2 211 BCF ADCON0, 0x7 ; 139F 0D3 212 BSF ADCON0, 0x0 ; 141F 0D4 213 MOVLW 0x8 ; 3008 0D5 214 MOVWF 0x21 ; 00A1 0D6 215 MOVF ADCON0, W ; 081F 0D7 216 ANDLW 0xF3 ; 39F3 0D8 217 IORWF 0x21, W ; 421 0D9 218 MOVWF ADCON0 ; 009F 0DA 219 CLRWDT ; 64 0DB 220 MOVLW 0xC7 ; 30C7 0DC 221 MOVWF 0x4B ; 00CB 0DD 222 CALL C0x62 ; 2062 0DE 223 BSF ADCON0, 0x1 ; 149F 0DF 224 G0xE0 BTFSC ADCON0, 0x1 ; 189F 0.00E+00 225 GOTO G0xE0 ; 2.80E+01 0.00E+00 226 MOVF ADRESH, W ; 081E 0.00E+00 227 MOVWF 0x44 ; 00C4 0.00E+00 228 CLRF 0x46 ; 01C6 0.00E+00 229 G0xE5 ;CHECK MOVF 0x46, W ; 846 0.00E+00 230 SUBLW 0x13 ; 3C13 0.00E+00 231 BTFSS STATUS, 0x0 ; 1C03 0.00E+00 232 GOTO G0xFD ; 28FD 0.00E+00 233 CLRWDT ; 64 0.00E+00 234 MOVLW 0xA6 ; 30A6 0EA 235 MOVWF 0x20 ; 00A0 0EB 236 G0xEC DECFSZ 0x20, F ; 0BA0 0EC 237 GOTO G0xEC ; 28EC 0ED 238 BSF ADCON0, 0x1 ; 149F 0EE 239 G0xEF BTFSC ADCON0, 0x1 ; 189F 0EF 240 GOTO G0xEF ; 28EF 0F0 241 MOVF ADRESH, W ; 081E 0F1 242 MOVWF 0x45 ; 00C5 0F2 243 MOVF 0x45, W ; 845 0F3 244 SUBWF 0x44, W ; 244 0F4 245 BTFSS STATUS, 0x0 ; 1C03 0F5 246 INCF 0x44, F ; 0AC4 0F6 247 MOVF 0x44, W ; 844 0F7 248 SUBWF 0x45, W ; 245 0F8 249 BTFSS STATUS, 0x0 ; 1C03 0F9 250 DECF 0x44, F ; 03C4 0FA 251 INCF 0x46, F ; 0AC6 0FB 252 GOTO G0xE5 ; 2.80E+06 0FC 253 G0xFD MOVF 0x44, W ; 844 0FD 254 SUBLW 0x68 ; 3C68 0FE 255 BTFSS STATUS, 0x0 ; 1C03 0FF 256 GOTO G0x122 ; 2922 100 257 BSF STATUS, 0x5 ; 1683 101 258 BCF GPIO, 0x4 ; 1205 102 259 BCF STATUS, 0x5 ; 1283 103 260 CALL C0x81 ; 2081 104 261 MOVLW 0xC8 ; 30C8 105 262 MOVWF 0x4A ; 00CA 106 263 CALL C0x4B ; 204B 107 264 CALL C0x81 ; 2081 108 265 BSF STATUS, 0x5 ; 1683 109 266 BCF GPIO, 0x0 ; 1005 10A 267 BCF STATUS, 0x5 ; 1283 10B 268 CLRF 0x46 ; 01C6 10C 269 G0x10D MOVF 0x46, W ; 846 10D 270 SUBLW 0x13 ; 3C13 10E 271 BTFSS STATUS, 0x0 ; 1C03 10F 272 GOTO G0x11B ; 291B 110 273 BSF GPIO, 0x0 ; 1405 111 274 MOVLW 0x50 ; 3050 112 275 MOVWF 0x4A ; 00CA 113 276 CALL C0x4B ; 204B 114 277 BCF GPIO, 0x0 ; 1005 115 278 MOVLW 0x50 ; 3050 116 279 MOVWF 0x4A ; 00CA 117 280 CALL C0x4B ; 204B 118 281 INCF 0x46, F ; 0AC6 119 282 GOTO G0x10D ; 290D 11A 283 G0x11B MOVLW 0x4 ; 3004 11B 284 MOVWF 0x47 ; 00C7 11C 285 G0x11D MOVLW 0xFA ; 30FA 11D 286 MOVWF 0x4A ; 00CA 11E 287 CALL C0x4B ; 204B 11F 288 DECFSZ 0x47, F ; 0BC7 120 289 GOTO G0x11D ; 291D 121 290 G0x122 GOTO G0x36B ; 2B6B 122 291 G0x123 BCF INTCON, 0x6 ; 130B 123 292 G0x124 BCF INTCON, 0x7 ; 138B 124 293 BTFSC INTCON, 0x7 ; 1B8B 125 294 GOTO G0x124 ; 2924 126 295 MOVLW 0xC ; 300C 127 296 MOVWF 0x20 ; 00A0 128 297 CLRF TMR0 ; 181 129 298 MOVLW 0x81 ; 3081 12A 299 MOVWF FSR ; 84 12B 300 MOVF INDF, W ; 800 12C 301 ANDLW 0xF0 ; 39F0 12D 302 IORLW 0x7 ; 3807 12E 303 MOVWF INDF ; 80 12F 304 CLRWDT ; 64 130 305 MOVF INDF, W ; 800 131 306 ANDLW 0xF7 ; 39F7 132 307 BTFSC 0x20, 0x3 ; 19A0 133 308 ANDLW 0xF0 ; 39F0 134 309 IORWF 0x20, W ; 420 135 310 MOVWF INDF ; 80 136 311 BCF ADCON0, 0x0 ; 101F 137 312 BCF ADCON0, 0x6 ; 131F 138 313 BSF STATUS, 0x5 ; 1683 139 314 BCF ADCON0, 0x0 ; 101F 13A 315 BCF ADCON0, 0x1 ; 109F 13B 316 BCF ADCON0, 0x2 ; 111F 13C 317 BCF ADCON0, 0x3 ; 119F 13D 318 MOVF TMR0, W ; 801 13E 319 ANDLW 0xC7 ; 39C7 13F 320 IORLW 0x38 ; 3838 140 321 MOVWF TMR0 ; 81 141 322 MOVLW 0x5 ; 3005 142 323 BCF STATUS, 0x5 ; 1283 143 324 MOVWF T1CON ; 90 144 325 MOVLW 0x3 ; 3003 145 326 MOVWF CMCON ; 99 146 327 BSF STATUS, 0x5 ; 1683 147 328 MOVF GPIO, W ; 805 148 329 IORLW 0x6 ; 3806 149 330 ANDLW 0xFB ; 39FB 14A 331 MOVWF GPIO ; 85 14B 332 CLRWDT ; 64 14C 333 MOVLW 0x10 ; 3010 14D 334 BCF STATUS, 0x5 ; 1283 14E 335 MOVWF 0x20 ; 00A0 14F 336 G0x150 DECFSZ 0x20, F ; 0BA0 150 337 GOTO G0x150 ; 2950 151 338 MOVF CMCON, W ; 819 152 339 BCF PIR1, 0x3 ; 118C 153 340 MOVLW 0xA1 ; 30A1 154 341 BSF STATUS, 0x5 ; 1683 155 342 MOVWF CMCON ; 99 156 343 MOVLW 0x2A ; 302A 157 344 MOVWF GPIO ; 85 158 345 BCF STATUS, 0x5 ; 1283 159 346 GOTO G0x36C ; 2B6C 15A 347 C0x15B BSF STATUS, 0x5 ; 1683 15B 348 BCF GPIO, 0x0 ; 1005 15C 349 BCF STATUS, 0x5 ; 1283 15D 350 BSF GPIO, 0x0 ; 1405 15E 351 MOVLW 0x6E ; 306E 15F 352 MOVWF 0x47 ; 00C7 160 353 MOVLW 0x96 ; 3096 161 354 MOVWF 0x48 ; 00C8 162 355 G0x163 BSF GPIO, 0x4 ; 1605 163 356 MOVF 0x47, W ; 847 164 357 MOVWF 0x4B ; 00CB 165 358 CALL C0x62 ; 2062 166 359 BCF GPIO, 0x4 ; 1205 167 360 MOVF 0x47, W ; 847 168 361 MOVWF 0x4B ; 00CB 169 362 CALL C0x62 ; 2062 16A 363 DECF 0x48, F ; 03C8 16B 364 MOVF 0x48, F ; 08C8 16C 365 BTFSS STATUS, 0x2 ; 1D03 16D 366 GOTO G0x163 ; 2963 16E 367 BSF STATUS, 0x5 ; 1683 16F 368 BSF GPIO, 0x0 ; 1405 170 369 MOVLW 0xA ; 300A 171 370 BCF STATUS, 0x5 ; 1283 172 371 MOVWF 0x4A ; 00CA 173 372 CALL C0x4B ; 204B 174 373 RETURN ; 8 175 374 C0x176 MOVLW 0xFF ; 30FF 176 375 MOVWF 0x49 ; 00C9 177 376 MOVWF 0x4A ; 00CA 178 377 CALL C0x71 ; 2071 179 378 MOVLW 0xFF ; 30FF 17A 379 MOVWF 0x49 ; 00C9 17B 380 MOVWF 0x4A ; 00CA 17C 381 CALL C0x71 ; 2071 17D 382 MOVLW 0xFF ; 30FF 17E 383 MOVWF 0x49 ; 00C9 17F 384 MOVWF 0x4A ; 00CA 180 385 CALL C0x71 ; 2071 181 386 MOVLW 0xFF ; 30FF 182 387 MOVWF 0x49 ; 00C9 183 388 MOVWF 0x4A ; 00CA 184 389 CALL C0x71 ; 2071 185 390 MOVLW 0xFF ; 30FF 186 391 MOVWF 0x49 ; 00C9 187 392 MOVWF 0x4A ; 00CA 188 393 CALL C0x71 ; 2071 189 394 MOVLW 0xFF ; 30FF 18A 395 MOVWF 0x49 ; 00C9 18B 396 MOVWF 0x4A ; 00CA 18C 397 CALL C0x71 ; 2071 18D 398 MOVLW 0xFF ; 30FF 18E 399 MOVWF 0x49 ; 00C9 18F 400 MOVWF 0x4A ; 00CA 190 401 CALL C0x71 ; 2071 191 402 MOVLW 0x4 ; 3004 192 403 MOVWF 0x49 ; 00C9 193 404 G0x194 MOVLW 0xFA ; 30FA 194 405 MOVWF 0x4A ; 00CA 195 406 CALL C0x4B ; 204B 196 407 DECFSZ 0x49, F ; 0BC9 197 408 GOTO G0x194 ; 2994 198 409 CLRF 0x48 ; 01C8 199 410 G0x19A MOVF 0x3E, W ; 083E 19A 411 SUBWF 0x48, W ; 248 19B 412 BTFSC STATUS, 0x0 ; 1803 19C 413 GOTO G0x1A8 ; 29A8 19D 414 MOVLW 0x96 ; 3096 19E 415 MOVWF 0x49 ; 00C9 19F 416 MOVLW 0xE6 ; 3.00E+07 1A0 417 MOVWF 0x4A ; 00CA 1A1 418 CALL C0x71 ; 2071 1A2 419 MOVLW 0xC8 ; 30C8 1A3 420 MOVWF 0x4A ; 00CA 1A4 421 CALL C0x4B ; 204B 1A5 422 INCF 0x48, F ; 0AC8 1A6 423 GOTO G0x19A ; 299A 1A7 424 G0x1A8 MOVLW 0xC ; 300C 1A8 425 MOVWF 0x49 ; 00C9 1A9 426 G0x1AA MOVLW 0xFA ; 30FA 1AA 427 MOVWF 0x4A ; 00CA 1AB 428 CALL C0x4B ; 204B 1AC 429 DECFSZ 0x49, F ; 0BC9 1AD 430 GOTO G0x1AA ; 29AA 1AE 431 CLRF PCLATH ; 018A 1AF 432 GOTO START ;0x0 ; 2800 1B0 433 RETURN ; 8 1B1 434 G0x1B2 BCF INTCON, 0x6 ; 130B 1B2 435 G0x1B3 BCF INTCON, 0x7 ; 138B 1B3 436 BTFSC INTCON, 0x7 ; 1B8B 1B4 437 GOTO G0x1B3 ; 29B3 1B5 438 BCF 0x46, 0x1 ; 10C6 1B6 439 MOVLW 0x1 ; 3001 1B7 440 MOVWF 0x3F ; 00BF 1B8 441 MOVLW 0xE ; 300E 1B9 442 MOVWF 0x45 ; 00C5 1BA 443 G0x1BB INCF 0x3F, F ; 0ABF 1BB 444 MOVF 0x3F, W ; 083F 1BC 445 IORLW 0xA0 ; 38A0 1BD 446 MOVWF 0x47 ; 00C7 1BE 447 BSF STATUS, 0x5 ; 1683 1BF 448 MOVWF CMCON ; 99 1C0 449 BCF STATUS, 0x5 ; 1283 1C1 450 CALL C0x15B ; 215B 1C2 451 MOVLW 0xC8 ; 30C8 1C3 452 MOVWF 0x4A ; 00CA 1C4 453 CALL C0x4B ; 204B 1C5 454 CLRF TMR0 ; 181 1C6 455 BCF INTCON, 0x2 ; 110B 1C7 456 MOVLW 0xA ; 300A 1C8 457 MOVWF 0x4A ; 00CA 1C9 458 CALL C0x4B ; 204B 1CA 459 BCF 0x46, 0x0 ; 1046 1CB 460 BTFSC INTCON, 0x2 ; 190B 1CC 461 BSF 0x46, 0x0 ; 1446 1CD 462 MOVF TMR0, W ; 801 1CE 463 MOVWF 0x44 ; 00C4 1CF 464 BCF 0x2C, 0x1 ; 10AC 1D0 465 BTFSC 0x46, 0x0 ; 1846 1D1 466 BSF 0x2C, 0x1 ; 14AC 1D2 467 MOVF 0x44, W ; 844 1D3 468 MOVWF 0x3B ; 00BB 1D4 469 MOVF 0x44, F ; 08C4 1D5 470 BTFSS STATUS, 0x2 ; 1D03 1D6 471 GOTO G0x1DC ; 29DC 1D7 472 BTFSC 0x46, 0x0 ; 1846 1D8 473 GOTO G0x1DC ; 29DC 1D9 474 DECF 0x45, F ; 03C5 1DA 475 GOTO G0x1F2 ; 29F2 1DB 476 G0x1DC MOVF 0x44, W ; 844 1DC 477 SUBLW 0xFA ; 3CFA 1DD 478 BTFSS STATUS, 0x0 ; 1C03 1DE 479 GOTO G0x1E2 ; 2.90E+03 1DF 480 BTFSS 0x46, 0x0 ; 1C46 1.00E+00 481 GOTO G0x1E6 ; 2.90E+07 1.00E+01 482 G0x1E2 MOVLW 0x2 ; 3002 1.00E+02 483 MOVWF 0x3E ; 00BE 1.00E+03 484 CALL C0x176 ; 2176 1.00E+04 485 GOTO G0x1F1 ; 29F1 1.00E+05 486 G0x1E6 MOVF 0x44, W ; 844 1.00E+06 487 SUBLW 0x2 ; 3C02 1.00E+07 488 BTFSC STATUS, 0x0 ; 1803 1.00E+08 489 GOTO G0x1F1 ; 29F1 1.00E+09 490 MOVF 0x44, W ; 844 1EA 491 SUBLW 0x95 ; 3C95 1EB 492 BTFSS STATUS, 0x0 ; 1C03 1EC 493 GOTO G0x1F1 ; 29F1 1ED 494 MOVLW 0x1 ; 3001 1EE 495 MOVWF 0x3E ; 00BE 1EF 496 CALL C0x176 ; 2176 1F0 497 G0x1F1 BSF 0x46, 0x1 ; 14C6 1F1 498 G0x1F2 BTFSC 0x46, 0x1 ; 18C6 1F2 499 GOTO G0x1F7 ; 29F7 1F3 500 MOVF 0x45, F ; 08C5 1F4 501 BTFSS STATUS, 0x2 ; 1D03 1F5 502 GOTO G0x1BB ; 29BB 1F6 503 G0x1F7 MOVF 0x45, F ; 08C5 1F7 504 BTFSS STATUS, 0x2 ; 1D03 1F8 505 GOTO G0x1FD ; 29FD 1F9 506 MOVLW 0x4 ; 3004 1FA 507 MOVWF 0x3E ; 00BE 1FB 508 CALL C0x176 ; 2176 1FC 509 G0x1FD MOVF 0x3F, W ; 083F 1FD 510 SUBLW 0xE ; 3C0E 1FE 511 BTFSS STATUS, 0x0 ; 1C03 1FF 512 GOTO G0x24F ; 2A4F 200 513 INCF 0x3F, F ; 0ABF 201 514 MOVF 0x3F, W ; 083F 202 515 IORLW 0xA0 ; 38A0 203 516 MOVWF 0x47 ; 00C7 204 517 BSF STATUS, 0x5 ; 1683 205 518 MOVWF CMCON ; 99 206 519 BCF STATUS, 0x5 ; 1283 207 520 MOVF 0x44, W ; 844 208 521 SUBLW 0xFF ; 3CFF 209 522 MOVWF 0x3B ; 00BB 20A 523 MOVF INTCON, W ; 080B 20B 524 MOVWF 0x20 ; 00A0 20C 525 BCF INTCON, 0x7 ; 138B 20D 526 BSF STATUS, 0x5 ; 1683 20E 527 CLRF EEADR ;0x1B ; 019B 20F 528 BCF STATUS, 0x5 ; 1283 210 529 MOVF 0x3F, W ; 083F 211 530 BSF STATUS, 0x5 ; 1683 212 531 MOVWF EEDATA ;0x1A ; 009A 213 532 BCF EECON1,7 ;0x1C, 0x7 ; 139C 214 533 BSF EECON1,2 ;0x1C, 0x2 ; 151C 215 534 MOVLW 0x55 ; 3055 216 535 MOVWF EECON2 ;0x1D ; 009D 217 536 MOVLW 0xAA ; 30AA 218 537 MOVWF EECON2 ;0x1D ; 009D 219 538 BSF EECON1,1 ;0x1C, 0x1 ; 149C 21A 539 G0x21B BTFSC EECON1,1 ;0x1C, 0x1 ; 189C 21B 540 GOTO G0x21B ; 2A1B 21C 541 BCF EECON1,2 ;0x1C, 0x2 ; 111C 21D 542 BCF STATUS, 0x5 ; 1283 21E 543 MOVF 0x20, W ; 820 21F 544 IORWF INTCON, F ; 048B 220 545 MOVF INTCON, W ; 080B 221 546 MOVWF 0x20 ; 00A0 222 547 BCF INTCON, 0x7 ; 138B 223 548 MOVLW 0x1 ; 3001 224 549 BSF STATUS, 0x5 ; 1683 225 550 MOVWF EEADR ;0x1B ; 009B 226 551 BCF STATUS, 0x5 ; 1283 227 552 MOVF 0x3B, W ; 083B 228 553 BSF STATUS, 0x5 ; 1683 229 554 MOVWF EEDATA ;0x1A ; 009A 22A 555 BCF EECON1,7 ;0x1C, 0x7 ; 139C 22B 556 BSF EECON1,2 ;0x1C, 0x2 ; 151C 22C 557 MOVLW 0x55 ; 3055 22D 558 MOVWF EECON2 ;0x1D ; 009D 22E 559 MOVLW 0xAA ; 30AA 22F 560 MOVWF EECON2 ;0x1D ; 009D 230 561 BSF EECON1,1 ;0x1C, 0x1 ; 149C 231 562 G0x232 BTFSC EECON1,1 ;0x1C, 0x1 ; 189C 232 563 GOTO G0x232 ; 2A32 233 564 BCF EECON1,2 ;0x1C, 0x2 ; 111C 234 565 BCF STATUS, 0x5 ; 1283 235 566 MOVF 0x20, W ; 820 236 567 IORWF INTCON, F ; 048B 237 568 MOVF INTCON, W ; 080B 238 569 MOVWF 0x20 ; 00A0 239 570 BCF INTCON, 0x7 ; 138B 23A 571 MOVLW 0x2 ; 3002 23B 572 BSF STATUS, 0x5 ; 1683 23C 573 MOVWF EEADR ;0x1B ; 009B 23D 574 BCF STATUS, 0x5 ; 1283 23E 575 MOVF 0x44, W ; 844 23F 576 BSF STATUS, 0x5 ; 1683 240 577 MOVWF EEDATA ;0x1A ; 009A 241 578 BCF EECON1,7 ;0x1C, 0x7 ; 139C 242 579 BSF EECON1,2 ;0x1C, 0x2 ; 151C 243 580 MOVLW 0x55 ; 3055 244 581 MOVWF EECON2 ;0x1D ; 009D 245 582 MOVLW 0xAA ; 30AA 246 583 MOVWF EECON2 ;0x1D ; 009D 247 584 BSF EECON1,1 ;0x1C, 0x1 ; 149C 248 585 G0x249 BTFSC EECON1,1 ;0x1C, 0x1 ; 189C 249 586 GOTO G0x249 ; 2A49 24A 587 BCF EECON1,2 ;0x1C, 0x2 ; 111C 24B 588 BCF STATUS, 0x5 ; 1283 24C 589 MOVF 0x20, W ; 820 24D 590 IORWF INTCON, F ; 048B 24E 591 G0x24F GOTO G0x36D ; 2B6D 24F 592 G0x250 CLRF 0x34 ; 01B4 250 593 CLRF 0x33 ; 01B3 251 594 CLRF 0x30 ; 01B0 252 595 CLRF 0x2F ; 01AF 253 596 CLRF 0x45 ; 01C5 254 597 CLRF 0x46 ; 01C6 255 598 BCF 0x47, 0x0 ; 1047 256 599 CLRF TMR1L ; 018E 257 600 CLRF TMR1H ; 018F 258 601 CLRF TMR1L ; 018E 259 602 CLRF TMR0 ; 181 25A 603 BCF INTCON, 0x2 ; 110B 25B 604 BCF PIR1, 0x0 ; 100C 25C 605 G0x260 BSF INTCON, 0x5 ; 168B 25D 606 MOVLW 0xC0 ; 30C0 25E 607 IORWF INTCON, F ; 048B 25F 608 BTFSC GPIO, 0x3 ; 1985 260 609 GOTO G0x264 ; 2A64 261 610 CLRF PCLATH ; 018A 262 611 GOTO START ;0x0 ; 2800 263 612 G0x264 BTFSS 0x2C, 0x0 ; 1C2C 264 613 GOTO G0x260 ; 2A60 265 614 MOVF 0x2E, W ; 082E 266 615 MOVWF 0x30 ; 00B0 267 616 MOVF 0x2D, W ; 082D 268 617 MOVWF 0x2F ; 00AF 269 618 G0x26A BCF 0x2C, 0x0 ; 102C 26A 619 CLRWDT ; 64 26B 620 G0x26C BTFSC GPIO, 0x3 ; 1985 26C 621 GOTO G0x270 ; 2A70 26D 622 CLRF PCLATH ; 018A 26E 623 GOTO START ;0x0 ; 2800 26F 624 G0x270 BTFSS 0x2C, 0x0 ; 1C2C 270 625 GOTO G0x26C ; 2A6C 271 626 MOVF 0x30, W ; 830 272 627 SUBWF 0x2E, W ; 022E 273 628 BTFSS STATUS, 0x0 ; 1C03 274 629 GOTO G0x27F ; 2A7F 275 630 BTFSS STATUS, 0x2 ; 1D03 276 631 GOTO G0x27C ; 2A7C 277 632 MOVF 0x2D, W ; 082D 278 633 SUBWF 0x2F, W ; 022F 279 634 BTFSC STATUS, 0x0 ; 1803 27A 635 GOTO G0x27F ; 2A7F 27B 636 G0x27C INCF 0x2F, F ; 0AAF 27C 637 BTFSC STATUS, 0x2 ; 1903 27D 638 G0x2E7 INCF 0x30, F ; 0AB0 27E 639 G0x27F MOVF 0x2E, W ; 082E 27F 640 SUBWF 0x30, W ; 230 280 641 BTFSS STATUS, 0x0 ; 1C03 281 642 GOTO G0x28D ; 2A8D 282 643 BTFSS STATUS, 0x2 ; 1D03 283 644 GOTO G0x289 ; 2A89 284 645 MOVF 0x2F, W ; 082F 285 646 SUBWF 0x2D, W ; 022D 286 647 BTFSC STATUS, 0x0 ; 1803 287 648 GOTO G0x28D ; 2A8D 288 649 G0x289 MOVF 0x2F, W ; 082F 289 650 BTFSC STATUS, 0x2 ; 1903 28A 651 DECF 0x30, F ; 03B0 28B 652 DECF 0x2F, F ; 03AF 28C 653 G0x28D INCFSZ 0x46, F ; 0FC6 28D 654 GOTO G0x292 ; 2A92 28E 655 MOVLW 0x3 ; 3003 28F 656 MOVWF 0x3E ; 00BE 290 657 CALL C0x176 ; 2176 291 658 G0x292 MOVF 0x2F, W ; 082F 292 659 SUBWF 0x2D, W ; 022D 293 660 BTFSS STATUS, 0x2 ; 1D03 294 661 GOTO G0x29A ; 2A9A 295 662 MOVF 0x30, W ; 830 296 663 SUBWF 0x2E, W ; 022E 297 664 BTFSC STATUS, 0x2 ; 1903 298 665 GOTO G0x2A0 ; 2AA0 299 666 G0x29A MOVF 0x2E, W ; 082E 29A 667 MOVWF 0x30 ; 00B0 29B 668 MOVF 0x2D, W ; 082D 29C 669 MOVWF 0x2F ; 00AF 29D 670 CLRF 0x45 ; 01C5 29E 671 GOTO G0x2A5 ; 2AA5 29F 672 G0x2A0 INCF 0x45, F ; 0AC5 2A0 673 MOVF 0x45, W ; 845 2A1 674 SUBLW 0x3 ; 3C03 2A2 675 BTFSS STATUS, 0x0 ; 1C03 2A3 676 BSF 0x47, 0x0 ; 1447 2A4 677 G0x2A5 BTFSS 0x47, 0x0 ; 1C47 2A5 678 GOTO G0x26A ; 2A6A 2A6 679 MOVF 0x30, W ; 830 2A7 680 MOVWF 0x32 ; 00B2 2A8 681 MOVF 0x2F, W ; 082F 2A9 682 MOVWF 0x31 ; 00B1 2AA 683 MOVF 0x30, W ; 830 2AB 684 MOVWF 0x3A ; 00BA 2AC 685 MOVF 0x2F, W ; 082F 2AD 686 MOVWF 0x39 ; 00B9 2AE 687 MOVLW 0xFF ; 30FF 2AF 688 MOVWF 0x48 ; 00C8 2B0 689 BSF STATUS, 0x5 ; 1683 2B1 690 BSF GPIO, 0x0 ; 1405 2B2 691 BCF STATUS, 0x5 ; 1283 2B3 692 G0x2B4 BSF GPIO, 0x4 ; 1605 2B4 693 MOVF 0x48, W ; 848 2B5 694 MOVWF 0x4B ; 00CB 2B6 695 CALL C0x62 ; 2062 2B7 696 BCF GPIO, 0x4 ; 1205 2B8 697 MOVF 0x48, W ; 848 2B9 698 MOVWF 0x4B ; 00CB 2BA 699 CALL C0x62 ; 2062 2BB 700 MOVF 0x48, W ; 848 2BC 701 MOVWF 0x4B ; 00CB 2BD 702 CALL C0x62 ; 2062 2BE 703 DECF 0x48, F ; 03C8 2BF 704 MOVF 0x48, W ; 848 2C0 705 SUBLW 0x64 ; 3C64 2C1 706 BTFSS STATUS, 0x0 ; 1C03 2C2 707 GOTO G0x2B4 ; 2AB4 2C3 708 MOVLW 0x2 ; 3002 2C4 709 MOVWF 0x49 ; 00C9 2C5 710 G0x2C6 MOVLW 0xFA ; 30FA 2C6 711 MOVWF 0x4A ; 00CA 2C7 712 CALL C0x4B ; 204B 2C8 713 DECFSZ 0x49, F ; 0BC9 2C9 714 GOTO G0x2C6 ; 2AC6 2CA 715 GOTO G0x36E ; 2B6E 2CB 716 C0x2CC BSF STATUS, 0x5 ; 1683 2CC 717 BCF GPIO, 0x0 ; 1005 2CD 718 BCF STATUS, 0x5 ; 1283 2CE 719 BCF GPIO, 0x0 ; 1005 2CF 720 MOVLW 0xFA ; 30FA 2D0 721 MOVWF 0x44 ; 00C4 2D1 722 MOVLW 0x50 ; 3050 2D2 723 MOVWF 0x45 ; 00C5 2D3 724 G0x2D4 BSF GPIO, 0x4 ; 1605 2D4 725 MOVF 0x44, W ; 844 2D5 726 MOVWF 0x4B ; 00CB 2D6 727 CALL C0x62 ; 2062 2D7 728 BCF GPIO, 0x4 ; 1205 2D8 729 MOVF 0x44, W ; 844 2D9 730 MOVWF 0x4B ; 00CB 2DA 731 CALL C0x62 ; 2062 2DB 732 DECF 0x45, F ; 03C5 2DC 733 MOVF 0x45, F ; 08C5 2DD 734 BTFSS STATUS, 0x2 ; 1D03 2DE 735 GOTO G0x2D4 ; 2AD4 2DF 736 BSF STATUS, 0x5 ; 1683 2.00E+00 737 BSF GPIO, 0x0 ; 1405 2.00E+01 738 MOVLW 0xA ; 300A 2.00E+02 739 BCF STATUS, 0x5 ; 1283 2.00E+03 740 MOVWF 0x4A ; 00CA 2.00E+04 741 CALL C0x4B ; 204B 2.00E+05 742 RETURN ; 8 2.00E+06 743 MOVF 0x38, W ; 838 2.00E+07 744 SUBWF 0x36, W ; 236 2.00E+08 745 BTFSS STATUS, 0x0 ; 1C03 2.00E+09 746 GOTO G0x2F5 ; 2AF5 2EA 747 BTFSS STATUS, 0x2 ; 1D03 2EB 748 GOTO G0x2F1 ; 2AF1 2EC 749 MOVF 0x35, W ; 835 2ED 750 SUBWF 0x37, W ; 237 2EE 751 BTFSC STATUS, 0x0 ; 1803 2EF 752 GOTO G0x2F5 ; 2AF5 2F0 753 G0x2F1 MOVF 0x32, W ; 832 2F1 754 MOVWF 0x30 ; 00B0 2F2 755 MOVF 0x31, W ; 831 2F3 756 MOVWF 0x2F ; 00AF 2F4 757 G0x2F5 MOVF 0x38, W ; 838 2F5 758 MOVWF 0x36 ; 00B6 2F6 759 MOVF 0x37, W ; 837 2F7 760 MOVWF 0x35 ; 00B5 2F8 761 MOVF 0x3A, W ; 083A 2F9 762 SUBWF 0x2E, W ; 022E 2FA 763 BTFSS STATUS, 0x0 ; 1C03 2FB 764 GOTO G0x306 ; 2B06 2FC 765 BTFSS STATUS, 0x2 ; 1D03 2FD 766 GOTO G0x303 ; 2B03 2FE 767 MOVF 0x2D, W ; 082D 2FF 768 SUBWF 0x39, W ; 239 300 769 BTFSC STATUS, 0x0 ; 1803 301 770 GOTO G0x306 ; 2B06 302 771 G0x303 INCF 0x39, F ; 0AB9 303 772 BTFSC STATUS, 0x2 ; 1903 304 773 INCF 0x3A, F ; 0ABA 305 774 G0x306 MOVF 0x2E, W ; 082E 306 775 SUBWF 0x3A, W ; 023A 307 776 BTFSS STATUS, 0x0 ; 1C03 308 777 GOTO G0x314 ; 2B14 309 778 BTFSS STATUS, 0x2 ; 1D03 30A 779 GOTO G0x310 ; 2B10 30B 780 MOVF 0x39, W ; 839 30C 781 SUBWF 0x2D, W ; 022D 30D 782 BTFSC STATUS, 0x0 ; 1803 30E 783 GOTO G0x314 ; 2B14 30F 784 G0x310 MOVF 0x39, W ; 839 310 785 BTFSC STATUS, 0x2 ; 1903 311 786 DECF 0x3A, F ; 03BA 312 787 DECF 0x39, F ; 03B9 313 788 G0x314 INCF 0x3C, F ; 0ABC 314 789 MOVF 0x3C, W ; 083C 315 790 SUBLW 0xF ; 3C0F 316 791 BTFSC STATUS, 0x0 ; 1803 317 792 GOTO G0x336 ; 2B36 318 793 CLRF 0x3C ; 01BC 319 794 INCF 0x3D, F ; 0ABD 31A 795 MOVF 0x30, W ; 830 31B 796 SUBWF 0x3A, W ; 023A 31C 797 BTFSS STATUS, 0x0 ; 1C03 31D 798 GOTO G0x328 ; 2B28 31E 799 BTFSS STATUS, 0x2 ; 1D03 31F 800 GOTO G0x325 ; 2B25 320 801 MOVF 0x39, W ; 839 321 802 SUBWF 0x2F, W ; 022F 322 803 BTFSC STATUS, 0x0 ; 1803 323 804 GOTO G0x328 ; 2B28 324 805 G0x325 INCF 0x2F, F ; 0AAF 325 806 BTFSC STATUS, 0x2 ; 1903 326 807 INCF 0x30, F ; 0AB0 327 808 G0x328 MOVF 0x3A, W ; 083A 328 809 SUBWF 0x30, W ; 230 329 810 BTFSS STATUS, 0x0 ; 1C03 32A 811 GOTO G0x336 ; 2B36 32B 812 BTFSS STATUS, 0x2 ; 1D03 32C 813 GOTO G0x332 ; 2B32 32D 814 MOVF 0x2F, W ; 082F 32E 815 SUBWF 0x39, W ; 239 32F 816 BTFSC STATUS, 0x0 ; 1803 330 817 GOTO G0x336 ; 2B36 331 818 G0x332 MOVF 0x2F, W ; 082F 332 819 BTFSC STATUS, 0x2 ; 1903 333 820 DECF 0x30, F ; 03B0 334 821 DECF 0x2F, F ; 03AF 335 822 G0x336 MOVF 0x3D, W ; 083D 336 823 SUBLW 0xF ; 3C0F 337 824 BTFSC STATUS, 0x0 ; 1803 338 825 GOTO G0x356 ; 2B56 339 826 CLRF 0x3D ; 01BD 33A 827 MOVF 0x30, W ; 830 33B 828 SUBWF 0x32, W ; 232 33C 829 BTFSS STATUS, 0x0 ; 1C03 33D 830 GOTO G0x349 ; 2B49 33E 831 BTFSS STATUS, 0x2 ; 1D03 33F 832 GOTO G0x345 ; 2B45 340 833 MOVF 0x31, W ; 831 341 834 SUBWF 0x2F, W ; 022F 342 835 BTFSC STATUS, 0x0 ; 1803 343 836 GOTO G0x349 ; 2B49 344 837 G0x345 MOVF 0x31, W ; 831 345 838 BTFSC STATUS, 0x2 ; 1903 346 839 DECF 0x32, F ; 03B2 347 840 DECF 0x31, F ; 03B1 348 841 G0x349 MOVF 0x32, W ; 832 349 842 SUBWF 0x30, W ; 230 34A 843 BTFSS STATUS, 0x0 ; 1C03 34B 844 GOTO G0x356 ; 2B56 34C 845 BTFSS STATUS, 0x2 ; 1D03 34D 846 GOTO G0x353 ; 2B53 34E 847 MOVF 0x2F, W ; 082F 34F 848 SUBWF 0x31, W ; 231 350 849 BTFSC STATUS, 0x0 ; 1803 351 850 GOTO G0x356 ; 2B56 352 851 G0x353 INCF 0x31, F ; 0AB1 353 852 BTFSC STATUS, 0x2 ; 1903 354 853 INCF 0x32, F ; 0AB2 355 854 G0x356 GOTO G0x3FD ; 2BFD 356 855 org 0x357 SETUP MOVF STATUS, W ; 803 357 856 ..0x18 ANDLW 0x1F ; 391F 358 857 MOVWF STATUS ; 83 359 858 BCF ADCON0, 0x6 ; 131F 35A 859 BSF STATUS, 0x5 ; 1683 35B 860 BCF ADCON0, 0x0 ; 101F 35C 861 BCF ADCON0, 0x1 ; 109F 35D 862 BCF ADCON0, 0x2 ; 111F 35E 863 BCF ADCON0, 0x3 ; 119F 35F 864 MOVLW 0x7 ; 3007 360 865 BCF STATUS, 0x5 ; 1283 361 866 MOVWF CMCON ; 99 362 867 MOVLW 0x2 ; 3002 363 868 MOVWF 0x44 ; 00C4 364 869 G0x365 MOVLW 0x96 ; 3096 365 870 MOVWF 0x4A ; 00CA 366 871 CALL C0x4B ; 204B 367 872 DECFSZ 0x44, F ; 0BC4 368 873 GOTO G0x365 ; 2B65 369 874 GOTO G0xB8 ; 28B8 36A 875 G0x36B GOTO G0x123 ; 2923 36B 876 G0x36C GOTO G0x1B2 ; 29B2 36C 877 G0x36D GOTO G0x250 ; 2A50 36D 878 G0x36E BCF 0x2C, 0x0 ; 102C 36E 879 G0x36F CLRWDT ; 64 36F 880 BTFSC GPIO, 0x3 ; 1985 370 881 GOTO G0x374 ; 2B74 371 882 CLRF PCLATH ; 018A 372 883 GOTO START ;0x0 ; 2800 373 884 G0x374 BTFSS 0x2C, 0x0 ; 1C2C 374 885 GOTO G0x36F ; 2B6F 375 886 MOVF 0x2E, W ; 082E 376 887 SUBWF 0x32, W ; 232 377 888 BTFSS STATUS, 0x0 ; 1C03 378 889 GOTO G0x38D ; 2B8D 379 890 BTFSS STATUS, 0x2 ; 1D03 37A 891 GOTO G0x380 ; 2B80 37B 892 MOVF 0x31, W ; 831 37C 893 SUBWF 0x2D, W ; 022D 37D 894 BTFSC STATUS, 0x0 ; 1803 37E 895 GOTO G0x38D ; 2B8D 37F 896 G0x380 MOVF 0x2D, W ; 082D 380 897 SUBWF 0x31, W ; 231 381 898 MOVWF 0x37 ; 00B7 382 899 MOVF 0x32, W ; 832 383 900 MOVWF 0x38 ; 00B8 384 901 MOVF 0x2E, W ; 082E 385 902 BTFSS STATUS, 0x0 ; 1C03 386 903 INCFSZ 0x2E, W ; 0F2E 387 904 SUBWF 0x38, F ; 02B8 388 905 BTFSS 0x2C, 0x1 ; 1CAC 389 906 BSF 0x43, 0x0 ; 1443 38A 907 BSF 0x2C, 0x1 ; 14AC 38B 908 GOTO G0x3A9 ; 2BA9 38C 909 G0x38D MOVF 0x32, W ; 832 38D 910 SUBWF 0x2E, W ; 022E 38E 911 BTFSS STATUS, 0x0 ; 1C03 38F 912 GOTO G0x3A4 ; 2BA4 390 913 BTFSS STATUS, 0x2 ; 1D03 391 914 GOTO G0x397 ; 2B97 392 915 MOVF 0x2D, W ; 082D 393 916 SUBWF 0x31, W ; 231 394 917 BTFSC STATUS, 0x0 ; 1803 395 918 GOTO G0x3A4 ; 2BA4 396 919 G0x397 MOVF 0x31, W ; 831 397 920 SUBWF 0x2D, W ; 022D 398 921 MOVWF 0x37 ; 00B7 399 922 MOVF 0x2E, W ; 082E 39A 923 MOVWF 0x38 ; 00B8 39B 924 MOVF 0x32, W ; 832 39C 925 BTFSS STATUS, 0x0 ; 1C03 39D 926 INCFSZ 0x32, W ; 0F32 39E 927 SUBWF 0x38, F ; 02B8 39F 928 BTFSC 0x2C, 0x1 ; 18AC 3A0 929 BSF 0x43, 0x0 ; 1443 3A1 930 BCF 0x2C, 0x1 ; 10AC 3A2 931 GOTO G0x3A9 ; 2BA9 3A3 932 G0x3A4 CLRF 0x38 ; 01B8 3A4 933 CLRF 0x37 ; 01B7 3A5 934 BCF 0x2C, 0x1 ; 10AC 3A6 935 CLRF 0x41 ; 01C1 3A7 936 BCF 0x43, 0x0 ; 1043 3A8 937 G0x3A9 MOVF 0x38, F ; 08B8 3A9 938 BTFSS STATUS, 0x2 ; 1D03 3AA 939 GOTO G0x3B0 ; 2BB0 3AB 940 MOVF 0x37, W ; 837 3AC 941 SUBLW 0x2 ; 3C02 3AD 942 BTFSC STATUS, 0x0 ; 1803 3AE 943 GOTO G0x3E9 ; 2BE9 3AF 944 G0x3B0 CLRF 0x34 ; 01B4 3B0 945 CLRF 0x33 ; 01B3 3B1 946 MOVLW 0xE ; 300E 3B2 947 MOVWF 0x42 ; 00C2 3B3 948 G0x3B4 MOVF 0x42, W ; 842 3B4 949 SUBLW 0x1 ; 3C01 3B5 950 BTFSC STATUS, 0x0 ; 1803 3B6 951 GOTO G0x3CA ; 2BCA 3B7 952 MOVF 0x38, W ; 838 3B8 953 MOVWF 0x23 ; 00A3 3B9 954 MOVF 0x37, W ; 837 3BA 955 MOVWF 0x22 ; 00A2 3BB 956 MOVF 0x42, W ; 842 3BC 957 MOVWF 0x20 ; 00A0 3BD 958 BTFSC STATUS, 0x2 ; 1903 3BE 959 GOTO G0x3C5 ; 2BC5 3BF 960 G0x3C0 BCF STATUS, 0x0 ; 1003 3C0 961 RRF 0x23, F ; 0CA3 3C1 962 RRF 0x22, F ; 0CA2 3C2 963 DECFSZ 0x20, F ; 0BA0 3C3 964 GOTO G0x3C0 ; 2BC0 3C4 965 G0x3C5 MOVF 0x22, W ; 822 3C5 966 BTFSC 0x22, 0x0 ; 1822 3C6 967 GOTO G0x3CA ; 2BCA 3C7 968 DECF 0x42, F ; 03C2 3C8 969 GOTO G0x3B4 ; 2BB4 3C9 970 MOVF 0x42, W ; 842 3CA 971 SUBLW 0xD ; 3C0D 3CB 972 MOVWF 0x20 ; 00A0 3CC 973 RRF 0x20, W ; 0C20 3CD 974 MOVWF 0x41 ; 00C1 3CE 975 RRF 0x41, F ; 0CC1 3CF 976 MOVLW 0x3F ; 303F 3D0 977 ANDWF 0x41, F ; 05C1 3D1 978 MOVF 0x40, W ; 840 3D2 979 SUBWF 0x41, W ; 241 3D3 980 BTFSC STATUS, 0x0 ; 1803 3D4 981 GOTO G0x3DF ; 2BDF 3D5 982 MOVLW 0x1 ; 3001 3D6 983 MOVWF 0x40 ; 00C0 3D7 984 BCF 0x43, 0x0 ; 1043 3D8 985 BTFSS 0x2C, 0x1 ; 1CAC 3D9 986 G0x3CA GOTO G0x3DD ; 2BDD 3DA 987 CALL C0x15B ; 215B 3DB 988 GOTO G0x3DE ; 2BDE 3DC 989 G0x3DD CALL C0x2CC ; 22CC 3DD 990 G0x3DE GOTO G0x3E8 ; 2BE8 3DE 991 G0x3DF INCF 0x40, F ; 0AC0 3DF 992 BTFSS 0x43, 0x0 ; 1C43 3.00E+00 993 GOTO G0x3E8 ; 2BE8 3.00E+01 994 BCF 0x43, 0x0 ; 1043 3.00E+02 995 BTFSS 0x2C, 0x1 ; 1CAC 3.00E+03 996 GOTO G0x3E7 ; 2BE7 3.00E+04 997 CALL C0x15B ; 215B 3.00E+05 998 GOTO G0x3E8 ; 2BE8 3.00E+06 999 G0x3E7 CALL C0x2CC ; 22CC 3.00E+07 1000 G0x3E8 GOTO G0x3FD ; 2BFD 3.00E+08 1001 G0x3E9 MOVLW 0x1 ; 3001 3.00E+09 1002 MOVWF 0x40 ; 00C0 3EA 1003 INCF 0x33, F ; 0AB3 3EB 1004 BTFSC STATUS, 0x2 ; 1903 3EC 1005 INCF 0x34, F ; 0AB4 3ED 1006 MOVF 0x34, W ; 834 3EE 1007 SUBLW 0x2D ; 3C2D 3EF 1008 BTFSC STATUS, 0x0 ; 1803 3F0 1009 GOTO G0x3FC ; 2BFC 3F1 1010 XORLW 0xFF ; 3AFF 3F2 1011 BTFSS STATUS, 0x2 ; 1D03 3F3 1012 GOTO G0x3F9 ; 2BF9 3F4 1013 MOVF 0x33, W ; 833 3F5 1014 SUBLW 0xE0 ; 3CE0 3F6 1015 BTFSC STATUS, 0x0 ; 1803 3F7 1016 GOTO G0x3FC ; 2BFC 3F8 1017 G0x3F9 CLRF 0x34 ; 01B4 3F9 1018 CLRF 0x33 ; 01B3 3FA 1019 CALL C0x81 ; 2081 3FB 1020 G0x3FC GOTO G0x2E7 ; 2AE7 3FC 1021 G0x3FD ; GOTO 0x36E ; 2B6E 3FD 1022 ;SLEEP ; 63 3FE 1023 ;ADDLW 0xFF ; 3FFF 3FF 1024 end ;END
Comment