
_RTCC_CalcWkDay:

;RTCC.c,9 :: 		void RTCC_CalcWkDay() { // Calculates the correct weekday
;RTCC.c,10 :: 		/*static const*/ char tbl[] = {0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4};
	CLRF        RTCC_CalcWkDay_tbl_L0+0 
	MOVLW       3
	MOVWF       RTCC_CalcWkDay_tbl_L0+1 
	MOVLW       2
	MOVWF       RTCC_CalcWkDay_tbl_L0+2 
	MOVLW       5
	MOVWF       RTCC_CalcWkDay_tbl_L0+3 
	CLRF        RTCC_CalcWkDay_tbl_L0+4 
	MOVLW       3
	MOVWF       RTCC_CalcWkDay_tbl_L0+5 
	MOVLW       5
	MOVWF       RTCC_CalcWkDay_tbl_L0+6 
	MOVLW       1
	MOVWF       RTCC_CalcWkDay_tbl_L0+7 
	MOVLW       4
	MOVWF       RTCC_CalcWkDay_tbl_L0+8 
	MOVLW       6
	MOVWF       RTCC_CalcWkDay_tbl_L0+9 
	MOVLW       2
	MOVWF       RTCC_CalcWkDay_tbl_L0+10 
	MOVLW       4
	MOVWF       RTCC_CalcWkDay_tbl_L0+11 
;RTCC.c,12 :: 		yr = dtmRTCC.Year + 2000;
	MOVF        _dtmRTCC+0, 0 
	MOVWF       RTCC_CalcWkDay_yr_L0+0 
	MOVLW       0
	MOVWF       RTCC_CalcWkDay_yr_L0+1 
	MOVLW       208
	ADDWF       RTCC_CalcWkDay_yr_L0+0, 1 
	MOVLW       7
	ADDWFC      RTCC_CalcWkDay_yr_L0+1, 1 
;RTCC.c,13 :: 		if (dtmRTCC.Month < 2) {yr--;}
	MOVLW       2
	SUBWF       _dtmRTCC+1, 0 
	BTFSC       STATUS+0, 0 
	GOTO        L_RTCC_CalcWkDay0
	MOVLW       1
	SUBWF       RTCC_CalcWkDay_yr_L0+0, 1 
	MOVLW       0
	SUBWFB      RTCC_CalcWkDay_yr_L0+1, 1 
L_RTCC_CalcWkDay0:
;RTCC.c,14 :: 		bytWkDay = (yr + yr/4 - yr/100 + yr/400 + tbl[dtmRTCC.Month - 1] + dtmRTCC.Day) % 7;
	MOVF        RTCC_CalcWkDay_yr_L0+0, 0 
	MOVWF       R0 
	MOVF        RTCC_CalcWkDay_yr_L0+1, 0 
	MOVWF       R1 
	RRCF        R1, 1 
	RRCF        R0, 1 
	BCF         R1, 7 
	RRCF        R1, 1 
	RRCF        R0, 1 
	BCF         R1, 7 
	MOVF        R0, 0 
	ADDWF       RTCC_CalcWkDay_yr_L0+0, 0 
	MOVWF       FLOC__RTCC_CalcWkDay+0 
	MOVF        R1, 0 
	ADDWFC      RTCC_CalcWkDay_yr_L0+1, 0 
	MOVWF       FLOC__RTCC_CalcWkDay+1 
	MOVLW       100
	MOVWF       R4 
	MOVLW       0
	MOVWF       R5 
	MOVF        RTCC_CalcWkDay_yr_L0+0, 0 
	MOVWF       R0 
	MOVF        RTCC_CalcWkDay_yr_L0+1, 0 
	MOVWF       R1 
	CALL        _Div_16X16_U+0, 0
	MOVF        R0, 0 
	SUBWF       FLOC__RTCC_CalcWkDay+0, 1 
	MOVF        R1, 0 
	SUBWFB      FLOC__RTCC_CalcWkDay+1, 1 
	MOVLW       144
	MOVWF       R4 
	MOVLW       1
	MOVWF       R5 
	MOVF        RTCC_CalcWkDay_yr_L0+0, 0 
	MOVWF       R0 
	MOVF        RTCC_CalcWkDay_yr_L0+1, 0 
	MOVWF       R1 
	CALL        _Div_16X16_U+0, 0
	MOVF        R0, 0 
	ADDWF       FLOC__RTCC_CalcWkDay+0, 0 
	MOVWF       R2 
	MOVF        R1, 0 
	ADDWFC      FLOC__RTCC_CalcWkDay+1, 0 
	MOVWF       R3 
	DECF        _dtmRTCC+1, 0 
	MOVWF       R0 
	CLRF        R1 
	MOVLW       0
	SUBWFB      R1, 1 
	MOVLW       RTCC_CalcWkDay_tbl_L0+0
	ADDWF       R0, 0 
	MOVWF       FSR2 
	MOVLW       hi_addr(RTCC_CalcWkDay_tbl_L0+0)
	ADDWFC      R1, 0 
	MOVWF       FSR2H 
	MOVF        POSTINC2+0, 0 
	ADDWF       R2, 0 
	MOVWF       R0 
	MOVLW       0
	ADDWFC      R3, 0 
	MOVWF       R1 
	MOVF        _dtmRTCC+2, 0 
	ADDWF       R0, 1 
	MOVLW       0
	ADDWFC      R1, 1 
	MOVLW       7
	MOVWF       R4 
	MOVLW       0
	MOVWF       R5 
	CALL        _Div_16X16_U+0, 0
	MOVF        R8, 0 
	MOVWF       R0 
	MOVF        R9, 0 
	MOVWF       R1 
	MOVF        R0, 0 
	MOVWF       _bytWkDay+0 
;RTCC.c,15 :: 		}
L_end_RTCC_CalcWkDay:
	RETURN      0
