	.file "X:\\707976_EPBuoyPrototypeAndTesting\\dsPicCodes\\ISquaredCPrototype\\ISquaredCPrototype.X\\BatterySignalDecode.c"
	.section	.debug_abbrev,info
.Ldebug_abbrev0:
	.section	.debug_info,info
.Ldebug_info0:
	.section	.debug_line,info
.Ldebug_line0:
	.section	.text,code
.Ltext0:
	.section	.text,code
	.align	2
	.global	_DecodeBatterySignals	; export
	.type	_DecodeBatterySignals,@function
_DecodeBatterySignals:
.LFB17:
	.file 1 "BatterySignalDecode.c"
	.loc 1 22 0
	.set ___PA___,1
	lnk	#20
.LCFI0:
	mov.d	w8,[w15++]
.LCFI1:
	add	w14,#16,w2
	mov.d	w0,[w2]
	.loc 1 29 0
	mov	_first.9914,w0
	cp0	w0
	.set ___BP___,0
	bra	z,.L2
	.loc 1 31 0
	mov	#18373,w0
	mov	#16461,w1
	mov	w0,_K1.9915
	mov	w1,_K1.9915+2
	.loc 1 32 0
	mov	#21794,w0
	mov	#14480,w1
	mov	w0,_K2.9916
	mov	w1,_K2.9916+2
	.loc 1 33 0
	mov	#44339,w0
	mov	#21551,w1
	mov	w0,_K3.9917
	mov	w1,_K3.9917+2
	.loc 1 34 0
	mov	#51200,w0
	mov	#18539,w1
	mov	w0,_K4.9918
	mov	w1,_K4.9918+2
	.loc 1 35 0
	mov	#3350,w0
	mov	#19855,w1
	mov	w0,_K5.9919
	mov	w1,_K5.9919+2
	.loc 1 36 0
	clr	_first.9914
.L2:
	.loc 1 39 0
	mov	_K1.9915,w0
	mov	_K1.9915+2,w1
	add	w14,#16,w2
	mov.d	[w2],w2
	rcall	___mulsf3
	add	w14,#4,w2
	mov.d	w0,[w2]
	.loc 1 40 0
	add	w14,#4,w0
	mov.d	[w0],w2
	mov	#52429,w0
	mov	#16748,w1
	rcall	___subsf3
	mov.d	w0,w8
	add	w14,#4,w0
	mov	#16384,w2
	mov	#17948,w3
	mov.d	[w0],w0
	rcall	___mulsf3
	mov.d	w0,w2
	mov.d	w8,w0
	rcall	___divsf3
	add	w14,#8,w2
	mov.d	w0,[w2]
	.loc 1 41 0
	mov	_K2.9916,w0
	mov	_K2.9916+2,w1
	add	w14,#8,w4
	mov.d	w0,w2
	mov.d	[w4],w0
	rcall	___subsf3
	add	w14,#12,w2
	mov.d	w0,[w2]
	.loc 1 42 0
	mov	_K3.9917,w0
	mov	_K3.9917+2,w1
	add	w14,#12,w2
	mov.d	[w2],w2
	rcall	___mulsf3
	mov.d	w0,w4
	mov	_K4.9918,w0
	mov	_K4.9918+2,w1
	mov.d	w0,w2
	mov.d	w4,w0
	rcall	___subsf3
	mov.d	w0,w4
	mov	_K5.9919,w0
	mov	_K5.9919+2,w1
	mov.d	w0,w2
	mov.d	w4,w0
	rcall	___divsf3
	mov.d	w0,[w14]
	.loc 1 44 0
	mov.b	#1,w8
	mul.uu	w2,#0,w2
		
	mov.d	[w14],w0
	rcall	___ltsf2
	cp0	w0
	.set ___BP___,0
	bra	lt,.L3
	clr.b	w8
.L3:
	cp0.b	w8
	.set ___BP___,0
	bra	z,.L4
	mul.uu	w0,#0,w0
		
	mov.d	w0,[w14]
.L4:
	.loc 1 45 0
	mov.b	#1,w8
	mov	#0,w2
	mov	#16832,w3
	mov.d	[w14],w0
	rcall	___gtsf2
	cp0	w0
	.set ___BP___,0
	bra	gt,.L5
	clr.b	w8
.L5:
	cp0.b	w8
	.set ___BP___,0
	bra	z,.L6
	mov	#0,w0
	mov	#16832,w1
	mov.d	w0,[w14]
.L6:
	.loc 1 47 0
	mov	#0,w2
	mov	#16128,w3
	mov.d	[w14],w0
	rcall	___addsf3
	rcall	___fixunssfsi
	mov.b	w0,w0
	.loc 1 48 0
	mov.d	[--w15],w8
	ulnk	
	return	
	.set ___PA___,0
