Index: normal/menu.c =================================================================== --- normal/menu.c (revision 1717) +++ normal/menu.c (working copy) @@ -420,6 +420,17 @@ first--; print_entries (menu, first, offset); } + else if (first==0) + { + // Highlight the last entry + offset = menu->size - 1; + if (offset > GRUB_TERM_NUM_ENTRIES - 1) + { + first = offset - (GRUB_TERM_NUM_ENTRIES - 1); + offset = GRUB_TERM_NUM_ENTRIES - 1; + } + print_entries (menu, first, offset); + } break; case 14: @@ -440,6 +451,13 @@ print_entries (menu, first, offset); } } + else + { + // Highlight the first entry + first=0; + offset=0; + print_entries (menu, first, offset); + } break; case '\n':