; end of _RTCC_CalcWkDay

_RTCC_WrEn:

;RTCC.c,17 :: 		void RTCC_WrEn() { //Enables writing to the RTCC registers
;RTCC.c,18 :: 		EECON2 = 0x55;
	MOVLW       85
	MOVWF       EECON2+0 
;RTCC.c,19 :: 		EECON2 = 0xAA;
	MOVLW       170
	MOVWF       EECON2+0 
;RTCC.c,20 :: 		RTCWREN_bit = 1;
	BSF         RTCWREN_bit+0, BitPos(RTCWREN_bit+0) 
;RTCC.c,21 :: 		}
L_end_RTCC_WrEn:
	RETURN      0
; end of _RTCC_WrEn

_RTCC_Init:

;RTCC.c,23 :: 		void RTCC_Init() {
;RTCC.c,25 :: 		T1OSCEN_bit = 1;
	BSF         T1OSCEN_bit+0, BitPos(T1OSCEN_bit+0) 
;RTCC.c,26 :: 		RTCC_WrEn();
	CALL        _RTCC_WrEn+0, 0
;RTCC.c,27 :: 		RTCEN_bit = 1;
	BSF         RTCEN_bit+0, BitPos(RTCEN_bit+0) 
;RTCC.c,28 :: 		RTCWREN_Bit = 0;
	BCF         RTCWREN_bit+0, BitPos(RTCWREN_bit+0) 
;RTCC.c,29 :: 		}
L_end_RTCC_Init:
	RETURN      0
; end of _RTCC_Init

_RTCC_Read:

;RTCC.c,31 :: 		void RTCC_Read() { //Reads from the RTCC
;RTCC.c,32 :: 		RTCCFG = 0b10000011; //Set RTCPTR to 11
	MOVLW       131
	MOVWF       RTCCFG+0 
;RTCC.c,33 :: 		while (RTCSYNC_bit = 1) {
L_RTCC_Read1:
	BSF         RTCSYNC_bit+0, BitPos(RTCSYNC_bit+0) 
	BTFSS       RTCSYNC_bit+0, BitPos(RTCSYNC_bit+0) 
	GOTO        L_RTCC_Read2
;RTCC.c,35 :: 		}
	GOTO        L_RTCC_Read1
L_RTCC_Read2:
;RTCC.c,36 :: 		dtmRTCC.Year   = Bcd2Dec(RTCVALL);
	MOVF        RTCVALL+0, 0 
	MOVWF       FARG_Bcd2Dec_bcdnum+0 
	CALL        _Bcd2Dec+0, 0
	MOVF        R0, 0 
	MOVWF       _dtmRTCC+0 
;RTCC.c,37 :: 		dtmRTCC.Month  = Bcd2Dec(RTCVALH); //Just to decrement RTCPTR
	MOVF        RTCVALH+0, 0 
	MOVWF       FARG_Bcd2Dec_bcdnum+0 
	CALL        _Bcd2Dec+0, 0
	MOVF        R0, 0 
	MOVWF       _dtmRTCC+1 
;RTCC.c,38 :: 		dtmRTCC.Day    = Bcd2Dec(RTCVALL);
	MOVF        RTCVALL+0, 0 
	MOVWF       FARG_Bcd2Dec_bcdnum+0 
	CALL        _Bcd2Dec+0, 0
	MOVF        R0, 0 
	MOVWF       _dtmRTCC+2 
;RTCC.c,39 :: 		dtmRTCC.Month  = Bcd2Dec(RTCVALH);
	MOVF        RTCVALH+0, 0 
	MOVWF       FARG_Bcd2Dec_bcdnum+0 
	CALL        _Bcd2Dec+0, 0
	MOVF        R0, 0 
	MOVWF       _dtmRTCC+1 
;RTCC.c,40 :: 		dtmRTCC.Hour   = Bcd2Dec(RTCVALL);
	MOVF        RTCVALL+0, 0 
	MOVWF       FARG_Bcd2Dec_bcdnum+0 
	CALL        _Bcd2Dec+0, 0
	MOVF        R0, 0 
	MOVWF       _dtmRTCC+3 
;RTCC.c,41 :: 		bytWkDay  = Bcd2Dec(RTCVALH);
	MOVF        RTCVALH+0, 0 
	MOVWF       FARG_Bcd2Dec_bcdnum+0 
	CALL        _Bcd2Dec+0, 0
	MOVF        R0, 0 
	MOVWF       _bytWkDay+0 
;RTCC.c,42 :: 		dtmRTCC.Second = Bcd2Dec(RTCVALL);
	MOVF        RTCVALL+0, 0 
	MOVWF       FARG_Bcd2Dec_bcdnum+0 
	CALL        _Bcd2Dec+0, 0
	MOVF        R0, 0 
	MOVWF       _dtmRTCC+5 
;RTCC.c,43 :: 		dtmRTCC.Minute = Bcd2Dec(RTCVALH);
	MOVF        RTCVALH+0, 0 
	MOVWF       FARG_Bcd2Dec_bcdnum+0 
	CALL        _Bcd2Dec+0, 0
	MOVF        R0, 0 
	MOVWF       _dtmRTCC+4 
;RTCC.c,44 :: 		}
L_end_RTCC_Read:
	RETURN      0
; end of _RTCC_Read

_RTCC_Write:

;RTCC.c,46 :: 		void RTCC_Write() { //Writes to the RTCC
;RTCC.c,47 :: 		RTCC_CalcWkDay();
	CALL        _RTCC_CalcWkDay+0, 0
;RTCC.c,48 :: 		RTCC_WrEn();
	CALL        _RTCC_WrEn+0, 0
;RTCC.c,49 :: 		RTCCFG = 0b10100011; //Set RTCPTR to 11
	MOVLW       163
	MOVWF       RTCCFG+0 
;RTCC.c,50 :: 		RTCVALL = Dec2Bcd(dtmRTCC.Year);
	MOVF        _dtmRTCC+0, 0 
	MOVWF       FARG_Dec2Bcd_decnum+0 
	CALL        _Dec2Bcd+0, 0
	MOVF        R0, 0 
	MOVWF       RTCVALL+0 
;RTCC.c,51 :: 		RTCVALH = Dec2Bcd(dtmRTCC.Month); //Just to decrement RTCPTR
	MOVF        _dtmRTCC+1, 0 
	MOVWF       FARG_Dec2Bcd_decnum+0 
	CALL        _Dec2Bcd+0, 0
	MOVF        R0, 0 
	MOVWF       RTCVALH+0 
;RTCC.c,52 :: 		RTCVALL = Dec2Bcd(dtmRTCC.Day);
	MOVF        _dtmRTCC+2, 0 
	MOVWF       FARG_Dec2Bcd_decnum+0 
	CALL        _Dec2Bcd+0, 0
	MOVF        R0, 0 
	MOVWF       RTCVALL+0 
;RTCC.c,53 :: 		RTCVALH = Dec2Bcd(dtmRTCC.Month);
	MOVF        _dtmRTCC+1, 0 
	MOVWF       FARG_Dec2Bcd_decnum+0 
	CALL        _Dec2Bcd+0, 0
	MOVF        R0, 0 
	MOVWF       RTCVALH+0 
;RTCC.c,54 :: 		RTCVALL = Dec2Bcd(dtmRTCC.Hour);
	MOVF        _dtmRTCC+3, 0 
	MOVWF       FARG_Dec2Bcd_decnum+0 
	CALL        _Dec2Bcd+0, 0
	MOVF        R0, 0 
	MOVWF       RTCVALL+0 
;RTCC.c,55 :: 		RTCVALH = Dec2Bcd(bytWkDay);
	MOVF        _bytWkDay+0, 0 
	MOVWF       FARG_Dec2Bcd_decnum+0 
	CALL        _Dec2Bcd+0, 0
	MOVF        R0, 0 
	MOVWF       RTCVALH+0 
;RTCC.c,56 :: 		RTCVALL = Dec2Bcd(dtmRTCC.Second);
	MOVF        _dtmRTCC+5, 0 
	MOVWF       FARG_Dec2Bcd_decnum+0 
	CALL        _Dec2Bcd+0, 0
	MOVF        R0, 0 
	MOVWF       RTCVALL+0 
;RTCC.c,57 :: 		RTCVALH = Dec2Bcd(dtmRTCC.Minute);
	MOVF        _dtmRTCC+4, 0 
	MOVWF       FARG_Dec2Bcd_decnum+0 
	CALL        _Dec2Bcd+0, 0
	MOVF        R0, 0 
	MOVWF       RTCVALH+0 
;RTCC.c,58 :: 		RTCWREN_bit = 0;
	BCF         RTCWREN_bit+0, BitPos(RTCWREN_bit+0) 
;RTCC.c,59 :: 		}
L_end_RTCC_Write:
	RETURN      0
