_Timer1Interrupt:
;GSM_EasyPIC_Fusion_v7.c,91 :: 		void Timer1Interrupt() iv IVT_TIMER_1 ilevel 7 ics ICS_SRS {
RDPGPR	SP, SP
ADDIU	SP, SP, -12
MFC0	R30, 12, 2
SW	R30, 8(SP)
MFC0	R30, 14, 0
SW	R30, 4(SP)
MFC0	R30, 12, 0
SW	R30, 0(SP)
INS	R30, R0, 1, 15
ORI	R30, R0, 7168
MTC0	R30, 12, 0
ADDIU	SP, SP, -4
SW	RA, 0(SP)
;GSM_EasyPIC_Fusion_v7.c,96 :: 		gsm1msPing();
JAL	_gsm1msPing+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,97 :: 		if (wrdRG7Tmr < 65535) {wrdRG7Tmr++;}
LHU	R3, Offset(_wrdRG7Tmr+0)(GP)
ORI	R2, R0, 65535
SLTU	R2, R3, R2
BNE	R2, R0, L__Timer1Interrupt42
NOP	
J	L_Timer1Interrupt0
NOP	
L__Timer1Interrupt42:
LHU	R2, Offset(_wrdRG7Tmr+0)(GP)
ADDIU	R2, R2, 1
SH	R2, Offset(_wrdRG7Tmr+0)(GP)
L_Timer1Interrupt0:
;GSM_EasyPIC_Fusion_v7.c,98 :: 		T1IF_bit         = 0;
LUI	R2, BitMask(T1IF_bit+0)
ORI	R2, R2, BitMask(T1IF_bit+0)
_SX	
;GSM_EasyPIC_Fusion_v7.c,99 :: 		}
L_end_Timer1Interrupt:
LW	RA, 0(SP)
ADDIU	SP, SP, 4
DI	
EHB	
LW	R30, 8(SP)
MTC0	R30, 12, 2
LW	R30, 4(SP)
MTC0	R30, 14, 0
LW	R30, 0(SP)
MTC0	R30, 12, 0
ADDIU	SP, SP, 12
WRPGPR	SP, SP
ERET	
; end of _Timer1Interrupt
_USB1Interrupt:
;GSM_EasyPIC_Fusion_v7.c,102 :: 		void USB1Interrupt() iv IVT_USB_1 ilevel 7 ics ICS_SRS {
RDPGPR	SP, SP
ADDIU	SP, SP, -12
MFC0	R30, 12, 2
SW	R30, 8(SP)
MFC0	R30, 14, 0
SW	R30, 4(SP)
MFC0	R30, 12, 0
SW	R30, 0(SP)
INS	R30, R0, 1, 15
ORI	R30, R0, 7168
MTC0	R30, 12, 0
ADDIU	SP, SP, -4
SW	RA, 0(SP)
;GSM_EasyPIC_Fusion_v7.c,103 :: 		USB_Interrupt_Proc();
JAL	_USB_Interrupt_Proc+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,104 :: 		}
L_end_USB1Interrupt:
LW	RA, 0(SP)
ADDIU	SP, SP, 4
DI	
EHB	
LW	R30, 8(SP)
MTC0	R30, 12, 2
LW	R30, 4(SP)
MTC0	R30, 14, 0
LW	R30, 0(SP)
MTC0	R30, 12, 0
ADDIU	SP, SP, 12
WRPGPR	SP, SP
ERET	
; end of _USB1Interrupt
_Timer1Init:
;GSM_EasyPIC_Fusion_v7.c,107 :: 		void Timer1Init(){
;GSM_EasyPIC_Fusion_v7.c,109 :: 		T1CON         = 0x8010;
ORI	R2, R0, 32784
SW	R2, Offset(T1CON+0)(GP)
;GSM_EasyPIC_Fusion_v7.c,110 :: 		T1IE_bit      = 1;
LUI	R2, BitMask(T1IE_bit+0)
ORI	R2, R2, BitMask(T1IE_bit+0)
_SX	
;GSM_EasyPIC_Fusion_v7.c,111 :: 		T1IF_bit      = 0;
LUI	R2, BitMask(T1IF_bit+0)
ORI	R2, R2, BitMask(T1IF_bit+0)
_SX	
;GSM_EasyPIC_Fusion_v7.c,112 :: 		T1IP0_bit     = 1;
LUI	R2, BitMask(T1IP0_bit+0)
ORI	R2, R2, BitMask(T1IP0_bit+0)
_SX	
;GSM_EasyPIC_Fusion_v7.c,113 :: 		T1IP1_bit     = 1;
LUI	R2, BitMask(T1IP1_bit+0)
ORI	R2, R2, BitMask(T1IP1_bit+0)
_SX	
;GSM_EasyPIC_Fusion_v7.c,114 :: 		T1IP2_bit     = 1;
LUI	R2, BitMask(T1IP2_bit+0)
ORI	R2, R2, BitMask(T1IP2_bit+0)
_SX	
;GSM_EasyPIC_Fusion_v7.c,115 :: 		PR1           = 10000;
ORI	R2, R0, 10000
SW	R2, Offset(PR1+0)(GP)
;GSM_EasyPIC_Fusion_v7.c,116 :: 		TMR1          = 0;
SW	R0, Offset(TMR1+0)(GP)
;GSM_EasyPIC_Fusion_v7.c,117 :: 		}
L_end_Timer1Init:
JR	RA
NOP	
; end of _Timer1Init
_setup:
;GSM_EasyPIC_Fusion_v7.c,119 :: 		void setup() {
ADDIU	SP, SP, -4
SW	RA, 0(SP)
;GSM_EasyPIC_Fusion_v7.c,120 :: 		TRISD = 0x0000; //PortD all outputs
SW	R0, Offset(TRISD+0)(GP)
;GSM_EasyPIC_Fusion_v7.c,121 :: 		LATD  = 0x0000; //PortD all off by default
SW	R0, Offset(LATD+0)(GP)
;GSM_EasyPIC_Fusion_v7.c,122 :: 		GSM_Pwr_Key_Dir = 0;
LUI	R2, BitMask(TRISC1_bit+0)
ORI	R2, R2, BitMask(TRISC1_bit+0)
_SX	
;GSM_EasyPIC_Fusion_v7.c,123 :: 		GSM_Stat_Dir = 1;
LUI	R2, BitMask(TRISB8_bit+0)
ORI	R2, R2, BitMask(TRISB8_bit+0)
_SX	
;GSM_EasyPIC_Fusion_v7.c,124 :: 		AD1PCFG = 0xFFFF;   //Configure AN pins as digital I/O
ORI	R2, R0, 65535
SW	R2, Offset(AD1PCFG+0)(GP)
;GSM_EasyPIC_Fusion_v7.c,125 :: 		JTAGEN_bit = 0;     // Disable JTAG
_LX	
INS	R2, R0, BitPos(JTAGEN_bit+0), 1
_SX	
;GSM_EasyPIC_Fusion_v7.c,126 :: 		TRISG7_bit = 1;     //RG7 input
LUI	R2, BitMask(TRISG7_bit+0)
ORI	R2, R2, BitMask(TRISG7_bit+0)
_SX	
;GSM_EasyPIC_Fusion_v7.c,127 :: 		CNPUE9_bit = 1;     //RG7 Weak Pull-Up Enabled
LUI	R2, BitMask(CNPUE9_bit+0)
ORI	R2, R2, BitMask(CNPUE9_bit+0)
_SX	
;GSM_EasyPIC_Fusion_v7.c,128 :: 		Timer1Init();
JAL	_Timer1Init+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,130 :: 		USBIE_bit = 0;
LUI	R2, BitMask(USBIE_bit+0)
ORI	R2, R2, BitMask(USBIE_bit+0)
_SX	
;GSM_EasyPIC_Fusion_v7.c,131 :: 		IPC11bits.USBIP = 7;
ORI	R2, R0, 7168
SH	R2, Offset(IPC11bits+8)(GP)
;GSM_EasyPIC_Fusion_v7.c,133 :: 		EnableInterrupts();
EI	R30
;GSM_EasyPIC_Fusion_v7.c,134 :: 		}
L_end_setup:
LW	RA, 0(SP)
ADDIU	SP, SP, 4
JR	RA
NOP	
; end of _setup
_startup:
;GSM_EasyPIC_Fusion_v7.c,136 :: 		void startup() {
ADDIU	SP, SP, -4
SW	RA, 0(SP)
;GSM_EasyPIC_Fusion_v7.c,137 :: 		bitRTCC_Set = 0;
LBU	R2, Offset(_bitRTCC_Set+0)(GP)
INS	R2, R0, BitPos(_bitRTCC_Set+0), 1
SB	R2, Offset(_bitRTCC_Set+0)(GP)
;GSM_EasyPIC_Fusion_v7.c,138 :: 		UART2_Init(9600); // For GSM Module
ORI	R25, R0, 9600
JAL	_UART2_Init+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,139 :: 		gsmInit();
JAL	_gsmInit+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,140 :: 		gsm_MS_Init();
JAL	_gsm_MS_Init+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,141 :: 		gsm_Msg_Init(); // Requires GSM_Msg module
JAL	_gsm_Msg_Init+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,143 :: 		HID_Enable(&USBin, &USBout);
LUI	R26, hi_addr(_USBout+0)
ORI	R26, R26, lo_addr(_USBout+0)
LUI	R25, hi_addr(_USBin+0)
ORI	R25, R25, lo_addr(_USBin+0)
JAL	_HID_Enable+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,145 :: 		}
L_end_startup:
LW	RA, 0(SP)
ADDIU	SP, SP, 4
JR	RA
NOP	
; end of _startup
_UIntToBin:
;GSM_EasyPIC_Fusion_v7.c,147 :: 		void UIntToBin(char input, char *output) { // Convert an unsigned integer to a binary string
ADDIU	SP, SP, -4
;GSM_EasyPIC_Fusion_v7.c,149 :: 		for (mask = 0b1000000000000000; mask != 0; mask = mask >> 1) {
ORI	R2, R0, 32768
SH	R2, 0(SP)
L_UIntToBin1:
LHU	R2, 0(SP)
BNE	R2, R0, L__UIntToBin49
NOP	
J	L_UIntToBin2
NOP	
L__UIntToBin49:
;GSM_EasyPIC_Fusion_v7.c,150 :: 		if (input & mask) *output = '1'; else *output = '0';
LHU	R3, 0(SP)
LBU	R2, 4(SP)
AND	R2, R2, R3
BNE	R2, R0, L__UIntToBin51
NOP	
J	L_UIntToBin4
NOP	
L__UIntToBin51:
ORI	R3, R0, 49
LW	R2, 8(SP)
SB	R3, 0(R2)
J	L_UIntToBin5
NOP	
L_UIntToBin4:
ORI	R3, R0, 48
LW	R2, 8(SP)
SB	R3, 0(R2)
L_UIntToBin5:
;GSM_EasyPIC_Fusion_v7.c,151 :: 		output++;
LW	R2, 8(SP)
ADDIU	R2, R2, 1
SW	R2, 8(SP)
;GSM_EasyPIC_Fusion_v7.c,149 :: 		for (mask = 0b1000000000000000; mask != 0; mask = mask >> 1) {
LHU	R2, 0(SP)
SRL	R2, R2, 1
SH	R2, 0(SP)
;GSM_EasyPIC_Fusion_v7.c,152 :: 		}
J	L_UIntToBin1
NOP	
L_UIntToBin2:
;GSM_EasyPIC_Fusion_v7.c,153 :: 		*output = 0; // Mark the end of the string
LW	R2, 8(SP)
SB	R0, 0(R2)
;GSM_EasyPIC_Fusion_v7.c,154 :: 		}
L_end_UIntToBin:
ADDIU	SP, SP, 4
JR	RA
NOP	
; end of _UIntToBin
_generateStatusReport:
;GSM_EasyPIC_Fusion_v7.c,156 :: 		void generateStatusReport(char *dest) { // Generate a string indicating the
ADDIU	SP, SP, -4
SW	RA, 0(SP)
;GSM_EasyPIC_Fusion_v7.c,158 :: 		strcpy(dest, "PORTA:");
LUI	R26, hi_addr(?lstr1_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr1_GSM_EasyPIC_Fusion_v7+0)
LW	R25, 4(SP)
JAL	_strcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,159 :: 		dest += 6;
LW	R2, 4(SP)
ADDIU	R2, R2, 6
SW	R2, 4(SP)
;GSM_EasyPIC_Fusion_v7.c,160 :: 		UIntToBin(PORTA, dest);
ADDIU	SP, SP, -8
SW	R2, 4(SP)
LW	R2, Offset(PORTA+0)(GP)
SB	R2, 0(SP)
JAL	_UIntToBin+0
NOP	
ADDIU	SP, SP, 8
;GSM_EasyPIC_Fusion_v7.c,161 :: 		dest += 16;
LW	R2, 4(SP)
ADDIU	R3, R2, 16
SW	R3, 4(SP)
;GSM_EasyPIC_Fusion_v7.c,162 :: 		*dest++ = ',';
ORI	R2, R0, 44
SB	R2, 0(R3)
LW	R2, 4(SP)
ADDIU	R2, R2, 1
SW	R2, 4(SP)
;GSM_EasyPIC_Fusion_v7.c,163 :: 		strcpy(dest, "LATD:");
LUI	R26, hi_addr(?lstr2_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr2_GSM_EasyPIC_Fusion_v7+0)
MOVZ	R25, R2, R0
JAL	_strcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,164 :: 		dest += 5;
LW	R2, 4(SP)
ADDIU	R2, R2, 5
SW	R2, 4(SP)
;GSM_EasyPIC_Fusion_v7.c,165 :: 		UIntToBin(LATD, dest);
ADDIU	SP, SP, -8
SW	R2, 4(SP)
LW	R2, Offset(LATD+0)(GP)
SB	R2, 0(SP)
JAL	_UIntToBin+0
NOP	
ADDIU	SP, SP, 8
;GSM_EasyPIC_Fusion_v7.c,166 :: 		}
L_end_generateStatusReport:
LW	RA, 0(SP)
ADDIU	SP, SP, 4
JR	RA
NOP	
; end of _generateStatusReport
_msgSend:
;GSM_EasyPIC_Fusion_v7.c,168 :: 		void msgSend() {
ADDIU	SP, SP, -4
SW	RA, 0(SP)
;GSM_EasyPIC_Fusion_v7.c,170 :: 		strcpy(&USBout, "Sending message to ");
LUI	R26, hi_addr(?lstr3_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr3_GSM_EasyPIC_Fusion_v7+0)
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_strcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,171 :: 		strcat(&USBout, &strDestID);
LUI	R26, hi_addr(_strDestID+0)
ORI	R26, R26, lo_addr(_strDestID+0)
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_strcat+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,172 :: 		strcat(&USBout, ":\r\n");
LUI	R26, hi_addr(?lstr4_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr4_GSM_EasyPIC_Fusion_v7+0)
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_strcat+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,173 :: 		HID_Write(&USBout, 64);
ORI	R26, R0, 64
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_HID_Write+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,174 :: 		strncpyExNewLine(&USBout, &strMsgSendTxt, 64);
ORI	R2, R0, 64
ADDIU	SP, SP, -12
SB	R2, 8(SP)
LUI	R2, hi_addr(_strMsgSendTxt+0)
ORI	R2, R2, lo_addr(_strMsgSendTxt+0)
SW	R2, 4(SP)
LUI	R2, hi_addr(_USBout+0)
ORI	R2, R2, lo_addr(_USBout+0)
SW	R2, 0(SP)
JAL	_strncpyExNewLine+0
NOP	
ADDIU	SP, SP, 12
;GSM_EasyPIC_Fusion_v7.c,175 :: 		HID_Write(&USBout, 64);
ORI	R26, R0, 64
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_HID_Write+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,177 :: 		if (strDestID[0] != 0) {
LBU	R2, Offset(_strDestID+0)(GP)
BNE	R2, R0, L__msgSend55
NOP	
J	L_msgSend6
NOP	
L__msgSend55:
;GSM_EasyPIC_Fusion_v7.c,178 :: 		if (gsmMsgSendPending()) {gsmMsgSendCancel();} // Cancel any message waiting to be sent
JAL	_gsmMsgSendPending+0
NOP	
BNE	R2, R0, L__msgSend57
NOP	
J	L_msgSend7
NOP	
L__msgSend57:
JAL	_gsmMsgSendCancel+0
NOP	
L_msgSend7:
;GSM_EasyPIC_Fusion_v7.c,179 :: 		gsmMsgSend(&strMsgSendTxt, &strDestID); // Send the message
LUI	R2, hi_addr(_strDestID+0)
ORI	R2, R2, lo_addr(_strDestID+0)
ADDIU	SP, SP, -8
SW	R2, 4(SP)
LUI	R2, hi_addr(_strMsgSendTxt+0)
ORI	R2, R2, lo_addr(_strMsgSendTxt+0)
SW	R2, 0(SP)
JAL	_gsmMsgSend+0
NOP	
ADDIU	SP, SP, 8
;GSM_EasyPIC_Fusion_v7.c,180 :: 		}
L_msgSend6:
;GSM_EasyPIC_Fusion_v7.c,181 :: 		}
L_end_msgSend:
LW	RA, 0(SP)
ADDIU	SP, SP, 4
JR	RA
NOP	
; end of _msgSend
_gsmMissedCall:
;GSM_EasyPIC_Fusion_v7.c,183 :: 		void gsmMissedCall(char *OriginatorID) {
ADDIU	SP, SP, -4
SW	RA, 0(SP)
;GSM_EasyPIC_Fusion_v7.c,184 :: 		LATD0_bit = !LATD0_bit; // Toggle PortD.0
_LX	
EXT	R2, R2, BitPos(LATD0_bit+0), 1
XORI	R3, R2, 1
_LX	
INS	R2, R3, BitPos(LATD0_bit+0), 1
_SX	
;GSM_EasyPIC_Fusion_v7.c,185 :: 		if (strDestID[0] == 0) { // If destination ID has not yet been set
LBU	R2, Offset(_strDestID+0)(GP)
BEQ	R2, R0, L__gsmMissedCall59
NOP	
J	L_gsmMissedCall8
NOP	
L__gsmMissedCall59:
;GSM_EasyPIC_Fusion_v7.c,187 :: 		strcpy(&strDestID, OriginatorID);
LW	R26, 4(SP)
LUI	R25, hi_addr(_strDestID+0)
ORI	R25, R25, lo_addr(_strDestID+0)
JAL	_strcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,188 :: 		}
L_gsmMissedCall8:
;GSM_EasyPIC_Fusion_v7.c,189 :: 		}
L_end_gsmMissedCall:
LW	RA, 0(SP)
ADDIU	SP, SP, 4
JR	RA
NOP	
; end of _gsmMissedCall
_gsmMsgRcvd:
;GSM_EasyPIC_Fusion_v7.c,191 :: 		void gsmMsgRcvd(char *MessageText, char *OriginatorID) {
ADDIU	SP, SP, -4
SW	RA, 0(SP)
;GSM_EasyPIC_Fusion_v7.c,192 :: 		if (strDestID[0] == 0) { // If destination ID has not yet been set
LBU	R2, Offset(_strDestID+0)(GP)
BEQ	R2, R0, L__gsmMsgRcvd61
NOP	
J	L_gsmMsgRcvd9
NOP	
L__gsmMsgRcvd61:
;GSM_EasyPIC_Fusion_v7.c,194 :: 		strcpy(&strDestID, OriginatorID);
LW	R26, 8(SP)
LUI	R25, hi_addr(_strDestID+0)
ORI	R25, R25, lo_addr(_strDestID+0)
JAL	_strcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,195 :: 		}
L_gsmMsgRcvd9:
;GSM_EasyPIC_Fusion_v7.c,196 :: 		if (gsmMsgJustArrived() == 1) {
JAL	_gsmMsgJustArrived+0
NOP	
ANDI	R3, R2, 255
ORI	R2, R0, 1
BEQ	R3, R2, L__gsmMsgRcvd62
NOP	
J	L_gsmMsgRcvd10
NOP	
L__gsmMsgRcvd62:
;GSM_EasyPIC_Fusion_v7.c,199 :: 		if (!bitRTCC_Set) {
LBU	R2, Offset(_bitRTCC_Set+0)(GP)
EXT	R2, R2, BitPos(_bitRTCC_Set+0), 1
BEQ	R2, R0, L__gsmMsgRcvd63
NOP	
J	L_gsmMsgRcvd11
NOP	
L__gsmMsgRcvd63:
;GSM_EasyPIC_Fusion_v7.c,200 :: 		memcpy(&dtmRTCC, &dtmGsmEvent, 6);
ORI	R27, R0, 6
LUI	R26, hi_addr(_dtmGsmEvent+0)
ORI	R26, R26, lo_addr(_dtmGsmEvent+0)
LUI	R25, hi_addr(_dtmRTCC+0)
ORI	R25, R25, lo_addr(_dtmRTCC+0)
JAL	_memcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,202 :: 		gsmDateTimeWrite();
JAL	_gsmDateTimeWrite+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,203 :: 		}
L_gsmMsgRcvd11:
;GSM_EasyPIC_Fusion_v7.c,204 :: 		}
L_gsmMsgRcvd10:
;GSM_EasyPIC_Fusion_v7.c,205 :: 		lcase(MessageText); // Convert the entire message to lower case
LW	R2, 4(SP)
ADDIU	SP, SP, -4
SW	R2, 0(SP)
JAL	_lcase+0
NOP	
ADDIU	SP, SP, 4
;GSM_EasyPIC_Fusion_v7.c,207 :: 		if (*(MessageText + 1) == 'n') { // Looking for "on"
LW	R2, 4(SP)
ADDIU	R2, R2, 1
LBU	R2, 0(R2)
ANDI	R3, R2, 255
ORI	R2, R0, 110
BEQ	R3, R2, L__gsmMsgRcvd64
NOP	
J	L_gsmMsgRcvd12
NOP	
L__gsmMsgRcvd64:
;GSM_EasyPIC_Fusion_v7.c,208 :: 		LATD = 0xFFFF;
ORI	R2, R0, 65535
SW	R2, Offset(LATD+0)(GP)
;GSM_EasyPIC_Fusion_v7.c,209 :: 		} else if (*(MessageText + 1) == 'f') { // Looking for "off"
J	L_gsmMsgRcvd13
NOP	
L_gsmMsgRcvd12:
LW	R2, 4(SP)
ADDIU	R2, R2, 1
LBU	R2, 0(R2)
ANDI	R3, R2, 255
ORI	R2, R0, 102
BEQ	R3, R2, L__gsmMsgRcvd65
NOP	
J	L_gsmMsgRcvd14
NOP	
L__gsmMsgRcvd65:
;GSM_EasyPIC_Fusion_v7.c,210 :: 		LATD = 0x0000;
SW	R0, Offset(LATD+0)(GP)
;GSM_EasyPIC_Fusion_v7.c,211 :: 		} else if (memcmp(MessageText, "stat", 4) == 0) { //Status report
J	L_gsmMsgRcvd15
NOP	
L_gsmMsgRcvd14:
ORI	R27, R0, 4
LUI	R26, hi_addr(?lstr5_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr5_GSM_EasyPIC_Fusion_v7+0)
LW	R25, 4(SP)
JAL	_memcmp+0
NOP	
SEH	R2, R2
BEQ	R2, R0, L__gsmMsgRcvd66
NOP	
J	L_gsmMsgRcvd16
NOP	
L__gsmMsgRcvd66:
;GSM_EasyPIC_Fusion_v7.c,212 :: 		generateStatusReport(&strMsgSendTxt);
LUI	R2, hi_addr(_strMsgSendTxt+0)
ORI	R2, R2, lo_addr(_strMsgSendTxt+0)
ADDIU	SP, SP, -4
SW	R2, 0(SP)
JAL	_generateStatusReport+0
NOP	
ADDIU	SP, SP, 4
;GSM_EasyPIC_Fusion_v7.c,213 :: 		msgSend();
JAL	_msgSend+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,214 :: 		} else if (memcmp(MessageText, "please call ", 12) == 0) { // "Please Call Me"
J	L_gsmMsgRcvd17
NOP	
L_gsmMsgRcvd16:
ORI	R27, R0, 12
LUI	R26, hi_addr(?lstr6_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr6_GSM_EasyPIC_Fusion_v7+0)
LW	R25, 4(SP)
JAL	_memcmp+0
NOP	
SEH	R2, R2
BEQ	R2, R0, L__gsmMsgRcvd67
NOP	
J	L_gsmMsgRcvd18
NOP	
L__gsmMsgRcvd67:
;GSM_EasyPIC_Fusion_v7.c,215 :: 		LATD1_bit = !LATD1_bit;
_LX	
EXT	R2, R2, BitPos(LATD1_bit+0), 1
XORI	R3, R2, 1
_LX	
INS	R2, R3, BitPos(LATD1_bit+0), 1
_SX	
;GSM_EasyPIC_Fusion_v7.c,216 :: 		generateStatusReport(&strMsgSendTxt);
LUI	R2, hi_addr(_strMsgSendTxt+0)
ORI	R2, R2, lo_addr(_strMsgSendTxt+0)
ADDIU	SP, SP, -4
SW	R2, 0(SP)
JAL	_generateStatusReport+0
NOP	
ADDIU	SP, SP, 4
;GSM_EasyPIC_Fusion_v7.c,217 :: 		msgSend();
JAL	_msgSend+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,218 :: 		} else if (memcmp(MessageText, "test", 4) == 0) { //Test
J	L_gsmMsgRcvd19
NOP	
L_gsmMsgRcvd18:
ORI	R27, R0, 4
LUI	R26, hi_addr(?lstr7_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr7_GSM_EasyPIC_Fusion_v7+0)
LW	R25, 4(SP)
JAL	_memcmp+0
NOP	
SEH	R2, R2
BEQ	R2, R0, L__gsmMsgRcvd68
NOP	
J	L_gsmMsgRcvd20
NOP	
L__gsmMsgRcvd68:
;GSM_EasyPIC_Fusion_v7.c,219 :: 		strcpy(&strMsgSendTxt, "GSM Library all ok!");
LUI	R26, hi_addr(?lstr8_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr8_GSM_EasyPIC_Fusion_v7+0)
LUI	R25, hi_addr(_strMsgSendTxt+0)
ORI	R25, R25, lo_addr(_strMsgSendTxt+0)
JAL	_strcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,220 :: 		msgSend();
JAL	_msgSend+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,221 :: 		}
L_gsmMsgRcvd20:
L_gsmMsgRcvd19:
L_gsmMsgRcvd17:
L_gsmMsgRcvd15:
L_gsmMsgRcvd13:
;GSM_EasyPIC_Fusion_v7.c,222 :: 		}
L_end_gsmMsgRcvd:
LW	RA, 0(SP)
ADDIU	SP, SP, 4
JR	RA
NOP	
; end of _gsmMsgRcvd
_gsmEvent:
;GSM_EasyPIC_Fusion_v7.c,224 :: 		void gsmEvent(char GsmEventType) {
ADDIU	SP, SP, -4
SW	RA, 0(SP)
;GSM_EasyPIC_Fusion_v7.c,226 :: 		switch (GsmEventType) {
J	L_gsmEvent21
NOP	
;GSM_EasyPIC_Fusion_v7.c,227 :: 		case gsmevntPIN_Request:
L_gsmEvent23:
;GSM_EasyPIC_Fusion_v7.c,230 :: 		break;
J	L_gsmEvent22
NOP	
;GSM_EasyPIC_Fusion_v7.c,231 :: 		case gsmevntPIN_Fail:
L_gsmEvent24:
;GSM_EasyPIC_Fusion_v7.c,233 :: 		strcpy(&USBout, "PIN entry failed\r\n");
LUI	R26, hi_addr(?lstr9_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr9_GSM_EasyPIC_Fusion_v7+0)
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_strcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,234 :: 		HID_Write(&USBout, 64);
ORI	R26, R0, 64
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_HID_Write+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,236 :: 		break;
J	L_gsmEvent22
NOP	
;GSM_EasyPIC_Fusion_v7.c,237 :: 		case gsmevntMissedCall:
L_gsmEvent25:
;GSM_EasyPIC_Fusion_v7.c,238 :: 		gsmMissedCall(pstrGsmEventOriginatorID);
LW	R2, Offset(_pstrGsmEventOriginatorID+0)(GP)
ADDIU	SP, SP, -4
SW	R2, 0(SP)
JAL	_gsmMissedCall+0
NOP	
ADDIU	SP, SP, 4
;GSM_EasyPIC_Fusion_v7.c,239 :: 		break;
J	L_gsmEvent22
NOP	
;GSM_EasyPIC_Fusion_v7.c,240 :: 		case gsmevntMsgRcvd:
L_gsmEvent26:
;GSM_EasyPIC_Fusion_v7.c,241 :: 		gsmMsgRcvd(pstrGsmEventData, pstrGsmEventOriginatorID);
LW	R2, Offset(_pstrGsmEventOriginatorID+0)(GP)
ADDIU	SP, SP, -8
SW	R2, 4(SP)
LW	R2, Offset(_pstrGsmEventData+0)(GP)
SW	R2, 0(SP)
JAL	_gsmMsgRcvd+0
NOP	
ADDIU	SP, SP, 8
;GSM_EasyPIC_Fusion_v7.c,242 :: 		break;
J	L_gsmEvent22
NOP	
;GSM_EasyPIC_Fusion_v7.c,243 :: 		case gsmevntMsgSent:
L_gsmEvent27:
;GSM_EasyPIC_Fusion_v7.c,245 :: 		strcpy(&USBout, "Message sent\r\n");
LUI	R26, hi_addr(?lstr10_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr10_GSM_EasyPIC_Fusion_v7+0)
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_strcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,246 :: 		HID_Write(&USBout, 64);
ORI	R26, R0, 64
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_HID_Write+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,248 :: 		break;
J	L_gsmEvent22
NOP	
;GSM_EasyPIC_Fusion_v7.c,249 :: 		case gsmevntMsgDiscarded:
L_gsmEvent28:
;GSM_EasyPIC_Fusion_v7.c,250 :: 		case gsmevntMsgSendFailed:
L_gsmEvent29:
;GSM_EasyPIC_Fusion_v7.c,252 :: 		strcpy(&USBout, "Message send failed\r\n");
LUI	R26, hi_addr(?lstr11_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr11_GSM_EasyPIC_Fusion_v7+0)
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_strcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,253 :: 		HID_Write(&USBout, 64);
ORI	R26, R0, 64
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_HID_Write+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,255 :: 		break;
J	L_gsmEvent22
NOP	
;GSM_EasyPIC_Fusion_v7.c,256 :: 		case gsmevntDateTimeRead:
L_gsmEvent30:
;GSM_EasyPIC_Fusion_v7.c,257 :: 		if (dtmGsmEvent.Year > 10) { // If the GSM modules date/time is valid
LBU	R2, Offset(_dtmGsmEvent+0)(GP)
SLTIU	R2, R2, 11
BEQ	R2, R0, L__gsmEvent70
NOP	
J	L_gsmEvent31
NOP	
L__gsmEvent70:
;GSM_EasyPIC_Fusion_v7.c,261 :: 		strcpy(&USBout, "Date/Time: ");
LUI	R26, hi_addr(?lstr12_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr12_GSM_EasyPIC_Fusion_v7+0)
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_strcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,262 :: 		RTCC_GenerateString(&dtmGsmEvent, &USBout + 11);
LUI	R2, hi_addr(_USBout+11)
ORI	R2, R2, lo_addr(_USBout+11)
ADDIU	SP, SP, -8
SW	R2, 4(SP)
LUI	R2, hi_addr(_dtmGsmEvent+0)
ORI	R2, R2, lo_addr(_dtmGsmEvent+0)
SW	R2, 0(SP)
JAL	_RTCC_GenerateString+0
NOP	
ADDIU	SP, SP, 8
;GSM_EasyPIC_Fusion_v7.c,263 :: 		strcat(&USBout, "\r\n");
LUI	R26, hi_addr(?lstr13_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr13_GSM_EasyPIC_Fusion_v7+0)
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_strcat+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,264 :: 		HID_Write(&USBout, 64);
ORI	R26, R0, 64
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_HID_Write+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,266 :: 		memcpy(&dtmRTCC, &dtmGsmEvent, 6);
ORI	R27, R0, 6
LUI	R26, hi_addr(_dtmGsmEvent+0)
ORI	R26, R26, lo_addr(_dtmGsmEvent+0)
LUI	R25, hi_addr(_dtmRTCC+0)
ORI	R25, R25, lo_addr(_dtmRTCC+0)
JAL	_memcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,267 :: 		bitRTCC_Set = 1;
LBU	R2, Offset(_bitRTCC_Set+0)(GP)
ORI	R2, R2, BitMask(_bitRTCC_Set+0)
SB	R2, Offset(_bitRTCC_Set+0)(GP)
;GSM_EasyPIC_Fusion_v7.c,268 :: 		} else {
J	L_gsmEvent32
NOP	
L_gsmEvent31:
;GSM_EasyPIC_Fusion_v7.c,270 :: 		strcpy(&USBout, "Date/Time not yet set.\r\n");
LUI	R26, hi_addr(?lstr14_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr14_GSM_EasyPIC_Fusion_v7+0)
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_strcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,271 :: 		HID_Write(&USBout, 64);
ORI	R26, R0, 64
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_HID_Write+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,273 :: 		}
L_gsmEvent32:
;GSM_EasyPIC_Fusion_v7.c,274 :: 		break;
J	L_gsmEvent22
NOP	
;GSM_EasyPIC_Fusion_v7.c,275 :: 		case gsmevntDateTimeWrite:
L_gsmEvent33:
;GSM_EasyPIC_Fusion_v7.c,277 :: 		memcpy(&dtmGsmEvent, &dtmRTCC, 6);
ORI	R27, R0, 6
LUI	R26, hi_addr(_dtmRTCC+0)
ORI	R26, R26, lo_addr(_dtmRTCC+0)
LUI	R25, hi_addr(_dtmGsmEvent+0)
ORI	R25, R25, lo_addr(_dtmGsmEvent+0)
JAL	_memcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,278 :: 		break;
J	L_gsmEvent22
NOP	
;GSM_EasyPIC_Fusion_v7.c,279 :: 		case gsmevntIMEI_Read:
L_gsmEvent34:
;GSM_EasyPIC_Fusion_v7.c,281 :: 		strcpy(&USBout, "IMEI: ");
LUI	R26, hi_addr(?lstr15_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr15_GSM_EasyPIC_Fusion_v7+0)
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_strcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,282 :: 		strcat(&USBout, pstrGsmEventData);
LW	R26, Offset(_pstrGsmEventData+0)(GP)
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_strcat+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,283 :: 		strcat(&USBout, "\r\n");
LUI	R26, hi_addr(?lstr16_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr16_GSM_EasyPIC_Fusion_v7+0)
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_strcat+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,284 :: 		HID_Write(&USBout, 64);
ORI	R26, R0, 64
LUI	R25, hi_addr(_USBout+0)
ORI	R25, R25, lo_addr(_USBout+0)
JAL	_HID_Write+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,286 :: 		break;
J	L_gsmEvent22
NOP	
;GSM_EasyPIC_Fusion_v7.c,287 :: 		}
L_gsmEvent21:
LBU	R3, 4(SP)
ORI	R2, R0, 30
BNE	R3, R2, L__gsmEvent72
NOP	
J	L_gsmEvent23
NOP	
L__gsmEvent72:
LBU	R3, 4(SP)
ORI	R2, R0, 31
BNE	R3, R2, L__gsmEvent74
NOP	
J	L_gsmEvent24
NOP	
L__gsmEvent74:
LBU	R3, 4(SP)
ORI	R2, R0, 70
BNE	R3, R2, L__gsmEvent76
NOP	
J	L_gsmEvent25
NOP	
L__gsmEvent76:
LBU	R3, 4(SP)
ORI	R2, R0, 80
BNE	R3, R2, L__gsmEvent78
NOP	
J	L_gsmEvent26
NOP	
L__gsmEvent78:
LBU	R3, 4(SP)
ORI	R2, R0, 83
BNE	R3, R2, L__gsmEvent80
NOP	
J	L_gsmEvent27
NOP	
L__gsmEvent80:
LBU	R3, 4(SP)
ORI	R2, R0, 82
BNE	R3, R2, L__gsmEvent82
NOP	
J	L_gsmEvent28
NOP	
L__gsmEvent82:
LBU	R3, 4(SP)
ORI	R2, R0, 84
BNE	R3, R2, L__gsmEvent84
NOP	
J	L_gsmEvent29
NOP	
L__gsmEvent84:
LBU	R3, 4(SP)
ORI	R2, R0, 150
BNE	R3, R2, L__gsmEvent86
NOP	
J	L_gsmEvent30
NOP	
L__gsmEvent86:
LBU	R3, 4(SP)
ORI	R2, R0, 151
BNE	R3, R2, L__gsmEvent88
NOP	
J	L_gsmEvent33
NOP	
L__gsmEvent88:
LBU	R3, 4(SP)
ORI	R2, R0, 20
BNE	R3, R2, L__gsmEvent90
NOP	
J	L_gsmEvent34
NOP	
L__gsmEvent90:
L_gsmEvent22:
;GSM_EasyPIC_Fusion_v7.c,288 :: 		}
L_end_gsmEvent:
LW	RA, 0(SP)
ADDIU	SP, SP, 4
JR	RA
NOP	
; end of _gsmEvent
_main:
;GSM_EasyPIC_Fusion_v7.c,290 :: 		void main() {
;GSM_EasyPIC_Fusion_v7.c,291 :: 		setup();
JAL	_setup+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,292 :: 		startup();
JAL	_startup+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,293 :: 		gsmDateTimeRead();
JAL	_gsmDateTimeRead+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,294 :: 		while (1) {
L_main35:
;GSM_EasyPIC_Fusion_v7.c,295 :: 		gsmPoll(); // Keep the GSM library running
JAL	_gsmPoll+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,298 :: 		if ((RG7_bit == 0) && (wrdRG7Tmr > 10000)) {
_LX	
EXT	R2, R2, BitPos(RG7_bit+0), 1
BEQ	R2, R0, L__main92
NOP	
J	L_main39
NOP	
L__main92:
LHU	R2, Offset(_wrdRG7Tmr+0)(GP)
SLTIU	R2, R2, 10001
BEQ	R2, R0, L__main93
NOP	
J	L_main39
NOP	
L__main93:
L__main40:
;GSM_EasyPIC_Fusion_v7.c,299 :: 		strcpy(&strMsgSendTxt, "GSM Lib: RG7 pulled low.");
LUI	R26, hi_addr(?lstr17_GSM_EasyPIC_Fusion_v7+0)
ORI	R26, R26, lo_addr(?lstr17_GSM_EasyPIC_Fusion_v7+0)
LUI	R25, hi_addr(_strMsgSendTxt+0)
ORI	R25, R25, lo_addr(_strMsgSendTxt+0)
JAL	_strcpy+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,300 :: 		msgSend();
JAL	_msgSend+0
NOP	
;GSM_EasyPIC_Fusion_v7.c,301 :: 		wrdRG7Tmr = 0;
SH	R0, Offset(_wrdRG7Tmr+0)(GP)
;GSM_EasyPIC_Fusion_v7.c,302 :: 		}
L_main39:
;GSM_EasyPIC_Fusion_v7.c,303 :: 		} // (while)
J	L_main35
NOP	
;GSM_EasyPIC_Fusion_v7.c,304 :: 		} // (void)
L_end_main:
L__main_end_loop:
J	L__main_end_loop
NOP	
; end of _main
