opt subtitle "HI-TECH Software Omniscient Code Generator (Lite mode) build 9453" opt pagewidth 120 opt lm processor 16F628A clrc macro bcf 3,0 endm clrz macro bcf 3,2 endm setc macro bsf 3,0 endm setz macro bsf 3,2 endm skipc macro btfss 3,0 endm skipz macro btfss 3,2 endm skipnc macro btfsc 3,0 endm skipnz macro btfsc 3,2 endm indf equ 0 indf0 equ 0 pc equ 2 pcl equ 2 status equ 3 fsr equ 4 fsr0 equ 4 c equ 1 z equ 0 pclath equ 10 # 5 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" psect config,class=CONFIG,delta=2 ;# # 5 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" dw 0xFF7F & 0xFFBF & 0xFFFF & 0xFFDF & 0xFFF7 & 0xFFFB & 0xFFED ;# FNCALL _main,_evaluate_tastatur FNCALL _main,_SendRc5 FNCALL _SendRc5,_One FNCALL _SendRc5,_Zero FNCALL _SendRc5,_delay_89ms FNCALL _Zero,_ON FNCALL _Zero,_OFF FNCALL _One,_OFF FNCALL _One,_ON FNROOT _main FNCALL intlevel1,_ISR global intlevel1 FNROOT intlevel1 global _CountB global _CountC global _somethingpressed global _CountA global _toggle global _CMCON psect text296,local,class=CODE,delta=2 global __ptext296 __ptext296: _CMCON set 31 global _INTCON _INTCON set 11 global _PORTA _PORTA set 5 global _PORTB _PORTB set 6 global _CARRY _CARRY set 24 global _CM0 _CM0 set 248 global _CM1 _CM1 set 249 global _CM2 _CM2 set 250 global _GIE _GIE set 95 global _RA0 _RA0 set 40 global _RBIE _RBIE set 91 global _RBIF _RBIF set 88 global _EEADR _EEADR set 155 global _EECON1 _EECON1 set 156 global _EECON2 _EECON2 set 157 global _EEDATA _EEDATA set 154 global _OPTION_REG _OPTION_REG set 129 global _TRISA _TRISA set 133 global _TRISB _TRISB set 134 global _RD _RD set 1248 global _WR _WR set 1249 global _WREN _WREN set 1250 file "RC5_Remote_Control.as" line # psect cinit,class=CODE,delta=2 global start_initialization start_initialization: psect bssCOMMON,class=COMMON,space=1 global __pbssCOMMON __pbssCOMMON: _CountA: ds 2 _toggle: ds 1 psect bssBANK0,class=BANK0,space=1 global __pbssBANK0 __pbssBANK0: _CountB: ds 2 _CountC: ds 2 _somethingpressed: ds 2 ; Clear objects allocated to COMMON psect cinit,class=CODE,delta=2 clrf ((__pbssCOMMON)+0)&07Fh clrf ((__pbssCOMMON)+1)&07Fh clrf ((__pbssCOMMON)+2)&07Fh ; Clear objects allocated to BANK0 psect cinit,class=CODE,delta=2 clrf ((__pbssBANK0)+0)&07Fh clrf ((__pbssBANK0)+1)&07Fh clrf ((__pbssBANK0)+2)&07Fh clrf ((__pbssBANK0)+3)&07Fh clrf ((__pbssBANK0)+4)&07Fh clrf ((__pbssBANK0)+5)&07Fh psect cinit,class=CODE,delta=2 global end_of_initialization ;End of C runtime variable initialization code end_of_initialization: clrf status ljmp _main ;jump to C main() function psect cstackCOMMON,class=COMMON,space=1 global __pcstackCOMMON __pcstackCOMMON: global ?_ON ?_ON: ; 0 bytes @ 0x0 global ?_OFF ?_OFF: ; 0 bytes @ 0x0 global ?_ISR ?_ISR: ; 0 bytes @ 0x0 global ??_ISR ??_ISR: ; 0 bytes @ 0x0 global ?_delay_89ms ?_delay_89ms: ; 0 bytes @ 0x0 global ?_One ?_One: ; 0 bytes @ 0x0 global ?_Zero ?_Zero: ; 0 bytes @ 0x0 global ?_evaluate_tastatur ?_evaluate_tastatur: ; 0 bytes @ 0x0 global ?_main ?_main: ; 0 bytes @ 0x0 ds 4 global ??_ON ??_ON: ; 0 bytes @ 0x4 global ??_OFF ??_OFF: ; 0 bytes @ 0x4 global ??_delay_89ms ??_delay_89ms: ; 0 bytes @ 0x4 global ??_evaluate_tastatur ??_evaluate_tastatur: ; 0 bytes @ 0x4 ds 1 global ON@i ON@i: ; 1 bytes @ 0x5 global OFF@i OFF@i: ; 1 bytes @ 0x5 ds 1 global ??_One ??_One: ; 0 bytes @ 0x6 global ??_Zero ??_Zero: ; 0 bytes @ 0x6 global ?_SendRc5 ?_SendRc5: ; 0 bytes @ 0x6 global SendRc5@group SendRc5@group: ; 1 bytes @ 0x6 ds 1 psect cstackBANK0,class=BANK0,space=1 global __pcstackBANK0 __pcstackBANK0: global ??_SendRc5 ??_SendRc5: ; 0 bytes @ 0x0 global evaluate_tastatur@comcode evaluate_tastatur@comcode: ; 1 bytes @ 0x0 ds 1 global evaluate_tastatur@e evaluate_tastatur@e: ; 1 bytes @ 0x1 global SendRc5@command SendRc5@command: ; 1 bytes @ 0x1 ds 1 global evaluate_tastatur@i evaluate_tastatur@i: ; 1 bytes @ 0x2 global SendRc5@i SendRc5@i: ; 1 bytes @ 0x2 ds 1 global evaluate_tastatur@a evaluate_tastatur@a: ; 1 bytes @ 0x3 ds 1 global ??_main ??_main: ; 0 bytes @ 0x4 ds 1 global main@help main@help: ; 1 bytes @ 0x5 ds 1 global main@subcode main@subcode: ; 1 bytes @ 0x6 ds 1 global main@comcode main@comcode: ; 1 bytes @ 0x7 ds 1 ;;Data sizes: Strings 0, constant 0, data 0, bss 9, persistent 0 stack 0 ;;Auto spaces: Size Autos Used ;; COMMON 14 7 10 ;; BANK0 80 8 14 ;; BANK1 80 0 0 ;; BANK2 48 0 0 ;; ;; Pointer list with targets: ;; SendRc5@command PTR unsigned char size(1) Largest target is 1 ;; -> main@comcode(BANK0[1]), ;; ;; SendRc5@group PTR unsigned char size(1) Largest target is 1 ;; -> main@subcode(BANK0[1]), ;; ;; evaluate_tastatur@comcode PTR unsigned char size(1) Largest target is 1 ;; -> main@comcode(BANK0[1]), ;; ;; ;; Critical Paths under _main in COMMON ;; ;; _main->_SendRc5 ;; _Zero->_ON ;; _Zero->_OFF ;; _One->_OFF ;; _One->_ON ;; ;; Critical Paths under _ISR in COMMON ;; ;; None. ;; ;; Critical Paths under _main in BANK0 ;; ;; _main->_evaluate_tastatur ;; ;; Critical Paths under _ISR in BANK0 ;; ;; None. ;; ;; Critical Paths under _main in BANK1 ;; ;; None. ;; ;; Critical Paths under _ISR in BANK1 ;; ;; None. ;; ;; Critical Paths under _main in BANK2 ;; ;; None. ;; ;; Critical Paths under _ISR in BANK2 ;; ;; None. ;; ;;Main: autosize = 0, tempsize = 1, incstack = 0, save=0 ;; ;; ;;Call Graph Tables: ;; ;; --------------------------------------------------------------------------------- ;; (Depth) Function Calls Base Space Used Autos Params Refs ;; --------------------------------------------------------------------------------- ;; (0) _main 4 4 0 788 ;; 4 BANK0 4 4 0 ;; _evaluate_tastatur ;; _SendRc5 ;; --------------------------------------------------------------------------------- ;; (1) _SendRc5 4 3 1 402 ;; 6 COMMON 1 0 1 ;; 0 BANK0 3 3 0 ;; _One ;; _Zero ;; _delay_89ms ;; --------------------------------------------------------------------------------- ;; (2) _Zero 0 0 0 71 ;; _ON ;; _OFF ;; --------------------------------------------------------------------------------- ;; (2) _One 0 0 0 71 ;; _OFF ;; _ON ;; --------------------------------------------------------------------------------- ;; (1) _evaluate_tastatur 6 6 0 266 ;; 4 COMMON 2 2 0 ;; 0 BANK0 4 4 0 ;; --------------------------------------------------------------------------------- ;; (2) _delay_89ms 0 0 0 0 ;; --------------------------------------------------------------------------------- ;; (3) _OFF 2 2 0 34 ;; 4 COMMON 2 2 0 ;; --------------------------------------------------------------------------------- ;; (3) _ON 2 2 0 37 ;; 4 COMMON 2 2 0 ;; --------------------------------------------------------------------------------- ;; Estimated maximum stack depth 3 ;; --------------------------------------------------------------------------------- ;; (Depth) Function Calls Base Space Used Autos Params Refs ;; --------------------------------------------------------------------------------- ;; (4) _ISR 4 4 0 0 ;; 0 COMMON 4 4 0 ;; --------------------------------------------------------------------------------- ;; Estimated maximum stack depth 4 ;; --------------------------------------------------------------------------------- ;; Call Graph Graphs: ;; _main (ROOT) ;; _evaluate_tastatur ;; _SendRc5 ;; _One ;; _OFF ;; _ON ;; _Zero ;; _ON ;; _OFF ;; _delay_89ms ;; ;; _ISR (ROOT) ;; ;; Address spaces: ;;Name Size Autos Total Cost Usage ;;BITCOMMON E 0 0 0 0.0% ;;EEDATA 80 0 0 0 0.0% ;;NULL 0 0 0 0 0.0% ;;CODE 0 0 0 0 0.0% ;;COMMON E 7 A 1 71.4% ;;BITSFR0 0 0 0 1 0.0% ;;SFR0 0 0 0 1 0.0% ;;BITSFR1 0 0 0 2 0.0% ;;SFR1 0 0 0 2 0.0% ;;STACK 0 0 3 2 0.0% ;;BANK0 50 8 E 3 17.5% ;;BITSFR3 0 0 0 4 0.0% ;;SFR3 0 0 0 4 0.0% ;;ABS 0 0 18 4 0.0% ;;BITBANK0 50 0 0 5 0.0% ;;BITSFR2 0 0 0 5 0.0% ;;SFR2 0 0 0 5 0.0% ;;BITBANK1 50 0 0 6 0.0% ;;BANK1 50 0 0 7 0.0% ;;BITBANK2 30 0 0 8 0.0% ;;BANK2 30 0 0 9 0.0% ;;DATA 0 0 1B 10 0.0% global _main psect maintext,global,class=CODE,delta=2 global __pmaintext __pmaintext: ;; *************** function _main ***************** ;; Defined at: ;; line 159 in file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" ;; Parameters: Size Location Type ;; None ;; Auto vars: Size Location Type ;; comcode 1 7[BANK0 ] unsigned char ;; subcode 1 6[BANK0 ] unsigned char ;; help 1 5[BANK0 ] unsigned char ;; Return value: Size Location Type ;; None void ;; Registers used: ;; wreg, fsr0l, fsr0h, status,2, status,0, pclath, cstack ;; Tracked objects: ;; On entry : 17F/0 ;; On exit : 0/0 ;; Unchanged: 0/0 ;; Data sizes: COMMON BANK0 BANK1 BANK2 ;; Params: 0 0 0 0 ;; Locals: 0 3 0 0 ;; Temps: 0 1 0 0 ;; Totals: 0 4 0 0 ;;Total ram usage: 4 bytes ;; Hardware stack levels required when called: 4 ;; This function calls: ;; _evaluate_tastatur ;; _SendRc5 ;; This function is called by: ;; Startup code after reset ;; This function uses a non-reentrant model ;; psect maintext file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" line 159 global __size_of_main __size_of_main equ __end_of_main-_main _main: opt stack 4 ; Regs used in _main: [wreg-fsr0h+status,2+status,0+pclath+cstack] line 160 l2408: ;main.c: 160: unsigned char comcode = 0; bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 clrf (main@comcode) line 161 ;main.c: 161: char subcode = 0; clrf (main@subcode) line 163 l2410: ;main.c: 163: OPTION_REG = 0b00000010; movlw (02h) bsf status, 5 ;RP0=1, select bank1 bcf status, 6 ;RP1=0, select bank1 movwf (129)^080h ;volatile line 164 ;main.c: 164: CMCON = 0x07; movlw (07h) bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 movwf (31) ;volatile line 165 l2412: ;main.c: 165: TRISA = 0x00; bsf status, 5 ;RP0=1, select bank1 bcf status, 6 ;RP1=0, select bank1 clrf (133)^080h ;volatile line 166 l2414: ;main.c: 166: TRISB = 0xF0; movlw (0F0h) movwf (134)^080h ;volatile line 167 l2416: ;main.c: 167: GIE = 1; bsf (95/8),(95)&7 line 168 l2418: ;main.c: 168: CM0 = 1; bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 bsf (248/8),(248)&7 line 169 l2420: ;main.c: 169: CM1 = 1; bsf (249/8),(249)&7 line 170 l2422: ;main.c: 170: CM2 = 1; bsf (250/8),(250)&7 line 171 ;main.c: 171: PORTA = 0; clrf (5) ;volatile line 172 l2424: ;main.c: 172: PORTB = 0xFF; movlw (0FFh) movwf (6) ;volatile line 173 l2426: ;main.c: 173: subcode = 29; movlw (01Dh) movwf (??_main+0)+0 movf (??_main+0)+0,w movwf (main@subcode) line 174 ;main.c: 174: INTCON = 0; clrf (11) ;volatile line 175 l2428: ;main.c: 175: RBIE = 1; bsf (91/8),(91)&7 line 176 l2430: ;main.c: 176: char help = 0; clrf (main@help) goto l431 line 178 ;main.c: 178: while(1) l430: line 180 ;main.c: 179: { ;main.c: 180: while(!RBIF) goto l431 l432: line 181 # 181 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" sleep ;# psect maintext l431: line 180 btfss (88/8),(88)&7 goto u2801 goto u2800 u2801: goto l432 u2800: goto l2432 l433: line 182 l2432: ;main.c: 182: PORTB = 0xFF; movlw (0FFh) bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 movwf (6) ;volatile line 183 l2434: ;main.c: 183: evaluate_tastatur(&comcode); movlw (main@comcode)&0ffh fcall _evaluate_tastatur line 184 l2436: ;main.c: 184: if(somethingpressed == 1) movlw 01h bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 xorwf (_somethingpressed),w iorwf (_somethingpressed+1),w skipz goto u2811 goto u2810 u2811: goto l431 u2810: line 186 l2438: ;main.c: 185: { ;main.c: 186: SendRc5(&comcode, &subcode); movlw (main@subcode)&0ffh movwf (??_main+0)+0 movf (??_main+0)+0,w movwf (?_SendRc5) movlw (main@comcode)&0ffh fcall _SendRc5 line 187 l2440: ;main.c: 187: somethingpressed = 0; bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 clrf (_somethingpressed) clrf (_somethingpressed+1) line 188 l2442: ;main.c: 188: help = 1; clrf (main@help) bsf status,0 rlf (main@help),f goto l431 line 189 l434: goto l431 line 190 l435: line 178 goto l431 l436: line 191 l437: global start ljmp start opt stack 0 GLOBAL __end_of_main __end_of_main: ;; =============== function _main ends ============ signat _main,88 global _SendRc5 psect text297,local,class=CODE,delta=2 global __ptext297 __ptext297: ;; *************** function _SendRc5 ***************** ;; Defined at: ;; line 128 in file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" ;; Parameters: Size Location Type ;; command 1 wreg PTR unsigned char ;; -> main@comcode(1), ;; group 1 6[COMMON] PTR unsigned char ;; -> main@subcode(1), ;; Auto vars: Size Location Type ;; command 1 1[BANK0 ] PTR unsigned char ;; -> main@comcode(1), ;; i 1 2[BANK0 ] unsigned char ;; Return value: Size Location Type ;; None void ;; Registers used: ;; wreg, fsr0l, fsr0h, status,2, status,0, pclath, cstack ;; Tracked objects: ;; On entry : 0/0 ;; On exit : 0/0 ;; Unchanged: 0/0 ;; Data sizes: COMMON BANK0 BANK1 BANK2 ;; Params: 1 0 0 0 ;; Locals: 0 2 0 0 ;; Temps: 0 1 0 0 ;; Totals: 1 3 0 0 ;;Total ram usage: 4 bytes ;; Hardware stack levels used: 1 ;; Hardware stack levels required when called: 3 ;; This function calls: ;; _One ;; _Zero ;; _delay_89ms ;; This function is called by: ;; _main ;; This function uses a non-reentrant model ;; psect text297 file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" line 128 global __size_of_SendRc5 __size_of_SendRc5 equ __end_of_SendRc5-_SendRc5 _SendRc5: opt stack 4 ; Regs used in _SendRc5: [wreg-fsr0h+status,2+status,0+pclath+cstack] ;SendRc5@command stored from wreg line 130 bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 movwf (SendRc5@command) l2366: ;main.c: 129: unsigned char i; ;main.c: 130: One(); fcall _One line 131 ;main.c: 131: One(); fcall _One line 133 l2368: ;main.c: 133: toggle = toggle ^ 1 & 1; movf (_toggle),w xorlw 01h bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 movwf (??_SendRc5+0)+0 movf (??_SendRc5+0)+0,w movwf (_toggle) line 134 l2370: ;main.c: 134: if(toggle == 1) movf (_toggle),w xorlw 01h skipz goto u2711 goto u2710 u2711: goto l2374 u2710: line 135 l2372: ;main.c: 135: One(); fcall _One goto l2376 line 136 l417: line 137 l2374: ;main.c: 136: else ;main.c: 137: Zero(); fcall _Zero goto l2376 l418: line 139 l2376: ;main.c: 139: for(i = 4; i != 255; i--) movlw (04h) bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 movwf (??_SendRc5+0)+0 movf (??_SendRc5+0)+0,w movwf (SendRc5@i) l2378: movf (SendRc5@i),w xorlw 0FFh skipz goto u2721 goto u2720 u2721: goto l2382 u2720: goto l2392 l2380: goto l2392 line 140 l419: line 141 l2382: ;main.c: 140: { ;main.c: 141: if(((*group>>i))&1) movf (SendRc5@group),w movwf fsr0 bcf status, 7 ;select IRP bank0 movf indf,w movwf (??_SendRc5+0)+0 incf (SendRc5@i),w goto u2734 u2735: clrc rrf (??_SendRc5+0)+0,f u2734: addlw -1 skipz goto u2735 btfss 0+(??_SendRc5+0)+0,(0)&7 goto u2741 goto u2740 u2741: goto l2386 u2740: line 142 l2384: ;main.c: 142: One(); fcall _One goto l2388 line 143 l421: line 144 l2386: ;main.c: 143: else ;main.c: 144: Zero(); fcall _Zero goto l2388 l422: line 139 l2388: movlw low(01h) bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 subwf (SendRc5@i),f l2390: movf (SendRc5@i),w xorlw 0FFh skipz goto u2751 goto u2750 u2751: goto l2382 u2750: goto l2392 l420: line 146 l2392: ;main.c: 145: } ;main.c: 146: for(i = 5; i != 255; i--) movlw (05h) movwf (??_SendRc5+0)+0 movf (??_SendRc5+0)+0,w movwf (SendRc5@i) movf (SendRc5@i),w xorlw 0FFh skipz goto u2761 goto u2760 u2761: goto l2396 u2760: goto l2406 l2394: goto l2406 line 147 l423: line 148 l2396: ;main.c: 147: { ;main.c: 148: if(((*command)>>i)&1) movf (SendRc5@command),w movwf fsr0 bcf status, 7 ;select IRP bank0 movf indf,w movwf (??_SendRc5+0)+0 incf (SendRc5@i),w goto u2774 u2775: clrc rrf (??_SendRc5+0)+0,f u2774: addlw -1 skipz goto u2775 btfss 0+(??_SendRc5+0)+0,(0)&7 goto u2781 goto u2780 u2781: goto l2400 u2780: line 149 l2398: ;main.c: 149: One(); fcall _One goto l2402 line 150 l425: line 151 l2400: ;main.c: 150: else ;main.c: 151: Zero(); fcall _Zero goto l2402 l426: line 146 l2402: movlw low(01h) bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 subwf (SendRc5@i),f l2404: movf (SendRc5@i),w xorlw 0FFh skipz goto u2791 goto u2790 u2791: goto l2396 u2790: goto l2406 l424: line 153 l2406: ;main.c: 152: } ;main.c: 153: delay_89ms(); fcall _delay_89ms line 155 l427: return opt stack 0 GLOBAL __end_of_SendRc5 __end_of_SendRc5: ;; =============== function _SendRc5 ends ============ signat _SendRc5,8312 global _Zero psect text298,local,class=CODE,delta=2 global __ptext298 __ptext298: ;; *************** function _Zero ***************** ;; Defined at: ;; line 94 in file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" ;; Parameters: Size Location Type ;; None ;; Auto vars: Size Location Type ;; None ;; Return value: Size Location Type ;; None void ;; Registers used: ;; wreg, status,2, status,0, pclath, cstack ;; Tracked objects: ;; On entry : 0/0 ;; On exit : 0/0 ;; Unchanged: 0/0 ;; Data sizes: COMMON BANK0 BANK1 BANK2 ;; Params: 0 0 0 0 ;; Locals: 0 0 0 0 ;; Temps: 0 0 0 0 ;; Totals: 0 0 0 0 ;;Total ram usage: 0 bytes ;; Hardware stack levels used: 1 ;; Hardware stack levels required when called: 2 ;; This function calls: ;; _ON ;; _OFF ;; This function is called by: ;; _SendRc5 ;; This function uses a non-reentrant model ;; psect text298 file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" line 94 global __size_of_Zero __size_of_Zero equ __end_of_Zero-_Zero _Zero: opt stack 4 ; Regs used in _Zero: [wreg+status,2+status,0+pclath+cstack] line 95 l2364: ;main.c: 95: ON(); fcall _ON line 96 ;main.c: 96: OFF(); fcall _OFF line 97 l406: return opt stack 0 GLOBAL __end_of_Zero __end_of_Zero: ;; =============== function _Zero ends ============ signat _Zero,88 global _One psect text299,local,class=CODE,delta=2 global __ptext299 __ptext299: ;; *************** function _One ***************** ;; Defined at: ;; line 89 in file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" ;; Parameters: Size Location Type ;; None ;; Auto vars: Size Location Type ;; None ;; Return value: Size Location Type ;; None void ;; Registers used: ;; wreg, status,2, status,0, pclath, cstack ;; Tracked objects: ;; On entry : 0/0 ;; On exit : 0/0 ;; Unchanged: 0/0 ;; Data sizes: COMMON BANK0 BANK1 BANK2 ;; Params: 0 0 0 0 ;; Locals: 0 0 0 0 ;; Temps: 0 0 0 0 ;; Totals: 0 0 0 0 ;;Total ram usage: 0 bytes ;; Hardware stack levels used: 1 ;; Hardware stack levels required when called: 2 ;; This function calls: ;; _OFF ;; _ON ;; This function is called by: ;; _SendRc5 ;; This function uses a non-reentrant model ;; psect text299 file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" line 89 global __size_of_One __size_of_One equ __end_of_One-_One _One: opt stack 4 ; Regs used in _One: [wreg+status,2+status,0+pclath+cstack] line 90 l2362: ;main.c: 90: OFF(); fcall _OFF line 91 ;main.c: 91: ON(); fcall _ON line 92 l403: return opt stack 0 GLOBAL __end_of_One __end_of_One: ;; =============== function _One ends ============ signat _One,88 global _evaluate_tastatur psect text300,local,class=CODE,delta=2 global __ptext300 __ptext300: ;; *************** function _evaluate_tastatur ***************** ;; Defined at: ;; line 101 in file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" ;; Parameters: Size Location Type ;; comcode 1 wreg PTR unsigned char ;; -> main@comcode(1), ;; Auto vars: Size Location Type ;; comcode 1 0[BANK0 ] PTR unsigned char ;; -> main@comcode(1), ;; a 1 3[BANK0 ] unsigned char ;; i 1 2[BANK0 ] unsigned char ;; e 1 1[BANK0 ] unsigned char ;; Return value: Size Location Type ;; None void ;; Registers used: ;; wreg, fsr0l, fsr0h, status,2, status,0 ;; Tracked objects: ;; On entry : 0/0 ;; On exit : 0/0 ;; Unchanged: 0/0 ;; Data sizes: COMMON BANK0 BANK1 BANK2 ;; Params: 0 0 0 0 ;; Locals: 0 4 0 0 ;; Temps: 2 0 0 0 ;; Totals: 2 4 0 0 ;;Total ram usage: 6 bytes ;; Hardware stack levels used: 1 ;; Hardware stack levels required when called: 1 ;; This function calls: ;; Nothing ;; This function is called by: ;; _main ;; This function uses a non-reentrant model ;; psect text300 file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" line 101 global __size_of_evaluate_tastatur __size_of_evaluate_tastatur equ __end_of_evaluate_tastatur-_evaluate_tastatur _evaluate_tastatur: opt stack 6 ; Regs used in _evaluate_tastatur: [wreg-fsr0h+status,2+status,0] ;evaluate_tastatur@comcode stored from wreg line 105 bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 movwf (evaluate_tastatur@comcode) l2330: ;main.c: 102: unsigned char i; ;main.c: 103: unsigned char a; ;main.c: 104: unsigned char e; ;main.c: 105: e = 0; clrf (evaluate_tastatur@e) line 107 l2332: ;main.c: 107: for(i=3; i != 255; i--) movlw (03h) movwf (??_evaluate_tastatur+0)+0 movf (??_evaluate_tastatur+0)+0,w movwf (evaluate_tastatur@i) movf (evaluate_tastatur@i),w xorlw 0FFh skipz goto u2641 goto u2640 u2641: goto l2336 u2640: goto l414 l2334: goto l414 line 108 l409: line 109 l2336: ;main.c: 108: { ;main.c: 109: PORTB = 0xFF; movlw (0FFh) movwf (6) ;volatile line 110 l2338: ;main.c: 110: PORTB &= ~(1<>a) & 1) == 0) movf (6),w ;volatile movwf (??_evaluate_tastatur+0)+0 incf (evaluate_tastatur@a),w goto u2674 u2675: clrc rrf (??_evaluate_tastatur+0)+0,f u2674: addlw -1 skipz goto u2675 btfsc 0+(??_evaluate_tastatur+0)+0,(0)&7 goto u2681 goto u2680 u2681: goto l2354 u2680: line 116 l2348: ;main.c: 115: { ;main.c: 116: *comcode = e; movf (evaluate_tastatur@e),w movwf (??_evaluate_tastatur+0)+0 movf (evaluate_tastatur@comcode),w movwf fsr0 movf (??_evaluate_tastatur+0)+0,w bcf status, 7 ;select IRP bank0 movwf indf line 117 l2350: ;main.c: 117: somethingpressed = 1; movlw low(01h) movwf (_somethingpressed) movlw high(01h) movwf ((_somethingpressed))+1 goto l414 line 118 l2352: ;main.c: 118: return; goto l414 line 119 l413: line 111 l2354: movlw (01h) movwf (??_evaluate_tastatur+0)+0 movf (??_evaluate_tastatur+0)+0,w addwf (evaluate_tastatur@a),f l2356: movlw (08h) subwf (evaluate_tastatur@a),w skipc goto u2691 goto u2690 u2691: goto l2346 u2690: goto l2358 l412: line 107 l2358: movlw low(01h) subwf (evaluate_tastatur@i),f l2360: movf (evaluate_tastatur@i),w xorlw 0FFh skipz goto u2701 goto u2700 u2701: goto l2336 u2700: goto l414 l410: line 125 l414: return opt stack 0 GLOBAL __end_of_evaluate_tastatur __end_of_evaluate_tastatur: ;; =============== function _evaluate_tastatur ends ============ signat _evaluate_tastatur,4216 global _delay_89ms psect text301,local,class=CODE,delta=2 global __ptext301 __ptext301: ;; *************** function _delay_89ms ***************** ;; Defined at: ;; line 64 in file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" ;; Parameters: Size Location Type ;; None ;; Auto vars: Size Location Type ;; None ;; Return value: Size Location Type ;; None void ;; Registers used: ;; None ;; Tracked objects: ;; On entry : 0/0 ;; On exit : 0/0 ;; Unchanged: 0/0 ;; Data sizes: COMMON BANK0 BANK1 BANK2 ;; Params: 0 0 0 0 ;; Locals: 0 0 0 0 ;; Temps: 0 0 0 0 ;; Totals: 0 0 0 0 ;;Total ram usage: 0 bytes ;; Hardware stack levels used: 1 ;; Hardware stack levels required when called: 1 ;; This function calls: ;; Nothing ;; This function is called by: ;; _SendRc5 ;; This function uses a non-reentrant model ;; psect text301 file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" line 64 global __size_of_delay_89ms __size_of_delay_89ms equ __end_of_delay_89ms-_delay_89ms _delay_89ms: opt stack 5 ; Regs used in _delay_89ms: [] line 66 l2328: # 66 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" pause89ms ;# line 67 # 67 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" clrf _CountA ;# line 68 # 68 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" clrf _CountB ;# line 69 # 69 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" clrf _CountC ;# line 70 # 70 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" movlw 0x74 ;# line 71 # 71 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" movwf _CountB ;# line 72 # 72 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" movlw 0x02 ;# line 73 # 73 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" movwf _CountA ;# line 74 # 74 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" movlw 0x01 ;# line 75 # 75 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" movwf _CountC ;# line 77 # 77 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" Loop ;Wiederholung der Zeitverzögerung ;# line 78 # 78 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" decfsz _CountA ;# line 79 # 79 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" goto Loop ;# line 80 # 80 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" decfsz _CountB ;# line 81 # 81 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" goto Loop ;# line 82 # 82 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" decfsz _CountC ;# line 83 # 83 "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" goto Loop ;# psect text301 line 86 ;main.c: 85: return; l400: return opt stack 0 GLOBAL __end_of_delay_89ms __end_of_delay_89ms: ;; =============== function _delay_89ms ends ============ signat _delay_89ms,88 global _OFF psect text302,local,class=CODE,delta=2 global __ptext302 __ptext302: ;; *************** function _OFF ***************** ;; Defined at: ;; line 46 in file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" ;; Parameters: Size Location Type ;; None ;; Auto vars: Size Location Type ;; i 1 5[COMMON] unsigned char ;; Return value: Size Location Type ;; None void ;; Registers used: ;; wreg, status,2, status,0 ;; Tracked objects: ;; On entry : 0/0 ;; On exit : 0/0 ;; Unchanged: 0/0 ;; Data sizes: COMMON BANK0 BANK1 BANK2 ;; Params: 0 0 0 0 ;; Locals: 1 0 0 0 ;; Temps: 1 0 0 0 ;; Totals: 2 0 0 0 ;;Total ram usage: 2 bytes ;; Hardware stack levels used: 1 ;; Hardware stack levels required when called: 1 ;; This function calls: ;; Nothing ;; This function is called by: ;; _One ;; _Zero ;; This function uses a non-reentrant model ;; psect text302 file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" line 46 global __size_of_OFF __size_of_OFF equ __end_of_OFF-_OFF _OFF: opt stack 4 ; Regs used in _OFF: [wreg+status,2+status,0] line 47 l2324: ;main.c: 47: unsigned char i = 0; clrf (OFF@i) line 48 ;main.c: 48: do l392: line 50 ;main.c: 49: { ;main.c: 50: RA0=0; bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 bcf (40/8),(40)&7 line 52 l2326: ;main.c: 51: } ;main.c: 52: while(i++<59); movlw (01h) movwf (??_OFF+0)+0 movf (??_OFF+0)+0,w addwf (OFF@i),f movlw (03Ch) subwf ((OFF@i)),w skipc goto u2631 goto u2630 u2631: goto l392 u2630: goto l394 l393: line 53 l394: return opt stack 0 GLOBAL __end_of_OFF __end_of_OFF: ;; =============== function _OFF ends ============ signat _OFF,88 global _ON psect text303,local,class=CODE,delta=2 global __ptext303 __ptext303: ;; *************** function _ON ***************** ;; Defined at: ;; line 19 in file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" ;; Parameters: Size Location Type ;; None ;; Auto vars: Size Location Type ;; i 1 5[COMMON] unsigned char ;; Return value: Size Location Type ;; None void ;; Registers used: ;; wreg, status,2, status,0 ;; Tracked objects: ;; On entry : 0/0 ;; On exit : 0/0 ;; Unchanged: 0/0 ;; Data sizes: COMMON BANK0 BANK1 BANK2 ;; Params: 0 0 0 0 ;; Locals: 1 0 0 0 ;; Temps: 1 0 0 0 ;; Totals: 2 0 0 0 ;;Total ram usage: 2 bytes ;; Hardware stack levels used: 1 ;; Hardware stack levels required when called: 1 ;; This function calls: ;; Nothing ;; This function is called by: ;; _One ;; _Zero ;; This function uses a non-reentrant model ;; psect text303 file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" line 19 global __size_of_ON __size_of_ON equ __end_of_ON-_ON _ON: opt stack 4 ; Regs used in _ON: [wreg+status,2+status,0] line 20 l2318: ;main.c: 20: unsigned char i = 0; clrf (ON@i) line 21 ;main.c: 21: do l387: line 23 ;main.c: 22: { ;main.c: 23: RA0 = 1; bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 bsf (40/8),(40)&7 line 24 ;main.c: 24: RA0 = 1; bsf (40/8),(40)&7 line 25 ;main.c: 25: RA0 = 1; bsf (40/8),(40)&7 line 26 ;main.c: 26: RA0 = 1; bsf (40/8),(40)&7 line 28 ;main.c: 28: RA0 = 0; bcf (40/8),(40)&7 line 29 ;main.c: 29: RA0 = 0; bcf (40/8),(40)&7 line 30 ;main.c: 30: RA0 = 0; bcf (40/8),(40)&7 line 31 ;main.c: 31: RA0 = 0; bcf (40/8),(40)&7 line 32 ;main.c: 32: RA0 = 0; bcf (40/8),(40)&7 line 33 ;main.c: 33: RA0 = 0; bcf (40/8),(40)&7 line 34 ;main.c: 34: RA0 = 0; bcf (40/8),(40)&7 line 35 ;main.c: 35: RA0 = 0; bcf (40/8),(40)&7 line 36 ;main.c: 36: RA0 = 0; bcf (40/8),(40)&7 line 37 ;main.c: 37: RA0 = 0; bcf (40/8),(40)&7 line 38 ;main.c: 38: RA0 = 0; bcf (40/8),(40)&7 line 39 l2320: ;main.c: 39: i++; movlw (01h) movwf (??_ON+0)+0 movf (??_ON+0)+0,w addwf (ON@i),f line 41 l2322: ;main.c: 40: } ;main.c: 41: while(i<32); movlw (020h) subwf (ON@i),w skipc goto u2621 goto u2620 u2621: goto l387 u2620: l388: line 42 ;main.c: 42: RA0 = 0; bcf (40/8),(40)&7 line 43 l389: return opt stack 0 GLOBAL __end_of_ON __end_of_ON: ;; =============== function _ON ends ============ signat _ON,88 global _ISR psect text304,local,class=CODE,delta=2 global __ptext304 __ptext304: ;; *************** function _ISR ***************** ;; Defined at: ;; line 59 in file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" ;; Parameters: Size Location Type ;; None ;; Auto vars: Size Location Type ;; None ;; Return value: Size Location Type ;; None void ;; Registers used: ;; None ;; Tracked objects: ;; On entry : 0/0 ;; On exit : 0/0 ;; Unchanged: 0/0 ;; Data sizes: COMMON BANK0 BANK1 BANK2 ;; Params: 0 0 0 0 ;; Locals: 0 0 0 0 ;; Temps: 4 0 0 0 ;; Totals: 4 0 0 0 ;;Total ram usage: 4 bytes ;; Hardware stack levels used: 1 ;; This function calls: ;; Nothing ;; This function is called by: ;; Interrupt level 1 ;; This function uses a non-reentrant model ;; psect text304 file "C:\Users\132033dt\Desktop\pic_rc5\src\main.c" line 59 global __size_of_ISR __size_of_ISR equ __end_of_ISR-_ISR _ISR: opt stack 4 ; Regs used in _ISR: [] psect intentry,class=CODE,delta=2 global __pintentry __pintentry: global interrupt_function interrupt_function: global saved_w saved_w set btemp+0 movwf saved_w swapf status,w movwf (??_ISR+0) movf fsr0,w movwf (??_ISR+1) movf pclath,w movwf (??_ISR+2) bcf status, 5 ;RP0=0, select bank0 bcf status, 6 ;RP1=0, select bank0 movf btemp+1,w movwf (??_ISR+3) ljmp _ISR psect text304 line 61 i1l397: movf (??_ISR+3),w movwf btemp+1 movf (??_ISR+2),w movwf pclath movf (??_ISR+1),w movwf fsr0 swapf (??_ISR+0)^0FFFFFF80h,w movwf status swapf saved_w,f swapf saved_w,w retfie opt stack 0 GLOBAL __end_of_ISR __end_of_ISR: ;; =============== function _ISR ends ============ signat _ISR,88 psect text305,local,class=CODE,delta=2 global __ptext305 __ptext305: global btemp btemp set 07Eh DABS 1,126,2 ;btemp global wtemp0 wtemp0 set btemp end