1
1
Fork 0
mirror of https://github.com/pbatard/rufus.git synced 2024-08-14 23:57:05 +00:00
Commit graph

358 commits

Author SHA1 Message Date
Pete Batard
af53d11718 [misc] add a cheat mode to not lock the physical drive during partitioning and formatting
* In some circumstances, this *might* help with the infamous #312 issue, though
  I will still recommend to figure out which application is keeping a lock instead
  of trying to cheat...
2015-10-01 22:22:20 +01:00
Pete Batard
a9b681976a [ui] enable some settings and cheat modes to be persisted
* Currently, the user settings that are persisted are:
  - Advanced mode (UI)
  - Timestamps preservation (Alt-T)
  - Proper unit Display (Alt-U)
  - USB debug (Alt.)
  - Fake drives detection (Alt-B)
  - Dual UEFI+BIOS for Windows images (Alt-E)
  - Force Large FAT32 formatting (Alt-L)
  - VMWare Disk Detection (Alt-W)
* Settings that are *NOT* persisted include:
  - UDB HDD listing (too dangerous!)
  - NTFS compression (Alt-N)
  - ISO/Joliet/Rock-Ridge (too confusing if not reset)
  - Disabling of size limits (Alt-S)
* Closes #436
2015-09-17 00:20:22 +01:00
Pete Batard
ff9eae4e6d [vhd] fix broken save to VHD cheat mode
* vhd_save wasn't static, which of course created all kind of issues
  when the VHD save thread tried to use it while it was being freed...
* Closes #591
2015-09-04 14:15:22 +01:00
Pete Batard
5024e7f65e [internal] refactor iso_report -> img_report
* Also set rufus-next to 2.4
2015-09-02 23:20:00 +01:00
Pete Batard
d1eccbd107 [togo] fix bcdboot errors
* Closes #558
2015-08-23 17:03:35 +01:00
Pete Batard
5004374277 [misc] update to VS2015 and fix VS code analysis issues
* Also update Bled to latest, as well as build scripts
* Note: Considering that Visual Studio 2015 is both freely and legally
  available for anyone who wants to use it to compile Rufus, starting
  with this commit, I will NOT be supporting any other version of Visual
  Studio but 2015.
2015-08-10 23:30:23 +01:00
Pete Batard
3ccae1d2e2 disable MS-DOS creation for Windows 10 or later
* Microsoft removed the diskcopy.dll that contained the MS-DOS floppy image
  Not a big loss, since we have FreeDOS... ;)
* Closes #545
* Also apply a long overdue refactoring for boot and target types
* Also update the README to add an icon
2015-07-01 21:26:41 +01:00
Pete Batard
c95910e268 [misc] add MD5 and SHA-1 computation for current image
* Uses the Alt-M cheat mode for now
* Closes #475
2015-06-29 23:43:49 +01:00
Pete Batard
477674016e [core] make sure the system disk is never listed
* When using VHD or VMDK drives, it was possible for the system disk to be listed.
* Closes #541
2015-06-27 22:12:30 +01:00
Pete Batard
cc6234296d [togo] don't apply the 'set internal disks offline' policy
* This creates issue due to dism incompatibilities between Windows versions
  and some users are puzzled why they don't see their internal disks.
