
rockbox turn on usb during recoring
By: a guest on
Feb 7th, 2011 | syntax:
C | size: 1.53 KB | hits: 104 | expires: Never
@@ -1712,11 +1697,40 @@
#endif /* CONFIG_KEYPAD == RECORDER_PAD */
case SYS_USB_CONNECTED:
+ if ((audio_stat & AUDIO_STATUS_RECORD)) {
+ // stop the recording to do usb
+ rec_command(RECORDING_CMD_STOP);
+ FOR_NB_SCREENS(i)
+ screens[i].set_viewport(NULL);
+ next_screen = GO_TO_RECSCREEN;
+ recording_start_automatic = true;
+
+ done = true;
+ rec_status |= RCSTAT_BEEN_IN_USB_MODE;
+#ifdef HAVE_FMRADIO_REC
+ radio_status = FMRADIO_OFF;
+#endif
+ // wait a bit
+ sleep(20);
+ while(!(audio_stat & AUDIO_STATUS_RECORD)) {
+ sleep(20);
+ }
+
+ default_event_handler(SYS_USB_CONNECTED);
+ usb_acknowledge(SYS_USB_CONNECTED_ACK);
+
+
+
+ }
+
+
/* Only accept USB connection when not recording */
- if(!(audio_stat & AUDIO_STATUS_RECORD))
+ else if(!(audio_stat & AUDIO_STATUS_RECORD))
{
FOR_NB_SCREENS(i)
screens[i].set_viewport(NULL);
+ next_screen = GO_TO_RECSCREEN;
+ recording_start_automatic = true;
default_event_handler(SYS_USB_CONNECTED);
done = true;
rec_status |= RCSTAT_BEEN_IN_USB_MODE;