; end of _RTCC_Write

_RTCC_GenerateDigits:

;RTCC.c,61 :: 		void RTCC_GenerateDigits(char value, char *pos) {
;RTCC.c,62 :: 		*pos = (value / 10) + 48;
	MOVLW       10
	MOVWF       R4 
	MOVF        FARG_RTCC_GenerateDigits_value+0, 0 
	MOVWF       R0 
	CALL        _Div_8X8_U+0, 0
	MOVFF       FARG_RTCC_GenerateDigits_pos+0, FSR1
	MOVFF       FARG_RTCC_GenerateDigits_pos+1, FSR1H
	MOVLW       48
	ADDWF       R0, 0 
	MOVWF       POSTINC1+0 
;RTCC.c,63 :: 		pos++;
	INFSNZ      FARG_RTCC_GenerateDigits_pos+0, 1 
	INCF        FARG_RTCC_GenerateDigits_pos+1, 1 
;RTCC.c,64 :: 		*pos = (value % 10) + 48;
	MOVLW       10
	MOVWF       R4 
	MOVF        FARG_RTCC_GenerateDigits_value+0, 0 
	MOVWF       R0 
	CALL        _Div_8X8_U+0, 0
	MOVF        R8, 0 
	MOVWF       R0 
	MOVFF       FARG_RTCC_GenerateDigits_pos+0, FSR1
	MOVFF       FARG_RTCC_GenerateDigits_pos+1, FSR1H
	MOVLW       48
	ADDWF       R0, 0 
	MOVWF       POSTINC1+0 
;RTCC.c,65 :: 		}
L_end_RTCC_GenerateDigits:
	RETURN      0
; end of _RTCC_GenerateDigits

_RTCC_GenerateDateStringYMD:

;RTCC.c,67 :: 		void RTCC_GenerateDateStringYMD(TDateTime *dt, char *rtccstring) {
;RTCC.c,70 :: 		char sep = '-';
	MOVLW       45
	MOVWF       RTCC_GenerateDateStringYMD_sep_L0+0 
;RTCC.c,71 :: 		pos = rtccstring;
	MOVF        FARG_RTCC_GenerateDateStringYMD_rtccstring+0, 0 
	MOVWF       RTCC_GenerateDateStringYMD_pos_L0+0 
	MOVF        FARG_RTCC_GenerateDateStringYMD_rtccstring+1, 0 
	MOVWF       RTCC_GenerateDateStringYMD_pos_L0+1 
;RTCC.c,72 :: 		RTCC_GenerateDigits((*dt).Year, pos);
	MOVFF       FARG_RTCC_GenerateDateStringYMD_dt+0, FSR0
	MOVFF       FARG_RTCC_GenerateDateStringYMD_dt+1, FSR0H
	MOVF        POSTINC0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_value+0 
	MOVF        FARG_RTCC_GenerateDateStringYMD_rtccstring+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+0 
	MOVF        FARG_RTCC_GenerateDateStringYMD_rtccstring+1, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+1 
	CALL        _RTCC_GenerateDigits+0, 0
;RTCC.c,73 :: 		pos += 2; *pos = sep; pos++;
	MOVLW       2
	ADDWF       RTCC_GenerateDateStringYMD_pos_L0+0, 0 
	MOVWF       R0 
	MOVLW       0
	ADDWFC      RTCC_GenerateDateStringYMD_pos_L0+1, 0 
	MOVWF       R1 
	MOVF        R0, 0 
	MOVWF       RTCC_GenerateDateStringYMD_pos_L0+0 
	MOVF        R1, 0 
	MOVWF       RTCC_GenerateDateStringYMD_pos_L0+1 
	MOVFF       R0, FSR1
	MOVFF       R1, FSR1H
	MOVF        RTCC_GenerateDateStringYMD_sep_L0+0, 0 
	MOVWF       POSTINC1+0 
	INFSNZ      RTCC_GenerateDateStringYMD_pos_L0+0, 1 
	INCF        RTCC_GenerateDateStringYMD_pos_L0+1, 1 
;RTCC.c,74 :: 		RTCC_GenerateDigits((*dt).Month, pos);
	MOVLW       1
	ADDWF       FARG_RTCC_GenerateDateStringYMD_dt+0, 0 
	MOVWF       FSR0 
	MOVLW       0
	ADDWFC      FARG_RTCC_GenerateDateStringYMD_dt+1, 0 
	MOVWF       FSR0H 
	MOVF        POSTINC0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_value+0 
	MOVF        RTCC_GenerateDateStringYMD_pos_L0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+0 
	MOVF        RTCC_GenerateDateStringYMD_pos_L0+1, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+1 
	CALL        _RTCC_GenerateDigits+0, 0
;RTCC.c,75 :: 		pos += 2; *pos = sep; pos++;
	MOVLW       2
	ADDWF       RTCC_GenerateDateStringYMD_pos_L0+0, 0 
	MOVWF       R0 
	MOVLW       0
	ADDWFC      RTCC_GenerateDateStringYMD_pos_L0+1, 0 
	MOVWF       R1 
	MOVF        R0, 0 
	MOVWF       RTCC_GenerateDateStringYMD_pos_L0+0 
	MOVF        R1, 0 
	MOVWF       RTCC_GenerateDateStringYMD_pos_L0+1 
	MOVFF       R0, FSR1
	MOVFF       R1, FSR1H
	MOVF        RTCC_GenerateDateStringYMD_sep_L0+0, 0 
	MOVWF       POSTINC1+0 
	INFSNZ      RTCC_GenerateDateStringYMD_pos_L0+0, 1 
	INCF        RTCC_GenerateDateStringYMD_pos_L0+1, 1 
;RTCC.c,76 :: 		RTCC_GenerateDigits((*dt).Day, pos);
	MOVLW       2
	ADDWF       FARG_RTCC_GenerateDateStringYMD_dt+0, 0 
	MOVWF       FSR0 
	MOVLW       0
	ADDWFC      FARG_RTCC_GenerateDateStringYMD_dt+1, 0 
	MOVWF       FSR0H 
	MOVF        POSTINC0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_value+0 
	MOVF        RTCC_GenerateDateStringYMD_pos_L0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+0 
	MOVF        RTCC_GenerateDateStringYMD_pos_L0+1, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+1 
	CALL        _RTCC_GenerateDigits+0, 0
;RTCC.c,77 :: 		pos += 2;
	MOVLW       2
	ADDWF       RTCC_GenerateDateStringYMD_pos_L0+0, 0 
	MOVWF       R0 
	MOVLW       0
	ADDWFC      RTCC_GenerateDateStringYMD_pos_L0+1, 0 
	MOVWF       R1 
	MOVF        R0, 0 
	MOVWF       RTCC_GenerateDateStringYMD_pos_L0+0 
	MOVF        R1, 0 
	MOVWF       RTCC_GenerateDateStringYMD_pos_L0+1 
;RTCC.c,78 :: 		*pos = 0;
	MOVFF       R0, FSR1
	MOVFF       R1, FSR1H
	CLRF        POSTINC1+0 
;RTCC.c,79 :: 		}
L_end_RTCC_GenerateDateStringYMD:
	RETURN      0
; end of _RTCC_GenerateDateStringYMD

_RTCC_GenerateDateStringDMY:

;RTCC.c,81 :: 		void RTCC_GenerateDateStringDMY(TDateTime *dt, char *rtccstring) {
;RTCC.c,84 :: 		char sep = '/';
	MOVLW       47
	MOVWF       RTCC_GenerateDateStringDMY_sep_L0+0 
;RTCC.c,85 :: 		pos = rtccstring;
	MOVF        FARG_RTCC_GenerateDateStringDMY_rtccstring+0, 0 
	MOVWF       RTCC_GenerateDateStringDMY_pos_L0+0 
	MOVF        FARG_RTCC_GenerateDateStringDMY_rtccstring+1, 0 
	MOVWF       RTCC_GenerateDateStringDMY_pos_L0+1 
;RTCC.c,86 :: 		RTCC_GenerateDigits((*dt).Day, pos);
	MOVLW       2
	ADDWF       FARG_RTCC_GenerateDateStringDMY_dt+0, 0 
	MOVWF       FSR0 
	MOVLW       0
	ADDWFC      FARG_RTCC_GenerateDateStringDMY_dt+1, 0 
	MOVWF       FSR0H 
	MOVF        POSTINC0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_value+0 
	MOVF        FARG_RTCC_GenerateDateStringDMY_rtccstring+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+0 
	MOVF        FARG_RTCC_GenerateDateStringDMY_rtccstring+1, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+1 
	CALL        _RTCC_GenerateDigits+0, 0
;RTCC.c,87 :: 		pos += 2; *pos = sep; pos++;
	MOVLW       2
	ADDWF       RTCC_GenerateDateStringDMY_pos_L0+0, 0 
	MOVWF       R0 
	MOVLW       0
	ADDWFC      RTCC_GenerateDateStringDMY_pos_L0+1, 0 
	MOVWF       R1 
	MOVF        R0, 0 
	MOVWF       RTCC_GenerateDateStringDMY_pos_L0+0 
	MOVF        R1, 0 
	MOVWF       RTCC_GenerateDateStringDMY_pos_L0+1 
	MOVFF       R0, FSR1
	MOVFF       R1, FSR1H
	MOVF        RTCC_GenerateDateStringDMY_sep_L0+0, 0 
	MOVWF       POSTINC1+0 
	INFSNZ      RTCC_GenerateDateStringDMY_pos_L0+0, 1 
	INCF        RTCC_GenerateDateStringDMY_pos_L0+1, 1 
;RTCC.c,88 :: 		RTCC_GenerateDigits((*dt).Month, pos);
	MOVLW       1
	ADDWF       FARG_RTCC_GenerateDateStringDMY_dt+0, 0 
	MOVWF       FSR0 
	MOVLW       0
	ADDWFC      FARG_RTCC_GenerateDateStringDMY_dt+1, 0 
	MOVWF       FSR0H 
	MOVF        POSTINC0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_value+0 
	MOVF        RTCC_GenerateDateStringDMY_pos_L0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+0 
	MOVF        RTCC_GenerateDateStringDMY_pos_L0+1, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+1 
	CALL        _RTCC_GenerateDigits+0, 0
;RTCC.c,89 :: 		pos += 2; *pos = sep; pos++;
	MOVLW       2
	ADDWF       RTCC_GenerateDateStringDMY_pos_L0+0, 0 
	MOVWF       R0 
	MOVLW       0
	ADDWFC      RTCC_GenerateDateStringDMY_pos_L0+1, 0 
	MOVWF       R1 
	MOVF        R0, 0 
	MOVWF       RTCC_GenerateDateStringDMY_pos_L0+0 
	MOVF        R1, 0 
	MOVWF       RTCC_GenerateDateStringDMY_pos_L0+1 
	MOVFF       R0, FSR1
	MOVFF       R1, FSR1H
	MOVF        RTCC_GenerateDateStringDMY_sep_L0+0, 0 
	MOVWF       POSTINC1+0 
	INFSNZ      RTCC_GenerateDateStringDMY_pos_L0+0, 1 
	INCF        RTCC_GenerateDateStringDMY_pos_L0+1, 1 
;RTCC.c,90 :: 		*pos = '2'; pos++;
	MOVFF       RTCC_GenerateDateStringDMY_pos_L0+0, FSR1
	MOVFF       RTCC_GenerateDateStringDMY_pos_L0+1, FSR1H
	MOVLW       50
	MOVWF       POSTINC1+0 
	INFSNZ      RTCC_GenerateDateStringDMY_pos_L0+0, 1 
	INCF        RTCC_GenerateDateStringDMY_pos_L0+1, 1 
;RTCC.c,91 :: 		*pos = '0'; pos++;
	MOVFF       RTCC_GenerateDateStringDMY_pos_L0+0, FSR1
	MOVFF       RTCC_GenerateDateStringDMY_pos_L0+1, FSR1H
	MOVLW       48
	MOVWF       POSTINC1+0 
	INFSNZ      RTCC_GenerateDateStringDMY_pos_L0+0, 1 
	INCF        RTCC_GenerateDateStringDMY_pos_L0+1, 1 
;RTCC.c,92 :: 		RTCC_GenerateDigits((*dt).Year, pos);
	MOVFF       FARG_RTCC_GenerateDateStringDMY_dt+0, FSR0
	MOVFF       FARG_RTCC_GenerateDateStringDMY_dt+1, FSR0H
	MOVF        POSTINC0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_value+0 
	MOVF        RTCC_GenerateDateStringDMY_pos_L0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+0 
	MOVF        RTCC_GenerateDateStringDMY_pos_L0+1, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+1 
	CALL        _RTCC_GenerateDigits+0, 0
;RTCC.c,93 :: 		pos += 2;
	MOVLW       2
	ADDWF       RTCC_GenerateDateStringDMY_pos_L0+0, 0 
	MOVWF       R0 
	MOVLW       0
	ADDWFC      RTCC_GenerateDateStringDMY_pos_L0+1, 0 
	MOVWF       R1 
	MOVF        R0, 0 
	MOVWF       RTCC_GenerateDateStringDMY_pos_L0+0 
	MOVF        R1, 0 
	MOVWF       RTCC_GenerateDateStringDMY_pos_L0+1 
;RTCC.c,94 :: 		*pos = 0;
	MOVFF       R0, FSR1
	MOVFF       R1, FSR1H
	CLRF        POSTINC1+0 
;RTCC.c,95 :: 		}
L_end_RTCC_GenerateDateStringDMY:
	RETURN      0
