summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorLinus Nielsen Feltzing <linus@haxx.se>2004-06-22 10:52:39 +0000
committerLinus Nielsen Feltzing <linus@haxx.se>2004-06-22 10:52:39 +0000
commitfafd2093e3ddaaabeb1a65e8a27e4a749f5edd15 (patch)
tree5c4e912fbc96588b485ea7eade04f4dd45ef1b1f /apps
parent5c8a2f5835f0980f7d1646c6c9288235b7e3499b (diff)
downloadrockbox-fafd2093e3ddaaabeb1a65e8a27e4a749f5edd15.zip
rockbox-fafd2093e3ddaaabeb1a65e8a27e4a749f5edd15.tar.gz
rockbox-fafd2093e3ddaaabeb1a65e8a27e4a749f5edd15.tar.bz2
rockbox-fafd2093e3ddaaabeb1a65e8a27e4a749f5edd15.tar.xz
Patch #881887 by Gerald Vanbaren. The red LED is now ON when recording and blinking when waiting to record (and when paused).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4790 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/recorder/recording.c31
1 files changed, 30 insertions, 1 deletions
diff --git a/apps/recorder/recording.c b/apps/recorder/recording.c
index 2cef11a..86b4a46 100644
--- a/apps/recorder/recording.c
+++ b/apps/recorder/recording.c
@@ -25,6 +25,7 @@
#include "system.h"
#include "lcd.h"
+#include "led.h"
#include "mpeg.h"
#include "mp3_playback.h"
#include "mas.h"
@@ -179,6 +180,8 @@ bool recording_screen(void)
int hours, minutes;
char path_buffer[MAX_PATH];
bool been_in_usb_mode = false;
+ bool led_state;
+ int led_delay;
cursor = 0;
mpeg_init_recording();
@@ -210,9 +213,34 @@ bool recording_screen(void)
if(rec_create_directory() > 0)
have_recorded = true;
+
+ led_state = false;
+ led_delay = 0;
while(!done)
{
+ /*
+ * Flash the LED while waiting to record. Turn it on while
+ * recording.
+ */
+ if(mpeg_status() != MPEG_STATUS_RECORD)
+ {
+ if(led_delay++ >= 4)
+ {
+ led_state = !led_state;
+ invert_led(led_state);
+ led_delay = 0;
+ }
+ }
+ else
+ {
+ if(!led_state)
+ {
+ led_state = true;
+ invert_led(true);
+ }
+ }
+
button = button_get_w_tmo(HZ / peak_meter_fps);
switch(button)
{
@@ -565,7 +593,6 @@ bool recording_screen(void)
done = true;
}
}
-
if(mpeg_status() & MPEG_STATUS_ERROR)
{
status_set_playmode(STATUS_STOP);
@@ -582,6 +609,8 @@ bool recording_screen(void)
}
}
+ invert_led(false);
+
mpeg_init_playback();
mpeg_sound_channel_config(global_settings.channel_config);