.LFE17:
	.size	_DecodeBatterySignals, .-_DecodeBatterySignals
	.section	.ndata,data,near
	.align	2
	.type	_first.9914,@object
	.size	_first.9914, 2
_first.9914:
	.word	1
	.section	.nbss,bss,near
	.align	2
	.type	_K1.9915,@object
	.size	_K1.9915, 4
_K1.9915:
	.skip	4
	.align	2
	.type	_K2.9916,@object
	.size	_K2.9916, 4
_K2.9916:
	.skip	4
	.align	2
	.type	_K3.9917,@object
	.size	_K3.9917, 4
_K3.9917:
	.skip	4
	.align	2
	.type	_K4.9918,@object
	.size	_K4.9918, 4
_K4.9918:
	.skip	4
	.align	2
	.type	_K5.9919,@object
	.size	_K5.9919, 4
_K5.9919:
	.skip	4
	.section	.debug_frame,info
.Lframe0:
	.4byte	.LECIE0-.LSCIE0
.LSCIE0:
	.4byte	0xffffffff
	.byte	0x1
	.byte	0
	.uleb128 0x1
	.sleb128 2
	.byte	0x25
	.byte	0x12
	.uleb128 0xf
	.sleb128 -2
	.byte	0x9
	.uleb128 0x25
	.uleb128 0xf
	.align	4
.LECIE0:
.LSFDE0:
	.4byte	.LEFDE0-.LASFDE0
.LASFDE0:
	.4byte	.Lframe0
	.4byte	.LFB17
	.4byte	.LFE17-.LFB17
	.byte	0x4
	.4byte	.LCFI0-.LFB17
	.byte	0x12
	.uleb128 0xe
	.sleb128 -3
	.byte	0x8e
	.uleb128 0x2
	.byte	0x4
	.4byte	.LCFI1-.LCFI0
	.byte	0x88
	.uleb128 0xd
	.align	4
.LEFDE0:
	.section	.text,code