; end of _RTCC_GenerateDateStringDMY

_RTCC_GenerateTimeString:

;RTCC.c,97 :: 		void RTCC_GenerateTimeString(TDateTime *dt, char *rtccstring, char incl_sec) {
;RTCC.c,100 :: 		pos = rtccstring;
	MOVF        FARG_RTCC_GenerateTimeString_rtccstring+0, 0 
	MOVWF       RTCC_GenerateTimeString_pos_L0+0 
	MOVF        FARG_RTCC_GenerateTimeString_rtccstring+1, 0 
	MOVWF       RTCC_GenerateTimeString_pos_L0+1 
;RTCC.c,101 :: 		RTCC_GenerateDigits((*dt).Hour, pos);
	MOVLW       3
	ADDWF       FARG_RTCC_GenerateTimeString_dt+0, 0 
	MOVWF       FSR0 
	MOVLW       0
	ADDWFC      FARG_RTCC_GenerateTimeString_dt+1, 0 
	MOVWF       FSR0H 
	MOVF        POSTINC0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_value+0 
	MOVF        FARG_RTCC_GenerateTimeString_rtccstring+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+0 
	MOVF        FARG_RTCC_GenerateTimeString_rtccstring+1, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+1 
	CALL        _RTCC_GenerateDigits+0, 0
;RTCC.c,102 :: 		pos += 2; *pos = ':'; pos++;
	MOVLW       2
	ADDWF       RTCC_GenerateTimeString_pos_L0+0, 0 
	MOVWF       R0 
	MOVLW       0
	ADDWFC      RTCC_GenerateTimeString_pos_L0+1, 0 
	MOVWF       R1 
	MOVF        R0, 0 
	MOVWF       RTCC_GenerateTimeString_pos_L0+0 
	MOVF        R1, 0 
	MOVWF       RTCC_GenerateTimeString_pos_L0+1 
	MOVFF       R0, FSR1
	MOVFF       R1, FSR1H
	MOVLW       58
	MOVWF       POSTINC1+0 
	INFSNZ      RTCC_GenerateTimeString_pos_L0+0, 1 
	INCF        RTCC_GenerateTimeString_pos_L0+1, 1 
;RTCC.c,103 :: 		RTCC_GenerateDigits((*dt).Minute, pos);
	MOVLW       4
	ADDWF       FARG_RTCC_GenerateTimeString_dt+0, 0 
	MOVWF       FSR0 
	MOVLW       0
	ADDWFC      FARG_RTCC_GenerateTimeString_dt+1, 0 
	MOVWF       FSR0H 
	MOVF        POSTINC0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_value+0 
	MOVF        RTCC_GenerateTimeString_pos_L0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+0 
	MOVF        RTCC_GenerateTimeString_pos_L0+1, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+1 
	CALL        _RTCC_GenerateDigits+0, 0
;RTCC.c,104 :: 		if (incl_sec) {
	MOVF        FARG_RTCC_GenerateTimeString_incl_sec+0, 1 
	BTFSC       STATUS+0, 2 
	GOTO        L_RTCC_GenerateTimeString3
;RTCC.c,105 :: 		pos += 2; *pos = ':'; pos++;
	MOVLW       2
	ADDWF       RTCC_GenerateTimeString_pos_L0+0, 0 
	MOVWF       R0 
	MOVLW       0
	ADDWFC      RTCC_GenerateTimeString_pos_L0+1, 0 
	MOVWF       R1 
	MOVF        R0, 0 
	MOVWF       RTCC_GenerateTimeString_pos_L0+0 
	MOVF        R1, 0 
	MOVWF       RTCC_GenerateTimeString_pos_L0+1 
	MOVFF       R0, FSR1
	MOVFF       R1, FSR1H
	MOVLW       58
	MOVWF       POSTINC1+0 
	INFSNZ      RTCC_GenerateTimeString_pos_L0+0, 1 
	INCF        RTCC_GenerateTimeString_pos_L0+1, 1 
;RTCC.c,106 :: 		RTCC_GenerateDigits((*dt).Second, pos);
	MOVLW       5
	ADDWF       FARG_RTCC_GenerateTimeString_dt+0, 0 
	MOVWF       FSR0 
	MOVLW       0
	ADDWFC      FARG_RTCC_GenerateTimeString_dt+1, 0 
	MOVWF       FSR0H 
	MOVF        POSTINC0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_value+0 
	MOVF        RTCC_GenerateTimeString_pos_L0+0, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+0 
	MOVF        RTCC_GenerateTimeString_pos_L0+1, 0 
	MOVWF       FARG_RTCC_GenerateDigits_pos+1 
	CALL        _RTCC_GenerateDigits+0, 0
;RTCC.c,107 :: 		}
L_RTCC_GenerateTimeString3:
;RTCC.c,108 :: 		pos += 2;
	MOVLW       2
	ADDWF       RTCC_GenerateTimeString_pos_L0+0, 0 
	MOVWF       R0 
	MOVLW       0
	ADDWFC      RTCC_GenerateTimeString_pos_L0+1, 0 
	MOVWF       R1 
	MOVF        R0, 0 
	MOVWF       RTCC_GenerateTimeString_pos_L0+0 
	MOVF        R1, 0 
	MOVWF       RTCC_GenerateTimeString_pos_L0+1 
;RTCC.c,109 :: 		*pos = 0;
	MOVFF       R0, FSR1
	MOVFF       R1, FSR1H
	CLRF        POSTINC1+0 
;RTCC.c,110 :: 		}
L_end_RTCC_GenerateTimeString:
	RETURN      0