* Also make the bcdboot call more robust by using the system one if the USB one fails
* Also fix small issues in RunCommand() and MountVolume()
2015-06-24 20:00:20 +01:00
Pete Batard
4f0e8a24a8 [vhd] add cheat mode to save the current device to VHD
* Alt-V = Save to VHD
2015-06-07 22:51:54 +01:00
Pete Batard
eee9458984 v2.1 (build 649)
* Reduce log verbosity on format tasks
* Also update "lost translators" list
2015-03-23 22:18:29 +00:00
Pete Batard
7f621b9648 [core] enable the installation of a bare UEFI:NTFS in advanced mode
* Closes #468
* Also prevent drives with UEFI:NTFS from being listed as multi-partitions
* Also add a label for the UEFI:NTFS FAT partition
* Also fix internal chver script
2015-03-18 21:34:28 +00:00
Pete Batard
66edd53b2c [core] add x86_32 boot for UEFI:NTFS
* NB: This increases the compressed executable size by 25K :(
* Also set rufus-next to 2.1
2015-03-16 20:34:04 +00:00
Pete Batard
528add160f [core] fix creation of Windows 10 Preview x32 UFDs
* Rufus was detecting the ISO as needing the Windows 7 EFI workaround
  despite the presence of bootia32.efi
* Closes #462
2015-03-11 21:45:06 +00:00
Pete Batard
000f60c535 [core] improve support for multipart install.wim
* Closes #450
2015-02-26 23:47:20 +00:00
Pete Batard
785150dcb2 [core] fix "Requesting Disk Access" issue with Syslinux/NTFS
* See http://reboot.pro/topic/17902-rufus-v130-has-been-released/?p=190958
* Also fix non continuation of format operation after Syslinux has been downloaded
* Also fix missing Syslinux installation for ReactOS
2015-02-26 00:15:13 +00:00
Pete Batard
d22933636c [core] fix precedence of Syslinux over Grub
* Closes #449
* Also fix Coverity builds
2015-02-25 01:45:47 +00:00
Pete Batard
1dc55596d5 [grub] update Grub4DOS to 0.4.6a
* Also fix Grub4DOS and Grub2.0 versioning issues
* Also ensures that operation gets canceled on missing download
* Also fix German translation and remove trailing whitespaces in .loc file
* Also fix inverted display status for VMWare disk detection
2015-02-16 22:29:23 +00:00
Pete Batard
e4e9e87768 [misc] handle multipart install.swm Windows images
* Closes #437
2015-02-09 19:34:41 +00:00
Pete Batard
1c322aba56 [misc] drop the micro from the version
* Closes #439
2015-02-08 22:59:09 +00:00
Pete Batard
b830c040d2 [misc] fix XP compatibility
* MinGW's gcc 4.9.2 seems to implement a broken "%lld" format 64 bit integer is
  followed by more variables and the app executes on XP => use PRI macros
* Also fix partition ID being ignored when using Rufus MBR
* Also fix some global vars shadowing and add other improvements
2015-01-28 23:22:11 +00:00
Pete Batard
5d8483c359 [togo] fix zeroing of MSR
* Also fix broken debug messages
2015-01-26 23:20:39 +00:00
Pete Batard
fdcb17aa7a [misc] pocketful of enhancement and fixes - part 3
* Add Windows To Go tooltips
* Set UEFI:TOGO partition type to EFI System Partition
* Improve apply-image progress report
* Fix MBR analysis for 4k disks
* Do not select Rufus MBR for Windows To Go
2015-01-22 22:31:34 +00:00
Pete Batard
4b76cb2555 [togo] Add Windows To Go support - part 4
* Ignore partitions we don't care about
* Fix issues with AltMountVolume()
* Try to support 4k drives when setting up MS EFI partition
* Zero the start of the MSR partition to prevent leftover detection
* Fix unwanted use of MBR hidden sectors and redundant CloseHandle()
* Fix addon of BIOS compatibility extra partition
* Print apply image progress to info box
2015-01-20 21:54:29 +00:00
Pete Batard
ed9fae7c81 [togo] Add Windows To Go support - part 2
* Enable the creation of MSR and MS EFI partition in GPT mode
* Closes #432
2015-01-20 02:56:17 +00:00
Pete Batard
ec761dfb41 [core] refactor CreatePartition()
* Also add groundwork for optional creation of MSR (see #432)
* Also fix a few minor issues
2015-01-19 01:23:32 +00:00
Pete Batard
032d4413c8 [togo] Add Windows To Go support - part 2
* Closes #126
* Only supported on Windows 8 or later for now
* Also fix MinGW and WDK compilation issues
2015-01-16 01:53:24 +00:00
Pete Batard
295650a8b4 [togo] Add Windows To Go support - part 1
* Add apply support to WIM image handling
* Requires Windows 8 or later (Windows 7+ for WIM API support but Windows 8+ for ISO mount)
* Also fix an issue for Windows 7 x64 EFI mode
2015-01-15 01:45:10 +00:00
Pete Batard
3444a48fce [ui] display ToGo radio selection according to ISO content
* Also simplify EFI detection and reporting
2015-01-13 02:11:57 +00:00
Pete Batard
a327bb114c [ui] Remove the separate progress dialog
* Closes #125
* Also provide more intuitive info for bad blocks check
* Also update Bled to latest to enable cancelling
2015-01-01 23:39:28 +00:00
Pete Batard
e90eaa4abc [grub] add GRUB 2.0 versioning and enable external core.img download
* Closes #419
* Also updated Bled to latest
2014-12-30 19:46:13 +00:00
Pete Batard
7599715ae6 [cmp] add decompression support
* Adds .Z, .gz, .lzma, .xz and .bz2 decompression support for DD images
  using the Bled library (https://github.com/pbatard/bled).
* Closes #269
2014-12-29 20:34:41 +00:00
Pete Batard
3f0e71f3ba [efi] fix incorrect offset for UEFI:TOGO partition
* Also remove the use of hardcoded value for the size of the UEFI:TOGO
  partition and fix a WDK warning.
2014-12-21 01:56:36 +00:00
Pete Batard
d81f83c110 [core] enable UEFI NTFS support
* This allows no-sweat UEFI support of Windows installation ISOs
  that contain a >4GB file for instance
* This is done through UEFI:TOGO (https://github.com/pbatard/uefi-togo)
  and the efifs NTFS driver (http://efi.akeo.ie)
* Closes #414
* This will also be part of our implementation of #126
2014-12-20 00:22:00 +00:00
Pete Batard
420db67ce1 [misc] add dual UEFI/BIOS cheat mode for Windows
* Suggested by Jacob Boyce
2014-12-18 16:29:03 +00:00
Pete Batard
ea28080e0a [core] fix write error when using non sector aligned DD images
* Closes #410
2014-12-03 21:28:24 +00:00
Pete Batard
8b47e95eb5 [grub] switch to the more compatible Grub 2.00-22
* Also enable Old BIOS fixes with Syslinux, Grub installation and fix related UI issues
* Also add a check to confirm that Grub SBR will fit
2014-11-18 23:49:29 +00:00
Pete Batard
b3947fc026 [grub] add Grub 2.0 support
* Also moves secondary Grub boot record as a resource
* Also fix a typo in README.txt and update signtool path
* Closes #340
2014-11-17 23:41:46 +00:00
Pete Batard
306191fb85 [grub] add Grub4DOS support
* Also adds some stubs for Grub 2.0
* Also add a note about VS2013 CE in the readme
* Addresses the first part of #340
2014-11-14 23:46:56 +00:00
Pete Batard
2be12ff3b6 [ui] use "Segoe UI" as default font on Vista and later
* Greatly improves the display of non western character sets, such as CJK.
* Note: Since I'm no longer willing to go the extra mile for XP, the way we
  handle the non availability of the Segoe font there is by doing the lazy
  thing and duplicating all our UI resources, in a similar way as what we do
  for RTL, and setting them with the old "MS Shell Dlg".
* Also update some Syslinux V5 refs to Syslinux V6.
* Closes #308
2014-11-12 02:39:12 +00:00
Pete Batard
6ca024ae3b [syslinux] update Syslinux to v6.03
* Also add experimental support for Syslinux/NTFS
* Closes #391
2014-11-11 19:54:05 +00:00
Pete Batard
d46342c16c [core] ensure AutoMount is enabled while the app is running
* Having AutoMount disabled when a Fixed drive is being used can
  result in a failure during formatting (issue #386).
* Also set explicit FILE_ATTRIBUTE_NORMAL flag an normalize CreateFile usage
* Closes #386
2014-11-11 19:17:39 +00:00
Pete Batard
b6a52756cd [misc] fix the display of "task x/y" when formatting
* Using the famous URS™ (Under Rug Swept) technology
* Closes #182
2014-10-31 19:03:51 +00:00
Pete Batard
91565477ed [core] fix formatting for drives with nonstandard sector size
* Issue #385
* Also bump version to 1.4.11
2014-10-28 19:19:17 +00:00
Pete Batard
45714cf5fb [ui] UI fixes and improvements
* Fix missing DD-Image option when no drive is present
* Prevent formatting of a drive when using an image residing on same drive
* Fix ignored bootable checkbox when using a DD-Image
* Fix wrong title for error messages (due to too many concurrent loc messages)
2014-08-09 00:10:12 +01:00
Pete Batard
79a871be63 [core] improve handling of DD images and formatting task order
* Add logic to mount/remount a DD image if it contains a partition we can handle
* Clear GPT structures before copying DD image in case it doesn't overwrites them
* Add a call to refresh the drive layout after copying a DD image
* Move the unlocking of logical drive further down. This may help with the
  infamous "device in use by another process" error.
2014-08-07 01:45:46 +01:00
Pete Batard
f6ab32c95d [misc] fix a crash when scanning a DD image with no UFD plugged in
* Also set the block size to 512 when scanning MBR and PBR
* Closes #352
2014-08-06 23:17:20 +01:00
Pete Batard
60c66ef813 [misc] fix division by zero if the sector size is misreported
* It looks like some disks may report a sector size of zero
* Hopefully, this will address #352 (but some report about the
  detected sector size from people observing the crash would be nice)
2014-08-03 19:34:01 +01:00
Pete Batard
04bd5116a7 [vhd] add backup to uncompressed VHD image
* Part of #321
* NOTE: This feature will be enabled after the 1.4.8 release
2014-05-23 01:03:01 +01:00
Pete Batard
bfa1656488 [core] Add VHD source image support
* As part of #321
* Also improve FileDialog so that it can support multiple extensions
* Also fix a typo in rufus.loc
2014-05-22 01:52:25 +01:00
Pete Batard
9df63b3b2a [loc] update translation base to v1.0.12
* Also change UM_ISO_ constants to the more generic UM_PROGRESS_
2014-05-19 23:25:00 +01:00
Pete Batard
b6bc17b7f4 [core] add KolibriOS support
* Closes #331
2014-05-15 21:17:12 +01:00
Pete Batard
7a3fb515ea [misc] more DLL handling improvements
* also set rufus-next to 1.4.8
2014-05-13 00:50:44 +01:00
Pete Batard
266599e6fd [misc] fix various Coverity issues
* update DLL load/unload
* fix resources not being freed and potentially unsafe calls
* add extra checks
2014-05-10 22:20:22 +01:00
Pete Batard
f78eb4de99 [misc] fix FAT32 cluster boundaries and add cheat mode to force DD
* Closes #310
* Alt-I can now be used to disable ISO support. This is meant to be
  used for dual ISO/DD images so that DD (disk image) mode will be used
* Also issue a message in the log to indicate whether slow or quick format is used
* Also change the cheat mode keys for force update and proper unit to C and U
2014-04-13 16:13:59 +01:00
Pete Batard
3462ae1062 [misc] set default size for ReFS and fix multiple other issues
* ReFS only applies for drives that are larger than 512MB
* Also fix error handling and messages in format.c
* Also add Alt-Q cheat mode for proper size units, and improve human readable size output
2014-04-02 22:47:35 +01:00
Pete Batard
b343d9b86d [misc] fix issues with unpartitioned drives and bad blocks reports
* Listing an unpartitioned could result in all controls besides
  drive selection dropdown being blank
* The bad blocks report was not displaying the right values
* Also update version to Rufus next
2014-03-29 01:57:19 +00:00
Pete Batard
5519212dd3 [core] improve drive geometry detection
* Try IOCTL_DISK_GET_DRIVE_GEOMETRY_EX if IOCTL_DISK_GET_DRIVE_GEOMETRY fails in Large Fat32 code
* Report actual IOCTL errors
* Use a larger buffer for geometry
* Also add (guessed) FCC_DEVICE_NOT_READY handling to FormatEx
2014-03-29 00:17:41 +00:00
Pete Batard
94ce19d11f [ui] display size in the dropdown entry
* Also remove the "(Default)" from the FS selected, in the log messages
2014-03-01 00:09:40 +00:00
Pete Batard
07d5a61f2a v1.4.4 (build 425)
* Also ensure that the format prompt is being closed after bad blocks check is cancelled
2014-02-26 19:31:07 +00:00
Pete Batard
b83b087b52 [misc] factorize SizeToHumanReadable() and ensure log sizes are in English
* Also use an allocated buffer for DD operations
2014-02-17 23:15:09 +00:00
Pete Batard
cd4dd3cc47 [img] add a retry for DD Images
* Also try to ignore autorun.inf issues from idiotic antivirus solutions, when writing ISOs
* Also remove the columns in the English labels (improves high DPI display)
* Also update additional ISO related messages to make them more generic
2014-02-09 23:38:16 +00:00
Pete Batard
89a7a3deb1 [core] add uncompressed DD image support
* Also fix an issue with hotplug due to WM_DEVICECHANGE being filtered out
* Also improve AnalyzeMBR() and prevent failure on WriteMBR
* Also fix a couple issues with ISO and Syslinux handling
* Also remove "smart" uncheck of disabled checkboxes - not worth it
2014-02-09 02:54:07 +00:00
Pete Batard
f424229e0f [misc] add NTFS compression support
* Only as a cheat mode (Alt-N)
* Also fixes inconsistent MBR partition numbering
* Also update a comment in vhd.c about callback progress (thanks to Erwan)
2014-01-31 02:51:28 +00:00
Pete Batard
8ae158ba22 [loc] add support for right-to-left languages
* Closes #192
2014-01-24 02:46:06 +00:00
Pete Batard
3ae7ec4af5 [core] detect, report and warn when multiple partitions are in use
* Closes #191
* Also fix various minor warnings
2014-01-21 23:09:30 +00:00
Pete Batard
d887978192 [core] Fix for Get/SetThreadUILanguage() not being available on XP
* This addresses the issue reported in #274:
  Unable to access kernel32 DLL: [0x0000007F] The specified procedure could not be found.
* Problem was introduced in 897becd290 which was added for #189.
2014-01-21 10:45:49 +00:00
Pete Batard
14fbbfaa2e [efi] zero the MBR when MBR/UEFI is used
* This ensures that an MBR/UEFI UFD can only ever be booted in EFI mode
* Also fix an issue where the same drive was not properly detected ("U:" vs "U:\")
* Also update ReactOS copyright and fix a warning from Cppcheck in parser.c
2014-01-11 00:19:03 +00:00
Pete Batard
d828500af7 [misc] Fix various issues
* Attempt to remount the drive in case of failure (Closes #270)
* Minor fixes to localization
* Fix errors not being properly reported in DownloadFile()
* Also update ChangeLog.txt for beta
2014-01-05 19:54:19 +00:00
Pete Batard
573ea45640 [core] add support for bare ReactOS boot record installation
* A new "ReactOS" is now available under "Create a bootable disk" when running in advanced mode.
* Using this option will install the ReactOS bootblocks (MBR & FAT PBR) _only_.
  You can then copy freeldr.sys and freeldr.ini to make the drive bootable.
* Also move Rufus MBR installation to ms-sys, and remove mbr.bin resource.
* Also add Rufus MBR detection, remove duplicate records and display MBR type on drive detection
* Also move PBR and MBR analysis calls to drive.c and add a drive.h header
* Also make extraction of embedded loc file more robust
2014-01-05 01:39:41 +00:00
Pete Batard
83a9ec472c [core] fix slowdown when copying ISO files
* This slowdown was introduced in 897becd290 as the use of
  SetThreadUILanguage apparently incurs a massive performance drawback.
* Closes #259
* Also fix a possible issue where the blocking operation message could appear twice
* Also improve the French translation
2013-12-28 01:27:09 +00:00
Pete Batard
36693d2144 [core] detect memory cards in card readers
* Also remove drives with no media from the list
* Closes #18
2013-12-20 18:32:10 +00:00
Pete Batard
897becd290 [loc] set chkdsk and format output to use English locale
* Also fix percentage not being displayed when using slow format
* Also use GetUserDefaultUILanguage() rather than GetUserDefaultLCID()
  to get the user preferred locale.
* Closes #189
2013-12-20 03:20:07 +00:00
Pete Batard
18c9df18b5 [loc] set log messages to use English locale
* This is done to ensure I can understand logs that are sent to me,
  even when a non English locale is used.
* Closes #188.
2013-12-19 23:56:40 +00:00
Pete Batard
f3cf32f8d8 [loc] use a direct table for the messages
* More efficient and also the first step for addressing #188
2013-12-18 01:20:44 +00:00
Pete Batard
d2b623fbfa [efi] add NTFS support
* As reported at http://www.eightforums.com/tutorials/15458-uefi-bootable-usb-flash-drive-create-windows-27.html#post309665
  and http://forums.mydigitallife.info/threads/46981-Install-Win8-Windows-8-1-UEFI-With-a-Over-sized%28over-4GB%29-install-wim
  it is actually possible to boot and install an EFI system from an NTFS drive
* Closes #228
2013-12-11 19:00:57 +00:00
Pete Batard
34f467a26e [format] only clear the extra 1MB for large FAT32
* Clearing that extra MB can take a long time on slow drives
2013-12-06 23:07:30 +00:00
Tom Thornhill
a5f98d636f [format] fix large FAT32 format for GPT drives
* Also set FSCTL_ALLOW_EXTENDED_DASD_IO before locking a drive
* Closes #181
2013-11-23 22:55:17 +00:00
Pete Batard
fcf16fed25 [iso] update libcdio to latest
* Also remove MSG_176 from English version
* Also perform additional cleanup and remove a Clang warning
* Closes #224
2013-11-23 22:09:39 +00:00
Pete Batard
aa0bf0ee2b [core] add HDD vs UFD detection
* Initial scoring to try to differentiate UFDs from HDDs (#219)
* Also improve GetDriveLetter() and add a global for fixed vs removable
* Also fix a bug with reporting of VID:PID with multiple devices
* Also fix a warning in localization
2013-11-14 01:21:50 +00:00
Pete Batard
59496e53c0 [misc] warn about UDF formatting times and 64k MS-DOS
* Closes #149
* Closes #180
2013-10-31 22:59:53 +00:00
Pete Batard
5354d2f6ca [iso] sanitize invalid FAT & NFTS filenames
* Also fix support for labels containing double quotes
* Closes #135
* Closes #193
2013-10-27 00:05:54 +01:00
Pete Batard
df06727416 [loc] add localization support
* This is a merge up to commit bd319269aa of the localization branch
* Also fixes Clang warnings
2013-10-15 23:25:54 +01:00
Pete Batard
5b2e4d1721 [ui] prevent flicker on large FAT32 format.c
* Also convert 1.4TB FAT32 autolabel to 1_4TB rather than 14TB and
  use 2 decimal points rather than 1
2013-09-22 03:54:50 +01:00
Pete Batard
2945389edc [core] fix large FAT32 formatting for > 1TB disks
* Closes #159
2013-09-22 03:28:56 +01:00
Pete Batard
4ac182830d [core] add UDF filesystem support
* Only supported on Vista or later
* Also disable exFAT for XP (requires a KB => not worth it)
* Also improve display of partition data for type 0x07
* Also fix and issue where exFAT/UDF would try to modify PBR
* Also logically move and simplify some of the code
* Closes #157
2013-07-09 00:14:29 +01:00
Pete Batard
d81ca7de24 [core] reinstate the call to DeletePartitions()
* But use IOCTL_DISK_CREATE_DISK and not IOCTL_DISK_DELETE_DRIVE_LAYOUT
* Also improve messaging and increase detection timeout to 15 seconds
2013-07-05 22:20:46 +01:00
Pete Batard
967ad1da33 [core] remove the call to IOCTL_DISK_DELETE_DRIVE_LAYOUT
* As per issue #122, this creates problems when formatting a drive in FAT16
* Also remove an unnecessary backslash in icon.c
2013-07-04 22:51:15 +01:00
Pete Batard
6be21bbdbc [core] more drive handling improvements
* Use retries when locking the volume
* Wait for volume availability after partitioning
* Don't halt on errors that can be ignored
* Other small improvements and fixes
* The above should help with addressing #122
2013-06-25 18:39:07 +01:00
Pete Batard
cd5665881c [core] drive handling improvements
* Use IOCTL_DISK_UPDATE_PROPERTIES after partitioning
* Use IOCTL_DISK_DELETE_DRIVE_LAYOUT to invalidate partitions before formatting
* Fix handling of unpartitioned drives
* Increase delay after partitioning
* All of the above should help with the infamous #122
* Also fix display of error messages in ms-sys' file.c as well as stdio.c
* Also add commandline option -f to list fixed drives
2013-06-25 02:55:25 +01:00
Josh Soref
fe3b1eb6f6 [misc] fix spelling mistakes
* Closes #147
2013-06-22 01:15:36 +01:00
Pete Batard
df5bce297d [syslinux] initial Syslinux v5 support
* Use .bss and .sys from Syslinux v5.10
* Advanced options allow you to choose between v4 and v5
* Rufus does not currently copy any ldlinux.c32 to the target
2013-06-14 01:55:48 +01:00
Pete Batard
e1ff2a5273 [misc] improve messages and dialogs 2013-06-06 23:40:37 +01:00
Pete Batard
22808893bc [misc] small enhancements
* Add detection for user cancellation during between atomic format operations
* Clear existing PBR along with MBR/GPT data
* Improve log messages
2013-06-03 19:55:23 +01:00
Pete Batard
26f807530d [iso] fix broken bootmgr detection
* Closes #144
* Also fix broken WDK compilation
2013-05-19 23:02:16 +01:00
Pete Batard
4da36fa321 [core] low level drive handling redesign
* Better split of physical vs logical
* Add handling of unmounted volumes by GUID
* Force large FAT32 cheat mode
* Improve user messages and fix some UI issues
2013-04-08 00:10:58 +01:00
Pete Batard
63e6c02f02 [core] allow detection and format of "raw" drives
* eg. GPT drives with no partitions were not enumerated by default
* fixed disk mode needs to be enabled for this detection to occur
* also fix the unwanted use of a drive letter in GetDrivePartitionData
* also add a check for going over MAX_DRIVES
* also fix improper separator line in FreeDOS menu due to UTF-8 source
* closes #124
2013-02-10 21:56:21 +00:00
Pete Batard
c51bf5ce45 [misc] set rufus-next to 1.3.3, update copyright
* update copyright year
* switch relevant files to UTF-8 (without signature).
  It's 2013 for crying out loud:  if your file editor or file viewer
  can't handle plain UTF-8, go back to the 1980s!
* also rename autogen.sh to bootstrap.sh
2013-02-02 15:47:56 +00:00
Pete Batard
0cc39d0222 [efi] add mbr UEFI marker for partition scheme reselection
* without the marker, an UFD created as MBR for UEFI will be seen
  as MBR for BIOS + UEFI. We want Rufus to be able to select the
  settings that were used for the drive creation.
* Also hides #116 under the carpet and fix non RUFUS_DEBUG compilation
2013-01-27 20:56:57 +00:00
Pete Batard
647d9f18ad [misc] refactoring and cleanup - part 2
* add GetResource() function call to handle resource loading and
  revert 98ff7a931a
* add separate BootCheck() call
* better handling of passes tooltip
* remove superfluous backslashes
* fix standalone EFI support
* add GPL v3 license file and update README.txt
2013-01-25 01:56:28 +00:00
Pete Batard
bba1772940 [misc] refactoring and cleanup - part 1
* add stdfn.c and move the relevant standard calls there
* move most of GetDriveInfo() to drive.c
* rename IDC_DOS/hDos to IDC_BOOT/hBoot
2013-01-24 21:30:11 +00:00
Pete Batard
c8acf1b84a [misc] cleanup and refactoring + fix WIM 7z minor issue
* remove hardcoded path from WimExtractFile_7z
* move some drive related functions to drive.c
* cleanup
2013-01-22 02:40:43 +00:00
Pete Batard
0196de6f4d [efi] add Windows 7 EFI support for XP and Vista
* Requires 7-Zip for WIM extraction as wimgapi.dll is not available
* Also add more comprehensive choice between MBR/GPT and BIOS/UEFI
2013-01-20 22:46:11 +00:00
Pete Batard
84e4aecfcd [efi] add support for Windows 7 UEFI boot
* Add WIM file handling in vhd.c to extract bootx64.efi
* x64 only, since Microsoft does not provide Win7 x86 EFI support
2013-01-19 04:04:54 +00:00
Pete Batard
997c0a0f28 [gpt] add support for GPT partitioning and EFI boot
* Contains the bulk of the code required to address #11
* Tested with Windows 8 Pro x64 (en-gb_windows_8_x64_dvd_915412.iso)
  and Arch Linux (archlinux-2013.01.04-dual.iso) against an UEFI 2.1 BIOS
* Also fixes missing status report beta versions check
2013-01-18 01:39:24 +00:00
Pete Batard
638f7876c4 [format] set read-only checkdisk error as benign
* Closes #106
2012-12-13 23:50:23 +00:00
Pete Batard
a352ad019d [sl] update to syslinux 4.06
* Also fixes MSVC 64 bit warnings in format.c and iso.c
2012-11-04 00:29:24 +00:00
Pete Batard
22800bb8a5 [format] add large FAT32 support
* Based on fat32format from Ridgecrop Consultants Ltd:
  http://www.ridgecrop.demon.co.uk/index.htm?fat32format.htm
* Initial implementation by Tom Ehlert of DriveSnapshot:
  http://www.drivesnapshot.de/en/index.htm
* Closes #101
2012-11-03 17:40:33 +00:00
Pete Batard
94851dec7d [misc] fix a potential WinPE 1.0 bug and improve ISO labels
* WinPE 1.x patch used rdisk(!) instead of rdisk(1)
* Remove trailing spaces on ISO labels
* Remove unnecessary comment during format
2012-05-31 00:49:28 +01:00
Pete Batard
372b89ba3a [misc] address various TODOs and improve UI
* display comprehensive partition information
* improve tooltips
* remove TODOs that are no longer relevant
2012-05-29 17:47:24 +01:00
Pete Batard
bf2cb0bd88 [ui] add advanced mode
* Adds "bare" Syslinux, Rufus MBR and disabling of fake USB detection options
2012-05-17 22:56:19 +01:00
Pete Batard
2b87a37789 [misc] fix extraction of non Joliet ISO9660 files
* Closes #82
2012-05-16 12:18:48 +01:00
Pete Batard
937dde6bff [misc] v1.1.6 -> v1.1.7 bugfix patch
* closes #78
2012-04-06 16:22:25 +01:00
Pete Batard
bb76f1f636 [ui] report ISO progress in main/icon progressbar
* Also improve granularity for ISO progress
* Also fixes an issue with badblocks report
2012-03-29 20:27:53 +01:00
Pete Batard
db76e396fd [pe] Improve PE and add Windows 2003 support
* Use \i386 always through SetupSourceDevice in txtsetup.sif
  and prevent deletion of install directory
* Removed setupdd.sy_ patch. Now, none of the files in \i386 are modified
* Better /minint detection for MBR setup
* Also fixed an issue where mbr.bin resources would not be included
2012-03-27 20:31:15 +01:00
Pete Batard
04a20922d5 [xp] Add rdisk() masquerading
* Also add MBR support from resource file
* Also fix an issue with WDK
2012-03-25 22:56:56 +01:00
Pete Batard
7874f5ea5d [mbr] added USB selection MBR support in Rufus
* added mbr_rufus.h to ms-sys, and MBR selection to UI
* also simplified int 13 override, fixing potential breakage on concurrent ints
2012-03-21 01:59:03 +00:00
Pete Batard
4bd017ff07 [pe] initial WinPE support (BartPE, XP install disc)
* also switched MBR to Win7 one
* also switched version to rufus-next
2012-03-16 18:30:44 +00:00
Pete Batard
7426573dc1 [iso] add download & replace of obsolete vesamenu.c32
* adds http/https download capabilities
* closes #46
2012-03-11 01:55:25 +00:00
Pete Batard
e0f209a128 [misc] Misc. fixes
* Addresses issue #66 (insert media notification with empty card readers)
* Addresses issue #67 (devices without FriendlyName aren't listed)
* Addresses issue #68 (WinPE/AIK images don't boot)
* Also updates version to rufus-next
2012-03-09 01:38:52 +00:00
Pete Batard
7ee5b35551 v1.1.4 (#150)
* closes #49
* closes #60
* closes #64
* should address #59
* set default doe ISOs with bot bootmgr and isolinux to syslinux
* other improvements
2012-03-03 23:12:48 +00:00
Pete Batard
a9c47a4922 [bb] fix bad blocks check for 64 bit
* 32 bit bad blocks check is too limited for large drives
  and result in erroneous computations
* 32 bit also means that 2TB would be absolute limit, which
  may be too low in case for USB HDD checks
* This fix makes bad blocks check and related calls 64 bit compliant
* also improve on bad block reports
2012-03-03 22:59:58 +00:00
Pete Batard
3721b0a570 [misc] improved label and config handling
* add readout and display of extended autorun.inf label if available
* use improved isolinux config parsing
* also fix an issue that could leave drive unmounted on forced removal
* also add Alt-F cheatmode to toggle detection of fixed USB disks
2012-03-01 19:19:12 +00:00
Pete Batard
b03065b1f5 [ntfs] fix creation of Windows 7 bootable USB from XP
* When using Win7 installation ISOs, XP would return the error:
  [0x00000456] The media in the drive may have changed
* This seems to be due to unmounting of the drive before writing
  the PBR
* Also, our ms-sys/NTFS code wasn't identifying NTFS properly on XP
2012-02-24 18:51:33 +00:00
Pete Batard
352a796eff [core] only allow removable drives to be listed
* Our detection code, which is based on the HPUSBFW utility, allows fixed
  drives such as USB HDDs to be listed
* Since Rufus lacks extra precautions for fixed disks, this may result in
  people mistakenly formatting and HDD instead of a flash drive
* Until we have added HDD specific features (support for repartitioning or
  existing partitions, >32GB FAT32, etc.) we prefer playing it safe by
  not listing fixed disks.
* We will re-enable fixed disks when we feel enough safeties are in place
* Also fix an issue where ISO selection could crash if Rufus
  was compiled for Vista and later and update version to rufus-next
2012-02-24 18:46:55 +00:00
Pete Batard
e0e974603c v1.1.2 (#143)
* Closes #37
* Closes #38
* Closes #39
* Closes #42 (from previous commits)
* Closes #44 (from previous commits)
2012-02-22 00:24:12 +00:00
Pete Batard
7e7c75169c [ui] enable setting of icon and extended label
* Creates an UTF-16 autoconf.inf with label, as well as autoconf.ico
* also fixed extended labels not displaying - closes #48
* also bumped version to rufus-next
* also factorized iso props analysis
* additional fixes
2012-02-21 19:46:28 +00:00
Pete Batard
f5939d18ab [iso] Syslinux support improvements
* Allow the use of vanilla Syslinux by creating a /syslinux.cfg
  that references isolinux.cfg
* Fix #40 and #42
* Workaround for #44 by search and replace of ISO label in .cfg
* ISO9660 Joliet fixes
2012-02-21 00:08:31 +00:00
Pete Batard
3cd83869c4 [iso] fixes for Joliet and > 4GB ISO9660 images
* scan would fail on lowercase vs mixed case dir name comparison
  due to Joliet (eg. using Slackware 13.37 ISO)
* extraction would fail for 4 GB ISO9660 ISOs
* also fixes cases issue when checking for isolinux/bootmgr
* also don't restrict NTFS labels
2012-02-15 21:55:41 +00:00
Pete Batard
f4ed6e4650 [misc] fix broken DOS, fix invalid labels and UI improvements
* DOS creation was broken due to missing unlock + close
* added label validation to prevent errors
* added ellipsis to status bar
* also bumped version to rufus next and fixed f/non-f
2012-02-15 00:52:40 +00:00
Pete Batard
36be65ed23 [iso] add support for isolinux/syslinux ISO images
* use a modified syslinux that can use isolinux config files
* update syslinux to git version
* remove embedding of chain.c32 for the time being
2012-02-14 01:23:42 +00:00
Pete Batard
5d58b83ed8 [iso] cancellation improvements
* remove threaded cancellation, detect blocking and warn instead
* also add hidden shortcut to disable ISO size check
2012-02-07 16:17:14 +00:00
Pete Batard
472db8b592 [iso] bootable NTFS from ISO image [EXPERIMENTAL]
* bootmgr ISOs only
* extraction and ISO support UI improvements
* UTF8 support through CreateFileU
* cancellation on ISO file extraction
* switch to using CreateThread
2012-02-07 02:05:58 +00:00
Pete Batard
22276ccb5a [core] add tactical volume re-mount post format 2012-02-05 19:54:48 +00:00
Pete Batard
d1e4ba278b [ntfs] add bootable NTFS support
* NTFS boot records in ms-sys
* also added debug duplication to PrintMessage
* also fixed controls staying enabled during formatting
2012-02-03 18:19:50 +00:00
Pete Batard
fd0e6d4b3b [iso] UI ISO support improvements
* add ISO scan and extract progress dialog
* compute sizes and set properties
* allow cancellation
* minor other updates
2012-02-01 14:26:36 +00:00
Pete Batard
b6252a913a [sl] syslinux support (MinGW)
* also fixes memory leak in syslinux.c
* closes #31
2012-01-12 11:05:09 +00:00
Pete Batard
acf7d072b0 [sl] syslinux support (EXPERIMENTAL)
* MS platforms only (*BREAKS* MinGW)
2012-01-12 02:52:40 +00:00
Pete Batard
01d1d74f04 [bb] allow selection of nb passes/patterns
* also removed nd/ro tests as unlikely to be used
2012-01-08 23:41:20 +00:00
Pete Batard
3187f71933 v1.0.6 (#109)
* removed TODO (duplicates github feature)
* updated copyrights to 2012
* fixed MS only rufus VS2010 solution file
* fixed a Clang warning in SetLGP
2012-01-03 00:50:00 +00:00
Pete Batard
d27e73137d [bb] generate a log report when bad blocks are found
* closes #6
2011-12-30 21:23:13 +00:00
Pete Batard
f72b298c03 [freedos] initial FreeDOS support
* closes #2
2011-12-15 00:46:47 +00:00
Pete Batard
ed4297609e [fat] use ms-sys' partition_info source to correct Disk Drive ID
* Disk Drive ID fixup for FAT32 was already available in ms-sys with option -p
* modified code to add FAT16 as well as FAT32 support as well as minor fixes
* reverts previous patch write_fat_32_br() and write_fat_16_br()
2011-12-14 20:48:20 +00:00
Pete Batard
0600005a09 [fat] improve FAT32 boot record setup
* write primary and secondary boot records
* add offset provision for sector write
* improved detection reports for MBR, FAT16 and FAT32
2011-12-13 23:29:09 +00:00
Pete Batard
5dcd8f4e8f v1.0.3
* fixed issue #16 - crash during format on XP
* fixed issue #17 - non bootable drives when created in XP
* for more info on the problem and fix, see the issues above
2011-12-13 02:10:27 +00:00
Pete Batard
57de1cbe40 [misc] pre 1.0.3 update
* fixed remaining Clang warnings in badblocks.c and configure.ac
* removed beta and updated version to 1.0.3
2011-12-13 02:06:59 +00:00
Pete Batard
d59854ef4f [ui] improve the allowed cluster sizes
* follow what MS/FormatEx actually allow
* closes #15
* also fixed potential empty selection in cluster size dropdown
* also improved Local Group Policy handling
2011-12-12 14:22:40 +00:00
Pete Batard
df7a0b1fc3 [format] added volume unmount and improve logic
* acquire a vomume handle and unmount the volume before anything else
* remove the volume access check after partitioning - use a small delay instead
2011-12-11 02:19:38 +00:00
Pete Batard
e78f07cda6 [ui] ui improvements
* fixed DOS selected on init for exFAT and NTFS in certain cases
* improved progress and status reports
* other minor improvements
2011-12-09 12:57:32 +00:00
Pete Batard
17132c35a4 [ui] progress bar improvements
* progress bar now reflects actual completion of process more closely
* dropped the use of UM_FORMAT_PROGRESS and introduced UpdateProgress() instead
* also reduced the number of rw test patterns from 4 to 2
2011-12-09 01:39:13 +00:00
Pete Batard
b006e6a837 [ui] better bad blocks reports
* improved status bar printout (priority messages with timeout)
* report with abort/retry/cancel on bad block detection
* also MinGW warning fixes
2011-12-08 00:22:13 +00:00
Pete Batard
192c3d6cc8 [bb] progress bar and cancellation support 2011-12-06 23:35:55 +00:00
Pete Batard
480986b0ae [format] fixed corruption issue when MBR is garbage
* after a bb check, MBR could become garbage
* when that occurs, Windows might interpret a bad partition table and prevent MBR from being properly written
* force a complete zeroing of the whole MBR before partitioning to fix this
* also added error code for bb
2011-12-06 18:11:38 +00:00
Pete Batard
04bf6c6b3d [misc] fix warnings
* MSVC x64 warnings in file.c
* Clang and MinGW warnings in badblocks
* also removed the requirement for
* also added test ID to badblocks call
2011-12-06 14:05:53 +00:00
Pete Batard
e419cf9015 [core] added badblock checks (ALPHA)
* also fixed some issues with read_sectors/write_sectors and dropped bufsize parameters
2011-12-06 02:23:28 +00:00
Pete Batard
7726071098 [misc] updated acronym
* Resourceful -> Reliable
* also removed standalone makefile (mkf)
2011-12-05 11:36:02 +00:00
Pete Batard
48f9dd47ae [misc] move source files to src/ directory 2011-12-05 10:49:45 +00:00
Renamed from format.c (Browse further)