/* returns names from code or number in menu */
char *RingingToneName(int code, int menu)
{
- int index=1,i;
+ int index=1;
GSM_Error error;
if (code==0)
}
if (!strncmp(RingingTones[index].name,"Uploaded ",9)) {
- ringtone.location=atoi(&RingingTones[index].name[10]);
-
- error=GSM->GetBinRingtone(&ringtone);
-
- if (error==GE_NONE) return ringtone.name;
- if (error==GE_UNKNOWNMODEL) {
-
- /* In 33x we have normal "Smart Messaging" format */
- if (GetModelFeature (FN_RINGTONES)==F_RING_SM) {
-
- i=7;
- if (ringtone.frame[9]==0x4a && ringtone.frame[10]==0x3a) i=8;
- ringtone.frame[i]=0x02;
-
- GSM_UnPackRingtone(&SMringtone, ringtone.frame+i, ringtone.length-i);
+ ringtone.location=atoi(&RingingTones[index].name[10]);
- return SMringtone.name;
- }
- }
+ error=GSM_GetPhoneRingtone(&ringtone,&SMringtone);
+
+ if (error==GE_NONE) {
+ if (GetModelFeature (FN_RINGTONES)==F_RING_SM) return SMringtone.name;
+ else return ringtone.name;
+ }
}
return RingingTones[index].name;
return i;
}
+
+GSM_Error GSM_GetPhoneRingtone(GSM_BinRingtone *ringtone,GSM_Ringtone *SMringtone)
+{
+ GSM_Error error;
+ int i;
+
+ error=GSM->GetBinRingtone(ringtone);
+
+ if (error==GE_UNKNOWNMODEL)
+ {
+ /* In 3310,... we have normal "Smart Messaging" format */
+ if (GetModelFeature (FN_RINGTONES)==F_RING_SM) {
+ i=7;
+ if (ringtone->frame[9]==0x4a && ringtone->frame[10]==0x3a) i=8;
+ ringtone->frame[i]=0x02;
+
+ GSM_UnPackRingtone(SMringtone, ringtone->frame+i, ringtone->length-i);
+
+ return GE_NONE;
+ }
+ }
+
+ return error;
+}