opt subtitle "HI-TECH Software Omniscient Code Generator (Lite mode) build 10920"

opt pagewidth 120

	opt lm

	processor	16F877A
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
	FNCALL	_main,_SysInit
	FNCALL	_main,_DeviceInit
	FNCALL	_main,_flilflop_Enable
	FNCALL	_DeviceInit,_flilflop_Enable
	FNROOT	_main
	global	_PORTA
psect	text94,local,class=CODE,delta=2
global __ptext94
__ptext94:
_PORTA	set	5
	global	_PORTB
_PORTB	set	6
	global	_PORTC
_PORTC	set	7
	global	_PORTD
_PORTD	set	8
	global	_CARRY
_CARRY	set	24
	global	_GIE
_GIE	set	95
	global	_ADCON1
_ADCON1	set	159
	global	_TRISA
_TRISA	set	133
	global	_TRISB
_TRISB	set	134
	global	_TRISC
_TRISC	set	135
	global	_TRISD
_TRISD	set	136
	global	_TRISE
_TRISE	set	137
	global	_EEADR
_EEADR	set	269
	global	_EEDATA
_EEDATA	set	268
	global	_EECON1
_EECON1	set	396
	global	_EECON2
_EECON2	set	397
	global	_RD
_RD	set	3168
	global	_WR
_WR	set	3169
	global	_WREN
_WREN	set	3170
	file	"Test.as"
	line	#
psect cinit,class=CODE,delta=2
global start_initialization
start_initialization:

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	?_flilflop_Enable
?_flilflop_Enable:	; 0 bytes @ 0x0
	global	?_SysInit
?_SysInit:	; 0 bytes @ 0x0
	global	??_SysInit
??_SysInit:	; 0 bytes @ 0x0
	global	?_DeviceInit
?_DeviceInit:	; 0 bytes @ 0x0
	global	?_main
?_main:	; 0 bytes @ 0x0
	global	flilflop_Enable@OuputData
flilflop_Enable@OuputData:	; 1 bytes @ 0x0
	ds	1
	global	??_flilflop_Enable
??_flilflop_Enable:	; 0 bytes @ 0x1
	ds	1
	global	flilflop_Enable@Add
flilflop_Enable@Add:	; 1 bytes @ 0x2
	ds	1
	global	??_DeviceInit
??_DeviceInit:	; 0 bytes @ 0x3
	global	??_main
??_main:	; 0 bytes @ 0x3
	ds	1
	global	main@key
main@key:	; 1 bytes @ 0x4
	ds	1
;;Data sizes: Strings 0, constant 0, data 0, bss 0, persistent 0 stack 0
;;Auto spaces:   Size  Autos    Used
;; COMMON          14      5       5
;; BANK0           80      0       0
;; BANK1           80      0       0
;; BANK3           96      0       0
;; BANK2           96      0       0

;;
;; Pointer list with targets:



;;
;; Critical Paths under _main in COMMON
;;
;;   _main->_flilflop_Enable
;;   _DeviceInit->_flilflop_Enable
;;
;; Critical Paths under _main in BANK0
;;
;;   None.
;;
;; Critical Paths under _main in BANK1
;;
;;   None.
;;
;; Critical Paths under _main in BANK3
;;
;;   None.
;;
;; Critical Paths under _main 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                                                 2     2      0      60
;;                                              3 COMMON     2     2      0
;;                            _SysInit
;;                         _DeviceInit
;;                    _flilflop_Enable
;; ---------------------------------------------------------------------------------
;; (1) _DeviceInit                                           0     0      0      30
;;                    _flilflop_Enable
;; ---------------------------------------------------------------------------------
;; (1) _SysInit                                              0     0      0       0
;; ---------------------------------------------------------------------------------
;; (1) _flilflop_Enable                                      3     2      1      30
;;                                              0 COMMON     3     2      1
;; ---------------------------------------------------------------------------------
;; Estimated maximum stack depth 1
;; ---------------------------------------------------------------------------------

;; Call Graph Graphs:

;; _main (ROOT)
;;   _SysInit
;;   _DeviceInit
;;     _flilflop_Enable
;;   _flilflop_Enable
;;

;; Address spaces:

;;Name               Size   Autos  Total    Cost      Usage
;;BITCOMMON            E      0       0       0        0.0%
;;EEDATA             100      0       0       0        0.0%
;;NULL                 0      0       0       0        0.0%
;;CODE                 0      0       0       0        0.0%
;;COMMON               E      5       5       1       35.7%
;;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       2       2        0.0%
;;ABS                  0      0       0       3        0.0%
;;BITBANK0            50      0       0       4        0.0%
;;BITSFR3              0      0       0       4        0.0%
;;SFR3                 0      0       0       4        0.0%
;;BANK0               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%
;;BITBANK3            60      0       0       8        0.0%
;;BANK3               60      0       0       9        0.0%
;;BITBANK2            60      0       0      10        0.0%
;;BANK2               60      0       0      11        0.0%
;;DATA                 0      0       0      12        0.0%

	global	_main
psect	maintext,global,class=CODE,delta=2
global __pmaintext
__pmaintext:

;; *************** function _main *****************
;; Defined at:
;;		line 66 in file "D:\Product\PIC\LK-P16-F\Firmware\V03\PIC16F18F-F_Test_Code_17_0112\Each_Code\CH05_1_RelayBuzzer\test_all_code.c"
;; Parameters:    Size  Location     Type
;;		None
;; Auto vars:     Size  Location     Type
;;  key             1    4[COMMON] unsigned char 
;; Return value:  Size  Location     Type
;;		None               void
;; Registers used:
;;		wreg, status,2, status,0, pclath, cstack
;; Tracked objects:
;;		On entry : 17F/0
;;		On exit  : 0/0
;;		Unchanged: 0/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK3   BANK2
;;      Params:         0       0       0       0       0
;;      Locals:         1       0       0       0       0
;;      Temps:          1       0       0       0       0
;;      Totals:         2       0       0       0       0
;;Total ram usage:        2 bytes
;; Hardware stack levels required when called:    2
;; This function calls:
;;		_SysInit
;;		_DeviceInit
;;		_flilflop_Enable
;; This function is called by:
;;		Startup code after reset
;; This function uses a non-reentrant model
;;
psect	maintext
	file	"D:\Product\PIC\LK-P16-F\Firmware\V03\PIC16F18F-F_Test_Code_17_0112\Each_Code\CH05_1_RelayBuzzer\test_all_code.c"
	line	66
	global	__size_of_main
	__size_of_main	equ	__end_of_main-_main
	
_main:	
	opt	stack 6
; Regs used in _main: [wreg+status,2+status,0+pclath+cstack]
	line	67
	
l2635:	
;test_all_code.c: 67: unsigned char key = 0;
	clrf	(main@key)
	line	68
	
l2637:	
;test_all_code.c: 68: SysInit();
	fcall	_SysInit
	line	69
;test_all_code.c: 69: DeviceInit();
	fcall	_DeviceInit
	line	70
;test_all_code.c: 70: flilflop_Enable(0X00, 0X00);
	clrf	(?_flilflop_Enable)
	movlw	(0)
	fcall	_flilflop_Enable
	line	71
;test_all_code.c: 71: while (1)
	
l694:	
	line	73
