Index: apps/plugins/resistor.c
===================================================================
--- apps/plugins/resistor.c	(revision 30216)
+++ apps/plugins/resistor.c	(working copy)
@@ -612,15 +612,7 @@
     
     while(!quit) {
         int ret;
-        ret = voltage_menu_selection = rb->do_menu(&voltage_menu, 
-                      &voltage_menu_selection, NULL, false);
-        if(ret<0) break;
-        ret = fwd_current_selection = rb->do_menu(&fwd_current_menu, 
-                      &fwd_current_selection,  NULL, false);
-        if(ret<0) break;
-        rb->lcd_clear_display();
 
-
         rb->splash(HZ*2, "(First) Input the supply voltage:");
         memset(kbd_buffer,0,sizeof(kbd_buffer));
         rb->kbd_input(kbd_buffer, sizeof(kbd_buffer));
@@ -631,6 +623,31 @@
             input_voltage *= 10;
             }
         else { input_voltage *= 100; }
+
+        ret = fwd_current_selection = rb->do_menu(&fwd_current_menu, 
+                      &fwd_current_selection,  NULL, false);
+        if(ret<0) break;
+
+        switch(fwd_current_selection) {
+            case 0: /* 20mA */
+                foreward_current = 2; /* 20mA * 100 */
+                break;
+            case 1:
+                rb->lcd_clear_display();
+                rb->splash(HZ*2, "Input the foreward current, in mA");
+                memset(fwd_kbd_buffer,0,sizeof(fwd_kbd_buffer));
+                rb->kbd_input(fwd_kbd_buffer, sizeof(fwd_kbd_buffer));
+                foreward_current = ((rb->atoi(fwd_kbd_buffer))/10);
+                break;
+        }
+        
+        if(foreward_current == 0) break;
+
+        ret = voltage_menu_selection = rb->do_menu(&voltage_menu, 
+                      &voltage_menu_selection, NULL, false);
+        if(ret<0) break;
+
+        rb->lcd_clear_display();
                 
         switch(voltage_menu_selection) {
             case 0: /* 2v */
@@ -652,21 +669,8 @@
                 led_voltage = 460;
                 break;
         }
-        switch(fwd_current_selection) {
-            case 0: /* 20mA */
-                foreward_current = 2; /* 20mA * 100 */
-                break;
-            case 1:
-                rb->lcd_clear_display();
-                rb->splash(HZ*2, "Input the foreward current, in mA");
-                memset(fwd_kbd_buffer,0,sizeof(fwd_kbd_buffer));
-                rb->kbd_input(fwd_kbd_buffer, sizeof(fwd_kbd_buffer));
-                foreward_current = ((rb->atoi(fwd_kbd_buffer))/10);
-                break;
-        }
-        
-        if(foreward_current == 0) break;
 
+
         rb->lcd_clear_display();
         
         resistance = (input_voltage - led_voltage) / foreward_current;