.Letext0:
	.section	.debug_info,info
	.4byte	0x254
	.2byte	0x2
	.4byte	.Ldebug_abbrev0
	.byte	0x4
	.uleb128 0x1
	.asciz	"GNU C 4.5.1 (XC16, Microchip v2.00) (B) Build date: Jan 24 2022"
	.byte	0x1
	.asciz	"BatterySignalDecode.c"
	.ascii	"X:\\707976_EPBuoyPrototypeAndTesting\\dsPicCodes\\ISquaredCPrototype"
	.asciz	"\\ISquaredCPrototype.X"
	.4byte	.Ltext0
	.4byte	.Letext0
	.4byte	.Ldebug_line0
	.uleb128 0x2
	.byte	0x2
	.byte	0x7
	.asciz	"short unsigned int"
	.uleb128 0x2
	.byte	0x2
	.byte	0x7
	.asciz	"unsigned int"
	.uleb128 0x2
	.byte	0x2
	.byte	0x5
	.asciz	"int"
	.uleb128 0x2
	.byte	0x4
	.byte	0x5
	.asciz	"long int"
	.uleb128 0x2
	.byte	0x8
	.byte	0x5
	.asciz	"long long int"
	.uleb128 0x2
	.byte	0x1
	.byte	0x6
	.asciz	"signed char"
	.uleb128 0x2
	.byte	0x1
	.byte	0x8
	.asciz	"unsigned char"
	.uleb128 0x2
	.byte	0x4
	.byte	0x7
	.asciz	"long unsigned int"
	.uleb128 0x2
	.byte	0x8
	.byte	0x7
	.asciz	"long long unsigned int"
	.uleb128 0x2
	.byte	0x4
	.byte	0x4
	.asciz	"float"
	.uleb128 0x2
	.byte	0x4
	.byte	0x4
	.asciz	"double"
	.uleb128 0x2
	.byte	0x1
	.byte	0x6
	.asciz	"char"
	.uleb128 0x3
	.byte	0x1
	.asciz	"DecodeBatterySignals"
	.byte	0x1
	.byte	0x15
	.byte	0x1
	.4byte	0x11f
	.4byte	.LFB17
	.4byte	.LFE17
	.byte	0x1
	.byte	0x5e
	.uleb128 0x4
	.asciz	"VR3"
	.byte	0x1
	.byte	0x15
	.4byte	0x15f
	.byte	0x2
	.byte	0x7e
	.sleb128 16
	.uleb128 0x5
	.asciz	"N_fp"
	.byte	0x1
	.byte	0x17
	.4byte	0x15f
	.byte	0x2
	.byte	0x7e
	.sleb128 0
	.uleb128 0x5
	.asciz	"VR2"
	.byte	0x1
	.byte	0x18
	.4byte	0x15f
	.byte	0x2
	.byte	0x7e
	.sleb128 4
	.uleb128 0x5
	.asciz	"Rlow_inv"
	.byte	0x1
	.byte	0x19
	.4byte	0x15f
	.byte	0x2
	.byte	0x7e
	.sleb128 8
	.uleb128 0x5
	.asciz	"Rext_inv"
	.byte	0x1
	.byte	0x19
	.4byte	0x15f
	.byte	0x2
	.byte	0x7e
	.sleb128 12
	.uleb128 0x5
	.asciz	"first"
	.byte	0x1
	.byte	0x1a
	.4byte	0xec
	.byte	0x5
	.byte	0x3
	.4byte	_first.9914
	.uleb128 0x5
	.asciz	"K1"
	.byte	0x1
	.byte	0x1b
	.4byte	0x15f
	.byte	0x5
	.byte	0x3
	.4byte	_K1.9915
	.uleb128 0x5
	.asciz	"K2"
	.byte	0x1
	.byte	0x1b
	.4byte	0x15f
	.byte	0x5
	.byte	0x3
	.4byte	_K2.9916
	.uleb128 0x5
	.asciz	"K3"
	.byte	0x1
	.byte	0x1b
	.4byte	0x15f
	.byte	0x5
	.byte	0x3
	.4byte	_K3.9917
	.uleb128 0x5
	.asciz	"K4"
	.byte	0x1
	.byte	0x1b
	.4byte	0x15f
	.byte	0x5
	.byte	0x3
	.4byte	_K4.9918
	.uleb128 0x5
	.asciz	"K5"
	.byte	0x1
	.byte	0x1b
	.4byte	0x15f
	.byte	0x5
	.byte	0x3
	.4byte	_K5.9919
	.byte	0x0
	.byte	0x0
	.section	.debug_abbrev,info
	.uleb128 0x1
	.uleb128 0x11
	.byte	0x1
	.uleb128 0x25
	.uleb128 0x8
	.uleb128 0x13
	.uleb128 0xb
	.uleb128 0x3
	.uleb128 0x8
	.uleb128 0x1b
	.uleb128 0x8
	.uleb128 0x11
	.uleb128 0x1
	.uleb128 0x12
	.uleb128 0x1
	.uleb128 0x10
	.uleb128 0x6
	.byte	0x0
	.byte	0x0
	.uleb128 0x2
	.uleb128 0x24
	.byte	0x0
	.uleb128 0xb
	.uleb128 0xb
	.uleb128 0x3e
	.uleb128 0xb
	.uleb128 0x3
	.uleb128 0x8
	.byte	0x0
	.byte	0x0
	.uleb128 0x3
	.uleb128 0x2e
	.byte	0x1
	.uleb128 0x3f
	.uleb128 0xc
	.uleb128 0x3
	.uleb128 0x8
	.uleb128 0x3a
	.uleb128 0xb
	.uleb128 0x3b
	.uleb128 0xb
	.uleb128 0x27
	.uleb128 0xc
	.uleb128 0x49
	.uleb128 0x13
	.uleb128 0x11
	.uleb128 0x1
	.uleb128 0x12
	.uleb128 0x1
	.uleb128 0x40
	.uleb128 0xa
	.byte	0x0
	.byte	0x0
	.uleb128 0x4
	.uleb128 0x5
	.byte	0x0
	.uleb128 0x3
	.uleb128 0x8
	.uleb128 0x3a
	.uleb128 0xb
	.uleb128 0x3b
	.uleb128 0xb
	.uleb128 0x49
	.uleb128 0x13
	.uleb128 0x2
	.uleb128 0xa
	.byte	0x0
	.byte	0x0
	.uleb128 0x5
	.uleb128 0x34
	.byte	0x0
	.uleb128 0x3
	.uleb128 0x8
	.uleb128 0x3a
	.uleb128 0xb
	.uleb128 0x3b
	.uleb128 0xb
	.uleb128 0x49
	.uleb128 0x13
	.uleb128 0x2
	.uleb128 0xa
	.byte	0x0
	.byte	0x0
	.byte	0x0
	.section	.debug_pubnames,info
	.4byte	0x27
	.2byte	0x2
	.4byte	.Ldebug_info0
	.4byte	0x258
	.4byte	0x17a
	.asciz	"DecodeBatterySignals"
	.4byte	0x0
	.section	.debug_pubtypes,info
	.4byte	0xe
	.2byte	0x2
	.4byte	.Ldebug_info0
	.4byte	0x258
	.4byte	0x0
	.section	.debug_aranges,info
	.4byte	0x14
	.2byte	0x2
	.4byte	.Ldebug_info0
	.byte	0x4
	.byte	0x0
	.2byte	0x0
	.2byte	0x0
	.4byte	0x0
	.4byte	0x0
	.section	.debug_str,info
	.section	.text,code



	.section __c30_info, info, bss
__large_data_scalar:

	.section __c30_signature, info, data
	.word 0x0001
	.word 0x0006
	.word 0x0000

; MCHP configuration words

	.set ___PA___,0
	.end
