-0.2.6 (?/??/2012):
+0.4.3 (6/21/2012):
+------------------
+
+- rEFInd now supports compilation using the TianoCore UDK2010/EDK2
+ development kit in addition to GNU-EFI.
+
+- Added new "use_graphics_for" option to control which OSes to boot in
+ graphics mode. (This effect lasts for a fraction of a second on most
+ systems, since the boot loader that rEFInd launches is likely to set
+ graphics or text mode itself.)
+
+- Graphics-mode booting now clears the screen to the current rEFInd
+ background color (rather than black) and does NOT display boot messages.
+ The intent is for a smoother transition when booting OS X, or perhaps
+ other OSes that don't display boot loader messages. In practice, this
+ effect will be tiny for many OSes, since the boot loader generally clears
+ the screen within a fraction of a second of being launched; but the
+ "flicker" of a rEFInd message in that time can sometimes be distracting.
+
+- Filesystem drivers now work on EFI 1.x systems, such as Macs.
+
+- Removed "linux.conf" as a valid alternative name for "refind_linux.conf"
+ for holding Linux kernel options. The kernel developers plan to use
+ "linux.conf" themselves.
+
+0.4.2 (6/3/2012):
+-----------------
+
+- Added a message to install.sh when run on Macs to remind users to update
+ the "scanfor" line in refind.conf if they need to boot BIOS-based OSes
+ via rEFInd.
+
+- Modified install.sh script to be smarter about running efibootmgr on
+ Linux. It now uses the whole path to the rEFInd binary as a key to
+ determine whether an existing entry exists, rather than just the filename
+ portion. If an entry exists and is the first entry in the boot order, the
+ script does nothing to the NVRAM entries. If such an entry exists but is
+ not the default, the script deletes that entry and creates a new one
+ (implicitly making it the first in the boot order). If such an entry does
+ not exist, the script creates a new one (again, making it the first in
+ the boot order).
+
+- Added "dont_scan_dirs" configuration file option, which adds directories
+ to a "blacklist" of directories that are NOT scanned for boot loaders.
+
+0.4.1 (5/25/2012):
+------------------
+
+- Added "scanning for new boot loaders" message to the re-scan function
+ (hitting Esc at the main menu). It usually flashes up too quickly to
+ be of importance, but if the scan function takes a while because of
+ access to a CD that must be spun up, it should make it clear that the
+ system hasn't hung.
+
+- Modified install.sh script to detect rEFItBlesser on Macs, and if
+ present, to ask the user if it should be removed.
+
+- Cleaned up the Make.common file for the filesystem drivers.
+
+- Changed HFS+ driver to return volume label of "HFS+ volume" rather than
+ an empty label. (The driver doesn't currently read the real volume
+ label.)
+
+- Fixed bug that could cause rEFInd to appear in its own menu after
+ running a shell and then re-scanning for boot loaders.
+
+0.4.0 (5/20/2012):
+------------------
+
+- Inclusion of drivers for ISO-9660, HFS+, ReiserFS, and ext2fs. Most of
+ these drivers originated with rEFIt, although the HFS+ driver seems to
+ have come from Oracle's VirtualBox, with some files from Apple. I hadn't
+ included these drivers previously because the build process proved
+ challenging. As it is, they don't work on my Mac Mini, I suspect because
+ the build process with the UDK2010 development kit may not work with the
+ EFI 1.x that Apple uses.
+
+- Addition of support for drivers in the "drivers_{arch}" subdirectory of
+ the main rEFInd binary directory (e.g., "drivers_x64" or "drivers_ia32").
+ Drivers may continue to be placed in the "drivers" subdirectory.
+
+- Added new feature to eject CDs (and other removable media): Press F12 to
+ eject all such media. This function works only on some Macs, though (it
+ relies on an Apple-specific EFI extension, and this extension isn't even
+ implemented on all Macs, much less on UEFI-based PCs).
+
+- Fixed a problem that could cause GRUB 2 to fail to read its configuration
+ file when launched from rEFInd.
+
+0.3.5 (5/15/2012):
+------------------
+
+- Removed the GRUB 2 detection "reciped" added with 0.3.2, since I've
+ received reports that it's not working as intended.
+
+- Added re-scan feature: Press the Esc key to have rEFInd re-read its
+ configuration file, tell the EFI to scan for new filesystems, and re-scan
+ those filesystems for boot loaders. The main purpose is to enable
+ scanning a new removable medium that you insert after launching rEFInd;
+ however, it can also be used to immediately implement changes to the
+ configuration file or new drivers you load from an EFI shell.
+
+- Fixed a bug that could cause the scroll-right arrow to be replaced by the
+ scroll-left arrow under some circumstances.
+
+0.3.4 (5/9/2012):
+-----------------
+
+- Added new configuration file option: "icons_dir", which sets the name
+ of the subdirectory in which icons are found. See the documentation or
+ sample configuration file for a full description.
+
+- Modified Makefile to generate rEFInd binary that includes architecture
+ code -- refind_ia32.efi or refind_x64.efi, rather than the generic
+ refind.efi. This is done mainly to help the install.sh script. The
+ program can be named anything you like on the disk. (The generic name
+ refind.efi is used on unknown architectures.)
+
+- Improved install.sh script: Fixed bug on OS X 10.7 and enable it to be
+ used after building from source code (or via new "make install" Makefile
+ target).
+
+- Improved screen redraws to produce less flicker when moving among the
+ second-row tags or to the last tag on the first row.
+
+0.3.3 (5/6/2012):
+-----------------
+
+- Improved menu navigation:
+ - In graphics mode, left & right arrow keys move left & right, while up &
+ down arrows move between rows.
+ - Page Up and Page Down now move through chunks of visible tags (in both
+ text & graphics modes), jumping from one row to another only when at
+ the edge of the row. In text mode, the "rows" are broken down as in
+ graphics mode, but they aren't visibly distinguished on the screen.
+
+- Improved text-mode use: rEFInd now displays the proper number of entries
+ when first started in text mode and scrolling is done sensibly when too
+ many entries exist to fit on the screen.
+
+0.3.2 (5/4/2012):
+-----------------
+
+- Added the install.sh script to install rEFInd on Linux and Mac OS X
+ systems. This script must be run as root (or via sudo). It requires
+ no options, but on Mac OS X, passing it the "esp" option causes it
+ to install rEFInd on the computer's ESP rather than the default of the
+ currently OS X boot partition. (Under Linux, the default is to install to
+ the ESP.) Note that there may be some unusual cases in which this script
+ will fail to work.
+
+- Does a better job of clearing the screen when launching OSes in text
+ mode.
+
+- Added detection "recipe" for GRUB 2's BIOS Boot Partition.
+
+- Fixed bogus detection of ESPs created by Linux's mkdosfs utility or
+ Windows as bootable partitions when "scanfor" includes BIOS scanning
+ options.
+
+
+0.3.1 (4/27/2012):
+------------------
+
+- Fixed bug that caused spurious "Unsupported while scanning the root
+ directory" messages under some conitions on Macs.
+
+- Modified loader scanning code to sort boot loader entries within a
+ directory by modification time, so that the most recently-modified loader
+ is first among those in a given directory. Thus, if you specify a
+ directory name (or volume name, for loaders stored in the root directory
+ of a volume) as the default_selection, the most recent of those loaders
+ will be the default. This is intended to help with Linux kernel
+ maintenance when using the EFI stub loader; set up this way, the most
+ recent kernel copied to your kernel directory will be the default,
+ obviating the need to adjust the refind.conf file when adding a new
+ kernel. If you want to change the default among those in the default
+ directory, you can use "touch" to adjust the modification timestamp.
+
+- Tweaked code to find loader-specific .icns file so that it finds files
+ for Linux kernels without .efi extensions. In this case, files should be
+ named the same as the kernels they match, but with .icns extensions. For
+ instance, bzImage-3.3.2 should have an icon called bzImage-3.3.2.icns.
+ (The old code would have looked for an icon called bzImage-3.3.icns.)
+
+- Eliminated bogus OS loader tags for filenames that end in ".icns" when
+ the scan_all_linux_kernels option is set.
+
+0.3.0 (4/22/2012):
+------------------
+
+- I'm officially upgrading this project's status from "alpha" to "beta" and
+ giving it a bump from 0.2.x to 0.3.0. This doesn't reflect any major
+ milestone with this version; rather, it reflects my sense that rEFInd has
+ been "out there" for a while, and although I've gotten bug reports,
+ they've been minor and/or have been fixed. The program still has known
+ bugs, but my impression is that it is, overall, usable by ordinary users.
+
+- Added "resolution" option to refind.conf, which enables setting the video
+ resolution. To use it, pass two numeric values, as in "resolution 1024
+ 768" to use a 1024x768 video mode. Note that not all modes are supported.
+ If you specify a non-supported video mode on a UEFI system, a message
+ appears listing the supported video modes and you must then press a key
+ to continue, using the default video mode (usually 800x600).
+ Unfortunately, I don't know the calls to get a list of supported video
+ modes on older EFI 1.x systems (including Macs), so on Macs setting an
+ incorrect video mode silently fails (you keep using the default mode).
+ This makes changing your video mode a hit-or-miss proposition on Macs.
+ CAUTION: It's possible to set a legal video mode that your monitor can't
+ handle, in which case you'll get a blank display until you boot an OS
+ that resets the video mode.
+
+- Fixed (maybe) a bug that caused rEFInd to crash when returning from an
+ EFI shell or other programs on Macs, particularly when rEFInd used
+ graphical mode. I'm not 100% sure this bug is squashed because I still
+ don't understand the cause and I only have one Mac for testing. See
+ comments in the ReinitRefitLib() function in refit/lib.c for more
+ details.
+
+- Added new refind.conf option: scan_all_linux_kernels, which causes Linux
+ kernels that lack ".efi" extensions to be included in scans for EFI boot
+ loaders. This may help integration with Linux distributions that don't
+ give their kernels such names by default. Beware, though: It can detect
+ unwanted files, such as older non-stub-loader kernels or .icns files used
+ to give kernels with .efi extensions custom icons.
+
+- Improved EFI boot loader detection on boards with Gigabyte's Hybrid EFI,
+ and perhaps other EFIs with a buggy StriCmp() function. Files with both
+ ".efi" and ".EFI" extensions should now be detected as boot loaders.
+
+- Fixed a bug that caused rEFInd to fail to scan for drivers if the
+ filesystem driver didn't set a volume name (that is, if the relevant
+ field was set to NULL rather than even an empty string). In such
+ situations, rEFInd now reports the volume name as "Unknown".
+
+0.2.7 (4/19/2012):
+------------------
+
+- After much trial and tribulation, I've overcome a GNU-EFI limitation and
+ enabled rEFInd to load EFI drivers. This feature was present in the
+ original build of rEFIt but was removed in the versions that could
+ compile under Linux, but now it's back -- and still being compiled under
+ Linux! To use it, you should place your drivers in a convenient directory
+ on the ESP (or whatever partition you use to launch rEFInd) and add a
+ "scan_driver_dirs" entry to refind.conf to tell rEFInd where to look. (As
+ always, you should specify the driver directory relative to the root of
+ the filesystem.) Note that you can't launch drivers from another
+ filesystem; they must be on the same volume that holds rEFInd. Those who
+ compile from source code should note that implementing this feature
+ necessitated using a more recent version of the GNU-EFI library. I'm
+ currently using version 3.0p, and version 3.0i does NOT work. I don't
+ know where the change occurred, but you may need to upgrade your GNU-EFI
+ installation.
+
+- Fixed bug that caused rEFInd to show up in its own menu sometimes.
+
+- Added new refind.conf token: also_scan_dirs. When scanning volumes for
+ EFI boot loaders, rEFInd always scans the root directory and every
+ subdirectory of the /EFI directory, but it doesn't recurse into these
+ directories. The also_scan_dirs token adds more directories to the scan
+ list. It defaults to "elilo,boot", but you can set it to any directory or
+ directories you like.
+
+0.2.6 (4/14/2012):
------------------
- Added "volume" keyword to configuration file's stanza options. This
option changes the volume from which subsequent files (specified by
"loader" and "icon") are loaded. You pass "volume" the name/label of the
- FILESYSTEM you want to use (not the GPT partition name).
+ FILESYSTEM you want to use (not the GPT partition name), or a number
+ followed by a colon (e.g., "1:"). The former should reliably identify a
+ filesystem, assuming the name is unique. The latter assigns numbers based
+ on the order in which they're scanned, which may not be as reliable but
+ should work when a volume is unnamed.
- Fixed bug in 0.2.5 that caused failure of Linux initial RAM disk
mapping on some (but not all) systems. Affected computers include at