;test_all_code.c: 72: {
;test_all_code.c: 73: flilflop_Enable(0X02, (0x40 | 0x80));
	movlw	(0C0h)
	movwf	(??_main+0)+0
	movf	(??_main+0)+0,w
	movwf	(?_flilflop_Enable)
	movlw	(02h)
	fcall	_flilflop_Enable
	line	74
	
l2639:	
;test_all_code.c: 74: if ((PORTA&0X08) == 0)
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	btfsc	(5),(3)&7
	goto	u2221
	goto	u2220
u2221:
	goto	l695
u2220:
	line	77
	
l2641:	
;test_all_code.c: 75: {
;test_all_code.c: 77: flilflop_Enable(0X02, 0x01);
	clrf	(?_flilflop_Enable)
	bsf	status,0
	rlf	(?_flilflop_Enable),f
	movlw	(02h)
	fcall	_flilflop_Enable
	line	78
;test_all_code.c: 78: flilflop_Enable(0X05, 0X00);
	clrf	(?_flilflop_Enable)
	movlw	(05h)
	fcall	_flilflop_Enable
	line	79
;test_all_code.c: 79: }
	goto	l2645
	line	80
	
l695:	
;test_all_code.c: 80: else if ((PORTA&0X10) == 0)
	btfsc	(5),(4)&7
	goto	u2231
	goto	u2230
u2231:
	goto	l697
u2230:
	line	82
	
l2643:	
;test_all_code.c: 81: {
;test_all_code.c: 82: flilflop_Enable(0X02, 0X00);
	clrf	(?_flilflop_Enable)
	movlw	(02h)
	fcall	_flilflop_Enable
	line	83
;test_all_code.c: 83: flilflop_Enable(0X05, 0X80);
	movlw	(080h)
	movwf	(??_main+0)+0
	movf	(??_main+0)+0,w
	movwf	(?_flilflop_Enable)
	movlw	(05h)
	fcall	_flilflop_Enable
	line	84
;test_all_code.c: 84: }
	goto	l2645
	line	85
	
l697:	
;test_all_code.c: 85: else if ((PORTA&0X20) == 0)
	movf	(5),w
	goto	l2645
	line	88
;test_all_code.c: 86: {
	
l699:	
	goto	l2645
	line	89
	
l698:	
	goto	l2645
	
l696:	
	
l2645:	
;test_all_code.c: 88: }
;test_all_code.c: 89: flilflop_Enable(0X02, (0x20 | 0x80));
	movlw	(0A0h)
	movwf	(??_main+0)+0
	movf	(??_main+0)+0,w
	movwf	(?_flilflop_Enable)
	movlw	(02h)
	fcall	_flilflop_Enable
	line	90
	
l2647:	
;test_all_code.c: 90: if ((PORTA&0X08) == 0)
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	btfsc	(5),(3)&7
	goto	u2241
	goto	u2240
u2241:
	goto	l700
u2240:
	goto	l2653
	line	93
	
l2649:	
;test_all_code.c: 91: {
;test_all_code.c: 93: }
	goto	l2653
	line	94
	
l700:	
;test_all_code.c: 94: else if ((PORTA&0X10) == 0)
	btfsc	(5),(4)&7
	goto	u2251
	goto	u2250
u2251:
	goto	l702
u2250:
	goto	l2653
	line	97
	
l2651:	
;test_all_code.c: 95: {
;test_all_code.c: 97: }
	goto	l2653
	line	98
	
l702:	
;test_all_code.c: 98: else if ((PORTA&0X20) == 0)
	movf	(5),w
	goto	l2653
	line	101
;test_all_code.c: 99: {
	
l704:	
	goto	l2653
	line	102
	
l703:	
	goto	l2653
	
l701:	
	
l2653:	
;test_all_code.c: 101: }
;test_all_code.c: 102: flilflop_Enable(0X02, (0x20 | 0x40));
	movlw	(060h)
	movwf	(??_main+0)+0
	movf	(??_main+0)+0,w
	movwf	(?_flilflop_Enable)
	movlw	(02h)
	fcall	_flilflop_Enable
	line	103
	
l2655:	
;test_all_code.c: 103: if ((PORTA&0X08) == 0)
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	btfsc	(5),(3)&7
	goto	u2261
	goto	u2260
u2261:
	goto	l705
u2260:
	goto	l694
	line	106
	
l2657:	
;test_all_code.c: 104: {
;test_all_code.c: 106: }
	goto	l694
	line	107
	
l705:	
;test_all_code.c: 107: else if ((PORTA&0X10) == 0)
	btfsc	(5),(4)&7
	goto	u2271
	goto	u2270
u2271:
	goto	l707
u2270:
	goto	l694
	line	110
	
l2659:	
;test_all_code.c: 108: {
;test_all_code.c: 110: }
	goto	l694
	line	111
	
l707:	
;test_all_code.c: 111: else if ((PORTA&0X20) == 0)
	movf	(5),w
	goto	l694
	line	114
;test_all_code.c: 112: {
	
l709:	
	goto	l694
	line	115
	
l708:	
	goto	l694
	
l706:	
	goto	l694
	
l710:	
	line	71
	goto	l694
	
l711:	
	line	116
	
l712:	
	global	start
	ljmp	start
	opt stack 0
GLOBAL	__end_of_main
	__end_of_main:
;; =============== function _main ends ============

	signat	_main,88
	global	_DeviceInit
psect	text95,local,class=CODE,delta=2
global __ptext95
__ptext95:

;; *************** function _DeviceInit *****************
;; Defined at:
;;		line 53 in file "D:\Product\PIC\LK-P16-F\Firmware\V03\PIC16F18F-F_Test_Code_17_0112\Each_Code\CH05_1_RelayBuzzer\test_all_code.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   BANK3   BANK2
;;      Params:         0       0       0       0       0
;;      Locals:         0       0       0       0       0
;;      Temps:          0       0       0       0       0
;;      Totals:         0       0       0       0       0
;;Total ram usage:        0 bytes
;; Hardware stack levels used:    1
;; Hardware stack levels required when called:    1
;; This function calls:
;;		_flilflop_Enable
;; This function is called by:
;;		_main
;; This function uses a non-reentrant model
;;
psect	text95
	file	"D:\Product\PIC\LK-P16-F\Firmware\V03\PIC16F18F-F_Test_Code_17_0112\Each_Code\CH05_1_RelayBuzzer\test_all_code.c"
	line	53
	global	__size_of_DeviceInit
	__size_of_DeviceInit	equ	__end_of_DeviceInit-_DeviceInit
	
_DeviceInit:	
	opt	stack 6
; Regs used in _DeviceInit: [wreg+status,2+status,0+pclath+cstack]
	line	55
	
l2633:	
;test_all_code.c: 55: flilflop_Enable(0X00,0X00);
	clrf	(?_flilflop_Enable)
	movlw	(0)
	fcall	_flilflop_Enable
	line	56
;test_all_code.c: 56: flilflop_Enable(0X01,0X00);
	clrf	(?_flilflop_Enable)
	movlw	(01h)
	fcall	_flilflop_Enable
	line	57
;test_all_code.c: 57: flilflop_Enable(0X02,0X00);
	clrf	(?_flilflop_Enable)
	movlw	(02h)
	fcall	_flilflop_Enable
	line	58
;test_all_code.c: 58: flilflop_Enable(0X03,0X00);
	clrf	(?_flilflop_Enable)
	movlw	(03h)
	fcall	_flilflop_Enable
	line	59
;test_all_code.c: 59: flilflop_Enable(0X04,0X00);
	clrf	(?_flilflop_Enable)
	movlw	(04h)
	fcall	_flilflop_Enable
	line	60
;test_all_code.c: 60: flilflop_Enable(0X05,0X00);
	clrf	(?_flilflop_Enable)
	movlw	(05h)
	fcall	_flilflop_Enable
	line	61
;test_all_code.c: 61: flilflop_Enable(0X06,0X00);
	clrf	(?_flilflop_Enable)
	movlw	(06h)
	fcall	_flilflop_Enable
	line	62
;test_all_code.c: 62: flilflop_Enable(0X07,0X00);
	clrf	(?_flilflop_Enable)
	movlw	(07h)
	fcall	_flilflop_Enable
	line	63
	
l691:	
	return
	opt stack 0
GLOBAL	__end_of_DeviceInit
	__end_of_DeviceInit:
;; =============== function _DeviceInit ends ============

	signat	_DeviceInit,88
	global	_SysInit
psect	text96,local,class=CODE,delta=2
global __ptext96
__ptext96:

;; *************** function _SysInit *****************
;; Defined at:
;;		line 42 in file "D:\Product\PIC\LK-P16-F\Firmware\V03\PIC16F18F-F_Test_Code_17_0112\Each_Code\CH05_1_RelayBuzzer\test_all_code.c"
;; Parameters:    Size  Location     Type
;;		None
;; Auto vars:     Size  Location     Type
;;		None
;; Return value:  Size  Location     Type
;;		None               void
;; Registers used:
;;		wreg, status,2
;; Tracked objects:
;;		On entry : 0/0
;;		On exit  : 0/0
;;		Unchanged: 0/0
;; Data sizes:     COMMON   BANK0   BANK1   BANK3   BANK2
;;      Params:         0       0       0       0       0
;;      Locals:         0       0       0       0       0
;;      Temps:          0       0       0       0       0
;;      Totals:         0       0       0       0       0
;;Total ram usage:        0 bytes
;; Hardware stack levels used:    1
;; This function calls:
;;		Nothing
;; This function is called by:
;;		_main
;; This function uses a non-reentrant model
;;
psect	text96
	file	"D:\Product\PIC\LK-P16-F\Firmware\V03\PIC16F18F-F_Test_Code_17_0112\Each_Code\CH05_1_RelayBuzzer\test_all_code.c"
	line	42
	global	__size_of_SysInit
	__size_of_SysInit	equ	__end_of_SysInit-_SysInit
	
_SysInit:	
	opt	stack 7
; Regs used in _SysInit: [wreg+status,2]
	line	44
	
l1767:	
;test_all_code.c: 44: TRISA = 0X38;
	movlw	(038h)
	bsf	status, 5	;RP0=1, select bank1
	bcf	status, 6	;RP1=0, select bank1
	movwf	(133)^080h	;volatile
	line	45
;test_all_code.c: 45: ADCON1 = 0X06;
	movlw	(06h)
	movwf	(159)^080h	;volatile
	line	46
;test_all_code.c: 46: TRISB = 0X01;
	movlw	(01h)
	movwf	(134)^080h	;volatile
	line	47
;test_all_code.c: 47: TRISC = 0x80;
	movlw	(080h)
	movwf	(135)^080h	;volatile
	line	48
	
l1769:	
;test_all_code.c: 48: TRISD = 0X00;
	clrf	(136)^080h	;volatile
	line	49
	
l1771:	
;test_all_code.c: 49: TRISE = 0X00;
	clrf	(137)^080h	;volatile
	line	50
	
l1773:	
;test_all_code.c: 50: PORTD = 0X00;
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	clrf	(8)	;volatile
	line	51
	
l688:	
	return
	opt stack 0
GLOBAL	__end_of_SysInit
	__end_of_SysInit:
;; =============== function _SysInit ends ============

	signat	_SysInit,88
	global	_flilflop_Enable
psect	text97,local,class=CODE,delta=2
global __ptext97
__ptext97:

;; *************** function _flilflop_Enable *****************
;; Defined at:
;;		line 34 in file "D:\Product\PIC\LK-P16-F\Firmware\V03\PIC16F18F-F_Test_Code_17_0112\Each_Code\CH05_1_RelayBuzzer\test_all_code.c"
;; Parameters:    Size  Location     Type
;;  Add             1    wreg     unsigned char 
;;  OuputData       1    0[COMMON] unsigned char 
;; Auto vars:     Size  Location     Type
;;  Add             1    2[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   BANK3   BANK2
;;      Params:         1       0       0       0       0
;;      Locals:         1       0       0       0       0
;;      Temps:          1       0       0       0       0
;;      Totals:         3       0       0       0       0
;;Total ram usage:        3 bytes
;; Hardware stack levels used:    1
;; This function calls:
;;		Nothing
;; This function is called by:
;;		_DeviceInit
;;		_main
;; This function uses a non-reentrant model
;;
psect	text97
	file	"D:\Product\PIC\LK-P16-F\Firmware\V03\PIC16F18F-F_Test_Code_17_0112\Each_Code\CH05_1_RelayBuzzer\test_all_code.c"
	line	34
	global	__size_of_flilflop_Enable
	__size_of_flilflop_Enable	equ	__end_of_flilflop_Enable-_flilflop_Enable
	
_flilflop_Enable:	
	opt	stack 7
; Regs used in _flilflop_Enable: [wreg+status,2+status,0]
;flilflop_Enable@Add stored from wreg
	movwf	(flilflop_Enable@Add)
	line	35
	
l1759:	
;test_all_code.c: 35: PORTD = OuputData;
	movf	(flilflop_Enable@OuputData),w
	bcf	status, 5	;RP0=0, select bank0
	bcf	status, 6	;RP1=0, select bank0
	movwf	(8)	;volatile
	line	36
	
l1761:	
;test_all_code.c: 36: PORTB |= 0X10;
	bsf	(6)+(4/8),(4)&7	;volatile
	line	37
;test_all_code.c: 37: PORTC = Add;
	movf	(flilflop_Enable@Add),w
	movwf	(7)	;volatile
	line	38
	
l1763:	
;test_all_code.c: 38: PORTB &= ~0X10;
	movlw	(0EFh)
	movwf	(??_flilflop_Enable+0)+0
	movf	(??_flilflop_Enable+0)+0,w
	andwf	(6),f	;volatile
	line	39
	
l1765:	
;test_all_code.c: 39: PORTB |= 0X10;
	bsf	(6)+(4/8),(4)&7	;volatile
	line	40
	
l685:	
	return
	opt stack 0
GLOBAL	__end_of_flilflop_Enable
	__end_of_flilflop_Enable:
;; =============== function _flilflop_Enable ends ============

	signat	_flilflop_Enable,8312
psect	text98,local,class=CODE,delta=2
global __ptext98
__ptext98:
	global	btemp
	btemp set 07Eh

	DABS	1,126,2	;btemp
	global	wtemp0
	wtemp0 set btemp
	end
