diff --git a/CHANGELOG b/CHANGELOG
deleted file mode 100644
index 6b32097f7bf1f16371364611ad322e9c7fc078bc..0000000000000000000000000000000000000000
--- a/CHANGELOG
+++ /dev/null
@@ -1,611 +0,0 @@
-0.6.8 (?/?/2010):
------------------
-
-- Fixed compile problem for FreeBSD (its math library lacks a log2()
- function). Also created separate Makefile.freebsd with a couple of
- FreeBSD-specific options.
-
-- Added -N (--largest-new) command to sgdisk. This command creates a single
- partition that fills the largest single unpartitioned block of space on
- the disk.
-
-- Fixed sgdisk man page error: the --change-name option was incorrectly
- listed as --change.
-
-- Added 'h' option to gdisk experts' menu (-C or --recompute-chs in sgdisk)
- to recompute all protective/hybrid MBR CHS values. This option is
- intended to work around a bug in at least one BIOS that prevents the
- computer from booting when the GPT-mandated (but technically illegal)
- 0xFFFFFF CHS value is used as the end point for a protective MBR. The
- recomputed values will be legal (e.g., 0xFEFFFF instead of 0xFFFFFF),
- but incorrect in GPT terms, and will therefore enable at least one
- BIOS to boot with a GPT disk. See http://www.rodsbooks.com/gdisk/bios.html
- for all I know about BIOS/GPT incompatibilities.
-
-0.6.7 (5/1/2010):
------------------
-
-- Undid earlier change, with version 0.6.4, that wiped the MBR boot loader
- when doing MBR-to-GPT conversions. I've now become skeptical that MBR
- boot loaders were causing any real problems on GPT disks, so I'm going
- back to the philosophy of leaving as much alone as possible.
-
-- Fixed bug that caused incorrect reporting of free space on 0-size disks
- (e.g., files of 0 length passed as disk images).
-
-- Fixed bug that caused segfault on some invalid disks
-
-- Fixed bug that caused incorrect partition numbers to be displayed for
- some verify problems.
-
-
-0.6.6 (3/21/2010):
------------------
-
-- Added support for the "no block IO protocol" (referred to as "hide from
- EFI" in GPT fdisk) and "legacy BIOS bootable" attribute bits. See Table
- 19 of the UEFI 2.3 specification (p. 153) for details.
-
-- Changed the sequence in which GPT data structures are written to disk;
- backups are now written first, followed by the main structures. This is
- as recommended in the UEFI 2.3 specification, since it's safer in the
- extremely unlikely event that a RAID array's size is increased and
- there's a power outage mid-write. (If the main structures are written
- first in this case, they'll point to data that's not yet been written;
- but by writing the backups first, the old main structures will still
- point to the valid old backup structures.)
-
-- Protective MBRs now have disk signatures of 0x00000000, to better
- conform with GPT as described in the UEFI 2.3 specification.
-
-- Added alignment information to the summary data produced by the
- 'p' main-menu option in gdisk or the -p option to sgdisk.
-
-- More alignment changes: GPT fdisk now attempts to determine the alignment
- value based on alignment of current partitions, if any are defined. If no
- partitions are defined, a default value of 2048 is set. If the computed
- value is less than 8 on drives over about 596GiB, it's reset to 8, since
- the drive might be a WD Advanced Format unit that requires an 8-sector
- (or larger power-of-2) alignment value for best performance. The
- 2048-sector default provides better alignment in some RAID
- configurations.
-
-- Changed behavior when a backup restore fails. Previously, GPT fdisk
- would create a fresh blank set of partitions. Now it does so only
- if the failure occurs when interpreting the backup's contents; if the
- user typed the wrong filename, the in-memory data structures aren't
- touched.
-
-
-0.6.5 (3/7/2010):
------------------
-
-- Added tests to verify ('v') function and to pre-save checks to look for
- partitions that end before they begin or that are too big for their
- disks.
-
-- Fixed a bug that could cause spurious data to appear in a grown partition
- table.
-
-- Added ability to convert some or all partitions to logical partitions in
- GPT-to-MBR conversion. This feature is limited by the fact that at least
- one free sector must exist immediately prior to each logical partition,
- so it won't do much good if partitions are crammed together. It should be
- possible to convert back to MBR any disk that started that way, provided
- no partitions were added or resized when the disk was in GPT form; and
- disks that were partitioned with Apple's Disk Utility or other tools that
- insert unpartitioned space should also be convertible. CAUTION: THE
- LOGICAL PARTITION CREATION FEATURE DOESN'T TRY TO ALIGN PARTITIONS OR
- PARTITION HEADER DATA TO CYLINDER BOUNDARIES! It's conceivable that some
- older OSes or utilities will object to these disks, although Linux, OS X,
- Windows Vista, and Windows 7 all seem happy with them.
-
-- Fixed bug that caused creation of 0-length file if an incorrect device
- filename was typed.
-
-- The gdisk program now prompts for a device filename if it's called with
- no options. This enables gdisk to do something useful if it's launched by
- double-clicking its icon in a GUI environment.
-
-- Added workaround for bug in some versions of MinGW that caused the
- program to garble input sector numbers.
-
-- The Windows version now works on disks with over-512-byte sectors.
- Tested on a magneto-optical (MO) drive with 2048-byte sectors.
-
-- Added -D (--display-alignment) option to sgdisk, to display sector
- alignment value (by default, 1 for sub-800GiB disks and 8 for disks
- over that size).
-
-- Fixed bug in computation of CHS geometries for protective MBR. This is
- non-critical, since most modern utilities ignore the CHS geometries.
- Concerned users can use the 'n' option on the experts' menu to build new
- protective MBRs with the new algorithm, if desired. (Note that GNU
- Parted, at least, gets this wrong, too.)
-
-- Fixed memory-allocation bug when reading GPT disks with partition tables
- with over 128 entries; could cause program to crash on startup.
-
-0.6.4-2 (2/20/2010):
---------------------
-
-Note: Neither of the following changes affects actual program code, so I've
-left the version number in the program at 0.6.4.
-
-- Altered Makefile to pass user's compiler and linker environment
- variables through.
-
-- Added #include to gpttext.cc to enable it to compile on the latest
- GCC versions (it was failing on at least some 4.4.x compilers).
-
-0.6.4 (2/19/2010):
--------------------
-
-- Added -m (--gpttombr) option to sgdisk, enabling conversion of GPT
- disks to MBR format, with a limit of four partitions total, and of course
- without overcoming the 2TiB limit.
-
-- Added -h (--hybrid) option to sgdisk, enabling creation of hybrid
- MBRs. Fewer options are available in sgdisk than in gdisk, though,
- in order to keep the user interface manageable.
-
-- Fixed off-by-one bug in specification of partition when using the
- -T (--transform-bsd) option in sgdisk.
-
-- Changed the code to create a new MBR unique disk signature whenever a new
- protective MBR is generated (when doing an MBR-to-GPT conversion, when
- using the 'n' option on the experts' menu, or when using the 'o' option
- on the main menu, for example). Previous versions attempted to preserve
- the existing MBR disk signature in most cases, but this resulted in
- values of 0x00000000 whenever an empty disk was partitioned, and often in
- other cases, too. Better to risk changing this value too often than to
- leave multiple disks with 0x00000000 values, I think.
-
-- Added transpose ('t' on experts' menu in gdisk; or -r or --transpose in
- sgdisk) command to enable fine-tuning partition order without doing a
- full sort.
-
-- Added code to clear the MBR boot loader when doing an MBR-to-GPT
- conversion. (This was already done in full-disk BSD-to-GPT conversions.)
- This is done because I've seen a few problem reports that make me think
- some MBR boot loaders freak out and hang the system when they encounter
- GPT disks, and/or they attempt to load a second-stage boot loader stored
- in what is now GPT territory, causing a system hang. Since MBR boot
- loaders don't work on GPT disks anyhow (even GRUB needs to be
- reinstalled), this new wiping behavior shouldn't cause any problems, and
- may prevent a few.
-
-- Fixed bug in Windows version that prevented saving backup files.
-
-- Fixed bug that caused second and subsequent partition numbers in
- prompts in hybrid MBR conversion procedure to be displayed in
- hexadecimal.
-
-- Fixed very obscure potential bug in hybrid MBR/GPT synchronization when
- deleting partitions; code wasn't matching partition lengths correctly,
- which would only affect partitions that start at the same point but have
- different lengths in MBR vs. GPT.
-
-- Fixed bug in the -E option to sgdisk; it was actually returning the
- last free sector, not the last free sector in the largest free block.
-
-- Fixed bug in -t option to sgdisk; it was corrupting partition type
- codes.
-
-- Fixed minor alignment bug in partition summary list ('p' from any menu)
- when partition sizes are between 1000 and 1024 units.
-
-- Backup restore function ('l' on recovery & transformation menu) now
- accepts both backups generated by GPT fdisk and backups created by a
- direct copy (via dd, etc.) of the MBR, main GPT header, and main GPT
- partition table, in that order. ("dd if=/dev/sda of=backup.gpt bs=512
- count=34" will do this on Linux for a disk with a typical-sized GPT table
- of 128 entries.)
-
-0.6.3 (2/3/2010):
-------------------
-
-- Fixed serious data corruption bug on big-endian (PowerPC and similar)
- systems.
-
-- Changed several GPT fdisk Solaris type codes to correct a duplicate
-
-- Corrected error in GPT fdisk type codes for NetBSD LFS and NetBSD RAID;
- they were identical, but I've now changed NetBSD RAID to A906, which
- is unique.
-
-- Added GUID for IBM General Parallel File System (GPFS) partition type
- code. Somewhat arbitrarily set it to use the 7501 number (MBR code 0x75
- is used by IBM PC/IX, so it's at least the right company, by my loose
- numbering rules....).
-
-- Improved GUID generation. Prior versions generated completely random
- numbers for GUIDs. This works, but is technically a violation of the
- spec. Unix versions now employ libuuid to generate GUIDs in a more
- correct way. The Windows version still generates random numbers, though.
-
-- Turned PartTypes class into a derived class of GUIDData, and renamed
- it to PartType.
-
-- Created new GUIDData class, to replace the original GUIDData struct.
-
-0.6.2 (1/29/2010):
-------------------
-
-- The change-type ('t' on main menu) option now changes the partition's
- name *IF* the current name is the generic one for the partition type.
- If the current name is not the generic name, it is NOT changed.
-
-- Fixed bug that caused new protective MBR to not be created when the
- MBR was invalid and the GPT was damaged and the user opts to try to
- use the GPT data.
-
-- Enabled default partition type code of 0700 when creating partitions
- or changing their type codes. (Type 0700, Linux/Windows data, is set if
- the user hits the Enter key alone.)
-
-- Fixed bug in sort ('s' on main menu) option that caused partition
- numbers to begin at more than 1 if the original partition list had
- too many empty partitions before the last one defined.
-
-- Improved code to determine which partition table to load in case of
- CRC mismatches between the partition tables and the stored CRC values
- in the headers.
-
-- Compiles using MinGW (http://www.mingw.org) to create a Windows binary.
-
-- Moved all disk I/O functions to the new DiskIO class. This helps with the
- Windows port; it uses diskio-windows.cc for Windows-specific code,
- diskio-unix.cc for the Linux, FreeBSD, and OS X code, and diskio.cc for
- cross-platform disk I/O code.
-
-- Changed BSD disklabel detection code to be more correct (I think).
- This change has no effect on my test disks, but I hope it'll work
- better on disks with sector sizes other than 512 or 2048.
-
-0.6.1 (1/20/2010):
-------------------
-
-- Fixed bug that returned incorrect disk size on 32-bit versions of
- FreeBSD.
-
-- Fixed bug that prevented FreeBSD version from working on disk image
- files.
-
-- Fixed bug that caused BSD disklabel conversion to fail.
-
-0.6.0 (1/15/2010):
-------------------
-
-- Fixed bug that caused the convert to MBR function to fail.
-
-- Added support for disks with other than 512-byte sectors.
-
-- Created embryonic sgdisk program.
-
-- Fixed bug that caused relative sector numbers entered by users (e.g,
- "+128M") to be misinterpreted as from the start of the range rather than
- from the default value.
-
-0.5.3 (1/4/2010):
------------------
-
-- Fixed bug in display of GUIDs when compiled with some versions of GCC.
-
-- Eliminated warnings caused by additional checks in latest versions of
- GCC. These warnings were harmless, but to eliminate them I've added
- more error checking on disk I/O.
-
-- Eliminated unnecessary warnings about potential data loss if the program
- was launched with the -l option or if writes aren't possible.
-
-- Added code to set the partition boundary value based on the physical
- sector size. (FindAlignment() function.) This function, however, works
- only on Linux, and then only if the BLKPBSZGET ioctl is defined. This
- ioctl is new in kernel 2.6.32 or thereabouts.
-
-0.5.2 (12/31/2009):
--------------------
-
-- Modified partition creation function to begin partitions on 8-sector
- boundaries by default. This improves performance on the new Western
- Digital Advanced Format drives. The new 'd' and 'l' options on the
- experts' menu display and change, respectively, the boundary size.
-
-- Tweaked code to produce fewer warnings on the latest versions of
- GCC.
-
-0.5.1:
-------
-
-- Made some minor edits to the man page.
-
-- Incorporated RPM .spec file changes contributed by Scott Collier
- (boodle11@gmail.com).
-
-- Changed method of locating and loading backup GPT data, to use the
- main header's pointer, if it's valid, rather than seeking to the
- end of the disk.
-
-- Added 'e' option (relocate backup GPT data structures) to the experts'
- menu.
-
-- Fixed bug that prevented recovery of partitions in case of partially
- damaged GPT data (bad main and good backup or bad backup and good
- main header, for instance).
-
-0.5.0:
-------
-
-- Added GPT-to-MBR conversion function. It's very limited, but potentially
- useful in some cases.
-
-- Fixed bug that caused incorrect file sizes to be reported on 32-bit
- Linux, thus causing problems when editing partition tables in disk images
- or when loading GPT backup files.
-
-- Fixed bug that caused bogus CRC error reports when loading backup GPT
- data.
-
-- Reorganized menus. There are now three: the main menu, the experts' menu,
- and the recovery & transformation menu. The last of these has most of the
- items that had been on the earlier versions' experts' menu.
-
-- Added ability to re-load the MBR and generate a fresh GPT from it. This
- is normally identical to quitting and re-running the program, but it
- could be handy if, say, the GPT partitions on a hybrid configuration are
- badly messed up; this will enable using the hybridized partitions as the
- starting point for a new GPT setup.
-
-- The program now generates CHS values for hybrid and GPT-to-MBR conversion
- MBRs. For the moment, the assumption is the maximum number of heads and
- sectors per track (255 and 63, respectively), although the bulk of the
- code supports other values -- it'd just be awkward to enter the data in
- the user interface.
-
-- Fixed minor display bug that caused number of sectors on the disk to be
- shown as 0 on large disks when running 32-bit binaries.
-
-- Reverted 0.4.2's zap (destroy GPT) changes, since I don't want to wipe
- out a valid MBR if the user created that MBR over an older GPT without
- first properly wiping out the GPT, and the user now wants to wipe out
- the GPT.
-
-- Reformatted and edited the man page. Aside from edits related to the
- preceding program changes, I've altered the markup slightly and trimmed
- much of the more tutorial information from the man page to better
- conform to typical terse man page style.
-
-0.4.2:
-------
-
-- Code cleanup.
-
-- Fixed very small formatting bug in display of hex code when a match isn't
- found when converting from an MBR/gdisk hex code to a GUID type code.
-
-- Added the ability to work on disk image files (raw files for virtual
- machines, backup images, etc.). The program assumes that all such disk
- image files have 512-byte sectors.
-
-- Added verification prompt to 'o' main-menu option to avoid accidental
- erasures of all partitions.
-
-- The "destroy GPT data structures" option ('z' on the experts' menu) now
- also destroys all EFI GPT (0xEE) partitions in the MBR.
-
-- Added an extra warning to the "destroy GPT data structures" option if an APM
- or BSD disklabel was detected on the disk.
-
-- Added a buffer flush after destroying GPT data structures, to get the OS
- to read the new (empty or MBR-only) partition table.
-
-- Fixed bug that allowed entry of nonexistent partition numbers when creating
- a hybrid MBR.
-
-0.4.1:
-------
-
-- Code cleanup/re-organization
-
-- Partition creation function ('n' on main menu) now uses the start of the
- largest available chunk of free space rather than the first available
- sector as the default starting sector number. This should enable easier
- partition creation if there are small bits of free space on the disk.
-
-- You can now specify the end point of a partition by using a minus sign,
- in which case the end point is the default value minus the specified
- size. For instance, "-200M" creates a partition that ends 200MiB before
- the default end point.
-
-- You can now specify the start point of a partition by using a plus or
- minus sign, in which case the start point is the specified distance from
- the start (+) or end (-) of free space. This is exactly the same as the
- new rules for entry of the end point, except that the default value is
- set differently.
-
-- Deleting a partition now checks for a matching hybrid MBR partition, and
- if one is found, it's deleted. Any empty space that then surrounds the
- 0xEE (EFI GPT) MBR partitions is then added to the nearby 0xEE partition.
- If no non-0xEE partitions are left, a fresh protective MBR is generated.
-
-- Added hybrid MBR consistency check to the verify ('v') option and to
- pre-write checks. If non-0xEE/non-0x00 MBR partitions without
- corresponding GPT partitions are found, the user is warned. This finding
- does NOT prevent writing the partition table, though.
-
-- Added non-destructive write test when opening the device file, in order
- to detect the problem with FreeBSD being unable to write to disks with
- mounted partitions (or other potential problems).
-
-0.4.0:
-------
-
-- Added support for BSD disklabels. The program can now convert disks that
- use "raw" disklabels, with the caveat that the first partition will
- almost certainly need to be deleted because it'll overlap the main GPT
- header; and convert disklabels contained within a GPT (or a former MBR,
- converted to GPT) partition. In the latter case, the 'b' main menu option
- is used.
-
-- Added support for compiling on FreeBSD.
-
-- Fixed bug that could cause crashes or incomplete sorts when sorting
- the partition table.
-
-- New partitions, including converted ones, now take on the name of the
- partition type as a default name.
-
-- Reorganized some code; created a separate C++ class for GPT partitions
- (GPTPart), which replaced a struct and enabled moving code from the
- bloated GPTData class into GPTPart.
-
-- Fixed a bug that produced spurious warnings about unknown sector sizes
- when loading a backup file.
-
-0.3.5:
-------
-
-Note: This version was not officially publicly released; I wanted to test
-the big-endian support while developing 0.4.0.
-
-- Tweaked the disk type identification code to warn users to re-sync their
- hybrid MBRs when one is detected.
-
-- Tweaked MBR-reading code to ignore 0xEE (EFI GPT) partitions. This will
- only have an effect on a poorly partitioned MBR disk that contains an
- inappropriate EFI GPT partition, or when attempting to recover a
- corrupted disk by using the hybrid MBR for data recovery.
-
-- Added big-endian (PowerPC, etc.) support!
-
-- Added code to identify and warn of the presence of an Apple Partition
- Map (APM) on the disk.
-
-- Enabled MBR conversion code to handle multiple logical partitions.
-
-0.3.4:
-------
-
-- Fixed bug that enabled (possibly accidental) entry of MBR type codes of
- 0x00 in GPTData::MakeHybrid(). The fix also enables entry of default
- type code by pressing the Enter key when prompted. Applied a similar
- fix to the entry of the type code for the second protective partition,
- if one is used.
-
-- Fixed a typo: "sectors" was spelled "sectprs" in one spot!
-
-- Fixed bug that caused default entry for end sector to be refused if an
- initial value using a plus sign (e.g., "+20G") was also refused.
-
-0.3.3:
-------
-
-- Gave users control over the way MBR partitions are assigned to slots in a
- hybrid MBR setup; the original method (putting the 0xEE partition after
- the real partitions) works well for non-boot disks, but both GRUB and
- GRUB2 become confused by this type of setup, so it needs changing.
-
-- Changed "blocks" to "sectors" in GPT and MBR table displays.
-
-- Added "Boot" column to MBR table display; shows an asterisk (*) when the
- partition's status is bootable.
-
-0.3.2:
-------
-
-- Changed __DARWIN_UNIX03 to __APPLE__ as code to enable MacOS X support.
-
-- Added the ability to create a hybrid MBR ('h' on experts' menu). This was
- motivated by my discovery that Windows 7 remains brain-dead when it comes
- to the ability to boot from a GPT disk, at least on BIOS-based machines.
-
-- Added 'z' option to experts' menu, to destroy GPT data structures and
- exit. The intent is to use this feature to enable subsequent partitioning
- of the disk using fdisk or other GPT-unaware tools. (GNU Parted will wipe
- the GPT data structures itself when you create a new MBR ["msdos
- disklabel," in Parted parlance], so using Parted is another option.)
-
-- Slightly altered the effect of the 'o' command on the main menu. It now
- blanks out the protective MBR, as well as the GPT data.
-
-0.3.1:
-------
-
-- Added Mac OS X support, provided as a patch by David Hubbard
- (david.c.hubbard@gmail.com).
-
-- Fixed bug in disksize() function on Mac OS. (Possibly dependent on the
- kernel and/or GCC version.) The disk size, of type uint64_t, was not
- being passed correctly, so I reorganized the function to return it as
- the function's return value rather than as a parameter. This seems to
- work OK on my Mac OS test system and on both 32- and 64-bit Linux
- systems.
-
-- Fixed off-by-one bug in GPTData::FindLastAvailable().
-
-- Fixed bug that caused display of options after a disk-write error.
-
-- Fixed several incorrect MacOS X partition type GUIDs, thanks to Yves
- Blusseau (1otnwmz02@sneakemail.com).
-
-0.3.0:
-------
-
-- Changed version number to 0.3.0, reflecting the fact that I've received
- no significant bug reports and so am elevating the program to "beta"
- status. This change also entailed altering the warning the program
- displays when saving partition table changes.
-
-- Fixed minor bug in CHS geometry of the protective MBR's type EE partition
- (was producing 0x000200 as the start value, but should be 0x000100).
- Should be a non-critical bug since the protective MBR partition
- definition is only there to keep MBR-only disk utilities from messing
- with the disk.
-
-- Added ability to enter GUIDs as single massive strings rather than in
- chunks.
-
-0.2.2:
-------
-
-- Added #include directives required to compile the program using GCC
- 4.4.0.
-
-0.2.1:
-------
-
-- Fixed partition numbering problem in reports of partition overlaps in
- verification function.
-
-- Fixed 1-sector partition size problem when creating new partitions
- (partitions were 1 sector too big when using the +size option).
-
-- Changed BytesToSI() to display values in bytes without decimal points
- (e.g., "512 bytes" rather than "512.0 bytes").
-
-- Added GPTData class member functions to retrieve GPT data structure
- locations on disk; used in my internal-use-only GPT-wiping program.
-
-- Eliminated the "a reboot is recommended" notice after writing the
- partition table.
-
-- Added notice after sorting the partition table to the effect that
- editing /etc/fstab and/or the boot loader files may be required.
-
-- Fixed bug in MBR-reading function that caused 0x0f (Win95 LBA) and 0x85
- (Linux extended) extended partitions to not be read.
-
-- Fixed bug in GetLastSector() (in support.cc) that would have prevented
- correct user entry of over-32-bit sector numbers on 32-bit systems.
-
-- Made some changes/corrections to the partition type list in
- parttypes.cc. Most of these were based on newly-discovered MBR type
- codes for Apple (Mac OS X) filesystems.
-
-- General code cleanup (setting explicit casts, etc.)
-
-0.2.0:
-------
-
-- Initial semi-public release