                 /*   Menu handler   */
                 /*********************/
                 if(digitalRead(buttonUp) == LOW) {
-                    menu_id++;
-                }
-                else if(digitalRead(buttonDown) == LOW) {
                     menu_id--;
-
 #ifdef USE_DIVERSITY
                     if(!isDiversity() && menu_id == 3) { // make sure we back up two menu slots.
                         menu_id--;
                     }
 #endif
+                }
+                else if(digitalRead(buttonDown) == LOW) {
+                    menu_id++;
                 }
 
                 if (menu_id > MAX_MENU)

            }
            else if(digitalRead(buttonUp) == LOW) {
                if(editing == -1) {
                    menu_id++;
#ifdef TVOUT_SCREENS
                    if(menu_id == 2) {
                        menu_id++;
                    }
#endif
                }
                else { // change current letter in place
                    call_sign[editing]++;
                    call_sign[editing] > '}' ? call_sign[editing] = ' ' : false; // loop to oter end
                }

            }
            else if(digitalRead(buttonDown) == LOW) {
                if(editing == -1) {
                    menu_id--;

#ifdef TVOUT_SCREENS
                    if(menu_id == 2) {
                        menu_id--;
                    }
#endif
                }

                in_menu = 0; // exit menu
            }
            else if(digitalRead(buttonUp) == LOW) {
                menu_id--;
            }
            else if(digitalRead(buttonDown) == LOW) {
                menu_id++;
            }

            if(menu_id > useReceiverB) {
