Index: plugin.c
===================================================================
RCS file: /cvsroot/rockbox/apps/plugin.c,v
retrieving revision 1.5
diff -u -r1.5 plugin.c
--- plugin.c	13 Jul 2003 22:15:18 -0000	1.5
+++ plugin.c	19 Jul 2003 00:53:46 -0000
@@ -31,6 +31,7 @@
 #include "plugin.h"
 #include "lang.h"
 #include "keyboard.h"
+#include "mpeg.h"
 
 #ifdef HAVE_LCD_BITMAP
 #include "widgets.h"
@@ -134,6 +135,7 @@
     splash,
     qsort,
     kbd_input,
+    mpeg_current_track, 
 };
 
 int plugin_load(char* plugin, void* parameter)
Index: plugin.h
===================================================================
RCS file: /cvsroot/rockbox/apps/plugin.h,v
retrieving revision 1.4
diff -u -r1.4 plugin.h
--- plugin.h	13 Jul 2003 22:15:19 -0000	1.4
+++ plugin.h	19 Jul 2003 00:53:46 -0000
@@ -39,9 +39,10 @@
 #include "font.h"
 #include "system.h"
 #include "lcd.h"
-
+#include "id3.h"
+#include "mpeg.h"
 /* increase this every time the api struct changes */
-#define PLUGIN_API_VERSION 4
+#define PLUGIN_API_VERSION 5 
 
 /* plugin return codes */
 enum plugin_status {
@@ -162,6 +163,7 @@
     void (*qsort)(void *base, size_t nmemb, size_t size,
                   int(*compar)(const void *, const void *));
     int (*kbd_input)(char* buffer, int buflen);
+    struct mp3entry* (*mpeg_current_track)();
 };
 
 /* defined by the plugin loader (plugin.c) */
Index: main_menu.c
===================================================================
RCS file: /cvsroot/rockbox/apps/main_menu.c,v
retrieving revision 1.83
diff -u -r1.83 main_menu.c
--- main_menu.c	1 Jul 2003 21:03:28 -0000	1.83
+++ main_menu.c	19 Jul 2003 00:53:46 -0000
@@ -72,6 +72,8 @@
 
 #endif /* End HAVE_LCD_BITMAP */
 
+#include "plugin.h"
+
 int show_logo( void )
 {
 #ifdef HAVE_LCD_BITMAP
@@ -251,6 +253,13 @@
     return false;
 }
 
+bool save_favorite(void)
+{
+    if (plugin_load("/.rockbox/rocks/favorites.rock",NULL)==PLUGIN_USB_CONNECTED)
+        return true;
+    return false;
+}
+
 bool main_menu(void)
 {
     int m;
@@ -258,6 +267,7 @@
 
     /* main menu */
     struct menu_items items[] = {
+        { "Save Favorite", save_favorite},
         { str(LANG_SOUND_SETTINGS),     sound_menu        },
         { str(LANG_GENERAL_SETTINGS),   settings_menu     },
 #ifdef HAVE_FMRADIO
