summaryrefslogtreecommitdiff
path: root/apps/plugins/metronome.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/metronome.c')
-rw-r--r--apps/plugins/metronome.c55
1 files changed, 2 insertions, 53 deletions
diff --git a/apps/plugins/metronome.c b/apps/plugins/metronome.c
index eec8a92e78..a6b4181df2 100644
--- a/apps/plugins/metronome.c
+++ b/apps/plugins/metronome.c
@@ -840,12 +840,9 @@ static void metronome_draw(struct screen* display, int state)
840 int textlen = display->lcdwidth / display->getcharwidth(); 840 int textlen = display->lcdwidth / display->getcharwidth();
841 ps = part; 841 ps = part;
842 display->clear_display(); 842 display->clear_display();
843#ifdef HAVE_LCD_BITMAP
844 display->setfont(FONT_SYSFIXED); 843 display->setfont(FONT_SYSFIXED);
845#endif
846 switch(state) 844 switch(state)
847 { 845 {
848#ifdef HAVE_LCD_BITMAP
849 case 0: 846 case 0:
850 if(sound_paused) 847 if(sound_paused)
851 { 848 {
@@ -876,49 +873,17 @@ static void metronome_draw(struct screen* display, int state)
876 case 3: 873 case 3:
877 display->puts((textlen-3)/2,0, "o.O"); 874 display->puts((textlen-3)/2,0, "o.O");
878 break; 875 break;
879#else /* Much simpler on 2-line text display, but same thing. */
880 case 1:
881 if((beat+1) % 2 == 0)
882 beat1 = '/';
883 else
884 beat1 = '\\';
885 break;
886 case 2:
887 if((beat+1) % 2 == 0)
888 beat2 = '/';
889 else
890 beat2 = '\\';
891 break;
892 case 3:
893 beat1 = '.';
894 break;
895#endif
896 } 876 }
897 877
898 if(track_mode) 878 if(track_mode)
899 { 879 {
900 880
901#ifdef HAVE_LCD_BITMAP
902 /* One line in several. */ 881 /* One line in several. */
903 rb->snprintf( buffer, sizeof(buffer), "%u/%u@%u V%d" 882 rb->snprintf( buffer, sizeof(buffer), "%u/%u@%u V%d"
904 , ps->beats_per_bar, ps->base_beat 883 , ps->beats_per_bar, ps->base_beat
905 , bpm, rb->global_settings->volume ); 884 , bpm, rb->global_settings->volume );
906 display->puts(0,4, buffer); 885 display->puts(0,4, buffer);
907#else 886
908 /* Just two short lines with integrated beat indicator. */
909 rb->snprintf( buffer, sizeof(buffer), "%c %u/%u@%u"
910 , beat1
911 , ps->beats_per_bar, ps->base_beat
912 , bpm );
913 display->puts(0,0, buffer);
914 /* Simulator prints format %+02d ... real Rockbox doesn't. */
915 rb->snprintf( buffer, sizeof(buffer), "%c V%d"
916 , beat2
917 , rb->global_settings->volume );
918 display->puts(0,1, buffer);
919#endif /* HAVE_LCD_BITMAP */
920
921#ifdef HAVE_LCD_BITMAP
922 /* Would it hurt to draw a 3rd line to 2-line display? 887 /* Would it hurt to draw a 3rd line to 2-line display?
923 I guess there are 3-line displays out there. */ 888 I guess there are 3-line displays out there. */
924 if(ps->label && rb->strlen(ps->label)) 889 if(ps->label && rb->strlen(ps->label))
@@ -935,13 +900,11 @@ static void metronome_draw(struct screen* display, int state)
935 rb->snprintf( buffer, sizeof(buffer), "P%u/%u: B%u/_+%u" 900 rb->snprintf( buffer, sizeof(buffer), "P%u/%u: B%u/_+%u"
936 , part->id+1, parts, bar+1, beat+1 ); 901 , part->id+1, parts, bar+1, beat+1 );
937 display->puts(0, 5, buffer); 902 display->puts(0, 5, buffer);
938#endif /* HAVE_LCD_BITMAP */
939 903
940 } 904 }
941 else /* track mode */ 905 else /* track mode */
942 { 906 {
943 907
944#ifdef HAVE_LCD_BITMAP
945 if(display->screen_type==SCREEN_MAIN) 908 if(display->screen_type==SCREEN_MAIN)
946 { 909 {
947#ifdef MET_SYNC 910#ifdef MET_SYNC
@@ -960,32 +923,18 @@ static void metronome_draw(struct screen* display, int state)
960#endif 923#endif
961 } 924 }
962#endif 925#endif
963#endif /* HAVE_LCD_BITMAP */
964 926
965#ifdef HAVE_LCD_BITMAP
966 rb->snprintf( buffer, sizeof(buffer), "BPM: %d Vol: %d" 927 rb->snprintf( buffer, sizeof(buffer), "BPM: %d Vol: %d"
967 , bpm, rb->global_settings->volume ); 928 , bpm, rb->global_settings->volume );
968 display->puts(0,3, buffer); 929 display->puts(0,3, buffer);
969#else 930
970 rb->snprintf( buffer, sizeof(buffer), "%c BPM: %d "
971 , beat1, bpm );
972 display->puts(0,0, buffer);
973 rb->snprintf( buffer, sizeof(buffer), "%c Vol: %d"
974 , beat2, rb->global_settings->volume );
975 display->puts(0,1, buffer);
976#endif /* HAVE_LCD_BITMAP */
977
978#ifdef HAVE_LCD_BITMAP
979 display->hline(0, 111, 12); 931 display->hline(0, 111, 12);
980 if(sound_paused) display->puts(0,2,"start: hold select"); 932 if(sound_paused) display->puts(0,2,"start: hold select");
981 else display->puts(0,2,"stop : cancel"); 933 else display->puts(0,2,"stop : cancel");
982#endif /* HAVE_LCD_BITMAP */
983 934
984 } /* !track_mode */ 935 } /* !track_mode */
985 936
986#ifdef HAVE_LCD_BITMAP
987 display->setfont(FONT_UI); 937 display->setfont(FONT_UI);
988#endif /* HAVE_LCD_BITMAP */
989 display->update(); 938 display->update();
990} 939}
991 940