; end of _RTCC_GenerateTimeString

_RTCC_GenerateString:

;RTCC.c,112 :: 		void RTCC_GenerateString(TDateTime *dt, char *rtccstring) {
;RTCC.c,113 :: 		RTCC_GenerateDateStringDMY(dt, rtccstring);
	MOVF        FARG_RTCC_GenerateString_dt+0, 0 
	MOVWF       FARG_RTCC_GenerateDateStringDMY_dt+0 
	MOVF        FARG_RTCC_GenerateString_dt+1, 0 
	MOVWF       FARG_RTCC_GenerateDateStringDMY_dt+1 
	MOVF        FARG_RTCC_GenerateString_rtccstring+0, 0 
	MOVWF       FARG_RTCC_GenerateDateStringDMY_rtccstring+0 
	MOVF        FARG_RTCC_GenerateString_rtccstring+1, 0 
	MOVWF       FARG_RTCC_GenerateDateStringDMY_rtccstring+1 
	CALL        _RTCC_GenerateDateStringDMY+0, 0
;RTCC.c,114 :: 		rtccstring[10] = ' ';
	MOVLW       10
	ADDWF       FARG_RTCC_GenerateString_rtccstring+0, 0 
	MOVWF       FSR1 
	MOVLW       0
	ADDWFC      FARG_RTCC_GenerateString_rtccstring+1, 0 
	MOVWF       FSR1H 
	MOVLW       32
	MOVWF       POSTINC1+0 
;RTCC.c,115 :: 		RTCC_GenerateTimeString(dt, rtccstring + 11, 0);
	MOVF        FARG_RTCC_GenerateString_dt+0, 0 
	MOVWF       FARG_RTCC_GenerateTimeString_dt+0 
	MOVF        FARG_RTCC_GenerateString_dt+1, 0 
	MOVWF       FARG_RTCC_GenerateTimeString_dt+1 
	MOVLW       11
	ADDWF       FARG_RTCC_GenerateString_rtccstring+0, 0 
	MOVWF       FARG_RTCC_GenerateTimeString_rtccstring+0 
	MOVLW       0
	ADDWFC      FARG_RTCC_GenerateString_rtccstring+1, 0 
	MOVWF       FARG_RTCC_GenerateTimeString_rtccstring+1 
	CLRF        FARG_RTCC_GenerateTimeString_incl_sec+0 
	CALL        _RTCC_GenerateTimeString+0, 0
;RTCC.c,116 :: 		}
L_end_RTCC_GenerateString:
	RETURN      0
; end of _RTCC_GenerateString
