int DefNoteTempo=63;
u8 DefNoteStyle=ContinuousStyle;
- int CurrentNote;
- int buffer[6];
- int i,j,k=0;
-
- /* Saves ringtone name */
- fprintf(file,_("%s:"),ringtone->name);
-
- /* Find the most frequently used duration and use this for the default */
-
- for (i=0;i<6;i++) buffer[i]=0;
- for (i=0;i<ringtone->NrNotes;i++) {
- switch (ringtone->notes[i].duration) {
- case 192:buffer[0]++; break;
- case 128:buffer[0]++; break;
- case 96:buffer[1]++; break;
- case 64:buffer[1]++; break;
- case 48:buffer[2]++; break;
- case 32:buffer[2]++; break;
- case 24:buffer[3]++; break;
- case 16:buffer[3]++; break;
- case 12:buffer[4]++; break;
- case 8:buffer[4]++; break;
- case 6:buffer[5]++; break;
- case 4:buffer[5]++; break;
- }
- }
-
- /* Now find the most frequently used */
- j=0;
- for (i=0;i<6;i++) {
- if (buffer[i]>j) {
- k=i;
- j=buffer[i];
- }
- }
-
- /* Finally convert and save the default duration */
-
- switch (k) {
- case 0: DefNoteDuration=128; fprintf(file, _("d=1,")); break;
- case 1: DefNoteDuration= 64; fprintf(file, _("d=2,")); break;
- case 2: DefNoteDuration= 32; fprintf(file, _("d=4,")); break;
- case 3: DefNoteDuration= 16; fprintf(file, _("d=8,")); break;
- case 4: DefNoteDuration= 8; fprintf(file,_("d=16,")); break;
- case 5: DefNoteDuration= 4; fprintf(file,_("d=32,")); break;
- default: DefNoteDuration= 16; fprintf(file, _("d=8,")); break;
- }
-
-
- /* Find the most frequently used scale and use this for the default */
-
- for (i=0;i<6;i++) buffer[i]=0;
- for (i=0;i<ringtone->NrNotes;i++) {
- if (ringtone->notes[i].note!=255) {
- buffer[ringtone->notes[i].note/14]++;
- }
- }
- j=0;
- for (i=0;i<6;i++) {
- if (buffer[i]>j) {
- DefNoteScale=i;
- j=buffer[i];
- }
- }
+ int CurrentNote;\r
+ int buffer[6];\r
+ int i,j,k=0;\r
+ \r
+ /* Saves ringtone name */\r
+ fprintf(file,_("%s:"),ringtone->name);\r
+\r
+ /* Find the most frequently used duration and use this for the default */\r
+ \r
+ for (i=0;i<6;i++) buffer[i]=0;\r
+ for (i=0;i<ringtone->NrNotes;i++) {\r
+ switch (ringtone->notes[i].duration) {\r
+ case 192:buffer[0]++; break;\r
+ case 128:buffer[0]++; break;\r
+ case 96:buffer[1]++; break;\r
+ case 64:buffer[1]++; break;\r
+ case 48:buffer[2]++; break;\r
+ case 32:buffer[2]++; break;\r
+ case 24:buffer[3]++; break;\r
+ case 16:buffer[3]++; break;\r
+ case 12:buffer[4]++; break;\r
+ case 8:buffer[4]++; break;\r
+ case 6:buffer[5]++; break;\r
+ case 4:buffer[5]++; break;\r
+ }\r
+ }\r
+\r
+ /* Now find the most frequently used */\r
+ j=0;\r
+ for (i=0;i<6;i++) {\r
+ if (buffer[i]>j) {\r
+ k=i; \r
+ j=buffer[i];\r
+ }\r
+ }\r
+\r
+ /* Finally convert and save the default duration */\r
+\r
+ switch (k) {\r
+ case 0: DefNoteDuration=128; fprintf(file, _("d=1,")); break; \r
+ case 1: DefNoteDuration= 64; fprintf(file, _("d=2,")); break; \r
+ case 2: DefNoteDuration= 32; fprintf(file, _("d=4,")); break; \r
+ case 3: DefNoteDuration= 16; fprintf(file, _("d=8,")); break; \r
+ case 4: DefNoteDuration= 8; fprintf(file,_("d=16,")); break; \r
+ case 5: DefNoteDuration= 4; fprintf(file,_("d=32,")); break; \r
+ default: DefNoteDuration= 16; fprintf(file, _("d=8,")); break; \r
+ } \r
+\r
+\r
+ /* Find the most frequently used scale and use this for the default */\r
+\r
+ for (i=0;i<6;i++) buffer[i]=0;\r
+ for (i=0;i<ringtone->NrNotes;i++) {\r
+ if (ringtone->notes[i].note!=255) {\r
+ buffer[ringtone->notes[i].note/14]++;\r
+ }\r
+ }\r
+ j=0;\r
+ for (i=0;i<6;i++) {\r
+ if (buffer[i]>j) {\r
+ DefNoteScale=i;\r
+ j=buffer[i];\r
+ }\r
+ }\r
if (ringtone->NrNotes!=0) {
DefNoteTempo=ringtone->notes[0].tempo;
DefNoteStyle=ringtone->notes[0].style;
}
- /* Save the default scale */
- fprintf(file,_("o=%i,"),DefNoteScale+4);
+ /* Save the default scale */\r
+ fprintf(file,_("o=%i,"),DefNoteScale+4);\r \r
switch (DefNoteStyle) {
case StaccatoStyle: fprintf(file,_("s=S,")); break;
case NaturalStyle : fprintf(file,_("s=N,")); break;
}
-
+\r
/* Save the default tempo */
fprintf(file,_("b=%i,"),DefNoteTempo);
/* Save the default loop */
fprintf(file,_("l=%i:"),ringtone->Loop);
-#ifdef DEBUG
- printf("DefNoteDuration=%d\n", DefNoteDuration);
- printf("DefNoteScale=%d\n", DefNoteScale);
- printf("Number of notes=%d\n",ringtone->NrNotes);
-#endif
-
- /* Now loop round for each note */
-
- for (i=0;i<ringtone->NrNotes;i++) {
- CurrentNote=ringtone->notes[i].note;
-
+#ifdef DEBUG\r
+ printf("DefNoteDuration=%d\n", DefNoteDuration);\r
+ printf("DefNoteScale=%d\n", DefNoteScale);\r
+ printf("Number of notes=%d\n",ringtone->NrNotes);\r
+#endif\r
+ \r
+ /* Now loop round for each note */\r
+\r
+ for (i=0;i<ringtone->NrNotes;i++) {\r
+ CurrentNote=ringtone->notes[i].note;\r
+\r
if (ringtone->notes[i].style!=DefNoteStyle) {
DefNoteStyle=ringtone->notes[i].style;
switch (DefNoteStyle) {
case NaturalStyle : fprintf(file,_("s=N")); break;
case ContinuousStyle: fprintf(file,_("s=C")); break;
}
- /* And a separator before next note */
- if (i!=ringtone->NrNotes-1)
- fprintf(file,_(","));
+ /* And a separator before next note */\r
+ if (i!=ringtone->NrNotes-1)\r
+ fprintf(file,_(","));\r
}
if (ringtone->notes[i].tempo!=DefNoteTempo) {
DefNoteTempo=ringtone->notes[i].tempo;
- fprintf(file,_("b=%i"),DefNoteTempo);
- if (i!=ringtone->NrNotes-1)
- fprintf(file,_(","));
+ fprintf(file,_("b=%i"),DefNoteTempo);\r
+ if (i!=ringtone->NrNotes-1)\r
+ fprintf(file,_(","));\r
}
- /* This note has a duration different than the default. We must save it */
- if (ringtone->notes[i].duration!=DefNoteDuration) {
- switch (ringtone->notes[i].duration) {
- case 192: fprintf(file, _("1")); break; //192=128*1.5
- case 128: fprintf(file, _("1")); break;
- case 96: fprintf(file, _("2")); break; //96=64*1.5
- case 64: fprintf(file, _("2")); break;
- case 48: fprintf(file, _("4")); break; //48=32*1.5
- case 32: fprintf(file, _("4")); break;
- case 24: fprintf(file, _("8")); break; //24=16*1.5
- case 16: fprintf(file, _("8")); break;
- case 12: fprintf(file,_("16")); break; //12=8*1.5
- case 8: fprintf(file,_("16")); break;
- case 6: fprintf(file,_("32")); break; //6=4*1.5
- case 4: fprintf(file,_("32")); break;
- default:
- break;
- }
- }
-
- /* Now save the actual note */
- switch (GSM_GetNote(CurrentNote)) {
- case Note_C :fprintf(file,_("c"));break;
- case Note_Cis:fprintf(file,_("c#"));break;
- case Note_D :fprintf(file,_("d"));break;
- case Note_Dis:fprintf(file,_("d#"));break;
- case Note_E :fprintf(file,_("e"));break;
- case Note_F :fprintf(file,_("f"));break;
- case Note_Fis:fprintf(file,_("f#"));break;
- case Note_G :fprintf(file,_("g"));break;
- case Note_Gis:fprintf(file,_("g#"));break;
- case Note_A :fprintf(file,_("a"));break;
- case Note_Ais:fprintf(file,_("a#"));break;
- case Note_H :fprintf(file,_("h"));break;
- default :fprintf(file,_("p"));break; //Pause ?
- }
-
- /* Saving info about special duration */
- if (ringtone->notes[i].duration==128*1.5 ||
- ringtone->notes[i].duration==64*1.5 ||
- ringtone->notes[i].duration==32*1.5 ||
- ringtone->notes[i].duration==16*1.5 ||
- ringtone->notes[i].duration==8*1.5 ||
- ringtone->notes[i].duration==4*1.5)
- fprintf(file,_("."));
-
- /* This note has a scale different than the default, so save it */
- if ( (CurrentNote!=255) && (CurrentNote/14!=DefNoteScale))
- fprintf(file,_("%i"),(CurrentNote/14)+4);
-
- /* And a separator before next note */
- if (i!=ringtone->NrNotes-1)
- fprintf(file,_(","));
-
- }
+ /* This note has a duration different than the default. We must save it */\r
+ if (ringtone->notes[i].duration!=DefNoteDuration) {\r
+ switch (ringtone->notes[i].duration) {\r
+ case 192: fprintf(file, _("1")); break; //192=128*1.5\r
+ case 128: fprintf(file, _("1")); break;\r
+ case 96: fprintf(file, _("2")); break; //96=64*1.5\r
+ case 64: fprintf(file, _("2")); break;\r
+ case 48: fprintf(file, _("4")); break; //48=32*1.5\r
+ case 32: fprintf(file, _("4")); break;\r
+ case 24: fprintf(file, _("8")); break; //24=16*1.5\r
+ case 16: fprintf(file, _("8")); break;\r
+ case 12: fprintf(file,_("16")); break; //12=8*1.5\r
+ case 8: fprintf(file,_("16")); break;\r
+ case 6: fprintf(file,_("32")); break; //6=4*1.5\r
+ case 4: fprintf(file,_("32")); break;\r
+ default: \r
+ break;\r
+ }\r
+ }\r
+ \r
+ /* Now save the actual note */\r
+ switch (GSM_GetNote(CurrentNote)) {\r
+ case Note_C :fprintf(file,_("c"));break;\r
+ case Note_Cis:fprintf(file,_("c#"));break;\r
+ case Note_D :fprintf(file,_("d"));break;\r
+ case Note_Dis:fprintf(file,_("d#"));break;\r
+ case Note_E :fprintf(file,_("e"));break;\r
+ case Note_F :fprintf(file,_("f"));break;\r
+ case Note_Fis:fprintf(file,_("f#"));break;\r
+ case Note_G :fprintf(file,_("g"));break;\r
+ case Note_Gis:fprintf(file,_("g#"));break;\r
+ case Note_A :fprintf(file,_("a"));break;\r
+ case Note_Ais:fprintf(file,_("a#"));break;\r
+ case Note_H :fprintf(file,_("h"));break;\r
+ default :fprintf(file,_("p"));break; //Pause ?\r
+ }\r
+\r
+ /* Saving info about special duration */\r
+ if (ringtone->notes[i].duration==128*1.5 ||\r
+ ringtone->notes[i].duration==64*1.5 ||\r
+ ringtone->notes[i].duration==32*1.5 ||\r
+ ringtone->notes[i].duration==16*1.5 ||\r
+ ringtone->notes[i].duration==8*1.5 ||\r
+ ringtone->notes[i].duration==4*1.5)\r
+ fprintf(file,_("."));\r
+ \r
+ /* This note has a scale different than the default, so save it */\r
+ if ( (CurrentNote!=255) && (CurrentNote/14!=DefNoteScale))\r
+ fprintf(file,_("%i"),(CurrentNote/14)+4);\r
+ \r
+ /* And a separator before next note */\r
+ if (i!=ringtone->NrNotes-1)\r
+ fprintf(file,_(","));\r
+\r
+ }\r
}
void WriteVarLen(char* midifile, int* current, long value)
void loadlmbstartupentry(unsigned char *buffer, unsigned char *buffer2, GSM_Backup *backup)
{
- int i,j,z;
+ int i,j;
+#ifdef DEBUG
+ int z;
+#endif
j=1;
for (i=0;i<buffer2[0];i++) {