Commit Graph

2106 Commits

Author SHA1 Message Date
Pete Batard af80c80917 [mingw] fix MinGW-w64 compilation
* newer versions of MinGW-w64 have shuffled off_t definitions - fix that
2012-05-25 18:40:30 +01:00
Pete Batard 032864021c [ui] misc. UI improvements 2012-05-25 17:54:06 +01:00
Pete Batard dbe6af78d9 [ui] provide tooltips for all options
* Closes #84
2012-05-22 12:30:22 +01:00
Pete Batard 4a74c9de38 [ui] improve tooltip handling
* only reference the HANDLE of the control the tooltip is associated with
2012-05-21 11:11:42 +01:00
Pete Batard 3fde2a5472 [ui] add a reference to DebugView on error messages
* Closes #83
* Also fix MinGW warning of 'array subscript out of bounds' due
  to previous commit
2012-05-18 19:33:34 +01:00
Pete Batard 8c47bac10e [ui] add option to create extra hidden partition
* Closes #77
2012-05-18 18:41:28 +01:00
Pete Batard aea60183cc [sl] remove chain.c32
* also fix a WDK build issue
2012-05-18 00:54:39 +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 cbff178717 [ui] fix disabled checkbox with empty card readers
* closes #79
2012-05-16 15:32:06 +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 39fe803963 [internal] remove grep dependency in git pre-commit hook 2012-05-16 12:17:07 +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 8d2fd913b0 [ui] Display progress on the Windows 7 taskbar icon
* Also updates dialog progress handling
* Closes #72
2012-03-29 18:16:06 +01:00
Pete Batard 98ff7a931a [x64] fix access violation when patching DLL data
* Closes #24
2012-03-28 20:45:49 +01:00
Pete Batard 51fb4e339f [freedos] Embed FreeDOS always in a single version of rufus.c
* also bump version to rufus-next
* also change build prefix from '#' to 'b' in tags
2012-03-28 19:50:21 +01:00
Pete Batard b397889ab6 v1.1.6 (#161)
* Add cheat mode for MBR selection (Alt-M)
* fix NTFS default for WinPE
* fix Clang warnings
2012-03-27 23:31:58 +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 d87f069963 [mbr] various fixes and improvements
* Adds USB masquerading according to disk ID in USB part table
* Adds debug feature
* Closes #74 - was due to flags not being properly saved/restored
* Closes #71
* Fixes reentrant INT_13h for some platforms (eg. IBM t43p reenters
  INT_13h to issue an SCSI passthrough, AH=0x50)
* Embed MBR as a resource rather than an ms-sys header
2012-03-25 21:35:38 +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 1b7f88eb99 [mbr] add LBA sector readout, as required by some BIOSes
* I'm looking at you, Dell Optiplex!
* also fix boot in case no secondary bootable drive exists
* also adds a readme
2012-03-20 20:31:54 +00:00
Pete Batard 0f57ed1684 [mbr] "Press any key to boot from USB..."
* Adds an MBR to prompt the use about USB or HDD boot
* If USB boot is not selected, an INT13h override is added to
  make the second bootable drive think it is first (0x81 -> 0x80)
* USB drive BIOS index is left unmodified
2012-03-20 02:56:34 +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 c07832b090 v1.1.5 (#153)
* remove testing delay and comment in net.c
2012-03-12 00:20:03 +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 1fce90dc7c [freedos] update FreeDOS resources to latest version
* also update version to rufus-next
2012-02-27 17:17:50 +00:00
Pete Batard 044398833b v1.1.3 (#146)
* adds check for 'fake' USB drives in bad blocks
2012-02-24 19:44:24 +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 3e51ed7160 [syslinux] reverted Syslinux resources to vanilla 4.0.5
* also added the full usb.ico from PC Unleashed for future reference
2012-02-20 22:44:34 +00:00
Pete Batard 8e091fdc04 v1.1.1 (#139)
* Also make SysLinux non-optional
2012-02-17 00:26:30 +00:00
Pete Batard ce499c95d7 [ui] remember last selected device
* Closes #35
* Also update syslinux resources
2012-02-16 23:43:03 +00:00
Pete Batard a851d66e7c [iso] libcdio Joliet and UDF fixes
* Fix for broken UDF access with MSVC on some images
  (eg. Arch Linux)
* Fix for broken Joliet access on ISO9660 images and
  proper Joliet support in iso.c
2012-02-16 20:44:16 +00:00
Pete Batard c79bfa0cb4 [ui] misc. UI improvements
* improved ISO selection
* set default FS according to ISO boot method
* fix exFAT selection
2012-02-16 11:37:59 +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 e17de3312f [iso] Set drive label according to the one from ISO
* required for Linux distros such as Arch Linux
* also added udf_get_logical_volume_id to libcdio and other fixes
* also prevents overwrite of ldlinux.sys from ISO
* closes #36
2012-02-14 20:52:39 +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 7753c017d6 v1.1.0 (#131)
* first release with ISO support (bootmgr ISO only)
* fix ISO9660 extraction and error reports
2012-02-08 00:26:37 +00:00
Pete Batard c1a8135d30 [misc] more pre 1.1.0 improvements 2012-02-07 23:16:15 +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 d1f41309a9 [misc] increment version to rufus-next
* also fixed ms-config.h
2012-02-07 02:08:47 +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 bb0c0ecb1c [core] fixed non detection of USB drives on some platforms
* STORAGE_DEVICE_NUMBER.DeviceNumber is not unique! Optical drives and
  HDDs can have the same number
* Use GetDriveType() to filter unwanted devices
* closes #32
2012-02-02 19:47:08 +00:00
Pete Batard 4eaae9a7f8 [ui] early ISO/NTFS bootable support (doesn't do anything yet)
* enable ISO for ntfs
* enable ISO selection with FileDialog
* also move UI init to its own function
2012-02-02 13:17:43 +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 013db6a6d8 [msvc] update solution files and add missing config.h 2012-01-31 17:39:54 +00:00
Pete Batard d5deb33357 [oops] add missing MSVC solution file 2012-01-31 12:53:59 +00:00
Pete Batard 5bd86bc743 [iso] initial ISO image support (EXPERIMENTAL)
* from libcdio: http://www.gnu.org/software/libcdio/
2012-01-31 01:40:22 +00:00
Pete Batard 9d2f9faa70 [sl] add chain.c32 module for embedding
* also minor updates
2012-01-12 18:55:30 +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 130afd8294 [msvc] move FreeDOS config option to a header file
* use toplevel ms-config.h for options, rather than duplicate project files
* applies for MSVC and WDK
2012-01-11 11:09:40 +00:00
Pete Batard e49549d26a [misc] moved binary resources to /res subdirectory 2012-01-11 00:25:15 +00:00
Pete Batard dc010cc418 [misc] separated ms-sys dependency from application
* set ms-sys to be built as a library
* also removed unused code from badblocks.c
2012-01-11 00:05:16 +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 35edfb0218 [freedos] more intuitive menu selection for kb locale
* !MENUCOLOR brings FreeDOS closer to WinME selection menu
2012-01-08 23:39:33 +00:00
Pete Batard 55e6cd8023 [mingw] added --with-freedos to configure
* default is enabled (=> add --without-freedos to disable)
* also update the release process as a result
* also update version to rufus next
* also fixed FreeDOS embedded files lost when RC is edited in Visual Studio
2012-01-06 16:46:27 +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 8db7e1720a [misc] added magic key to delete autorun LGP
* Alt-D can be used to reset autorun policy
* can be useful if app crashed
2011-12-30 17:58:18 +00:00
Pete Batard cc30e160da [misc] increment version to rufus-next
* also updated FreeDOS components and TODO
2011-12-28 21:21:38 +00:00
Pete Batard 526a125463 [locale] fixed file attributes for FreeDOS locale files
* closes #26
2011-12-25 23:19:02 +00:00
Pete Batard 75e94c1087 [locale] finalized DOS keyboard locale setup
* added FreeDOS support
* closes #3
2011-12-25 22:43:51 +00:00
Pete Batard 7fbee9d6d7 [locale] added FreeDOS locale files 2011-12-25 22:21:49 +00:00
Pete Batard 64949c27e1 [locale] set DOS keyboard locale (experimental)
* sets DOS locale using the same algorithm as MS' diskcopy.dll
* uses CONFIG.SYS menu to allow US vs non US selection
* only applies to WinME/MS-DOS for now (no FreeDOS)
* also renamed msdos.c -> dos.c with minor improvements
* also added missing FreeDOS credits in about dialog
2011-12-21 00:53:31 +00:00
Pete Batard ae00aa3f59 [ui] updated title for FreeDOS version
* also pre-release cycle version increment
* also update make release script for new naming scheme
2011-12-18 01:15:32 +00:00
Pete Batard 5722300063 v1.0.4 (#100)
* closes #22 (missing CloseHandle for FreeDOS' AUTOEXEC.BAT)
* split rufus and rufus_fd solution files (VS2010)
* error messages small improvements
* since we're on Windows, use .txt extension for README and TODO
2011-12-16 23:24:16 +00:00
Pete Batard 80f12bce4d [freedos] fixes CHS warning and date/time prompt
* create an empty AUTOEXEC.BAT file to avoid date/time prompt
* use a patched version of KERNEL.SYS from 2011.12.16 FreeDOS SVN to avoid CHS warnings
  see freedos/readme.txt for details
* also removed read-only attribute on COMMAND.COM and KERNEL.SYS to allow SYS CONFIG
* also
* closes #19
* closes #20
2011-12-16 17:11:19 +00:00
Pete Batard 6def8f8abe [freedos] finalize rufus and rufus_fd breakdown
* closes #21
2011-12-15 17:05:19 +00:00
Pete Batard 849f61a80f [freedos] separate non FreeDOS and FreeDOS builds into rufus and rufus_fd 2011-12-15 15:53:33 +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 36fa9cee23 [ui] reorganize format options in their chronological order
* also remove provisions for keyboard shortcuts as they don't work
2011-12-13 17:52:03 +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 72485b7568 [misc] disable new drive notification while app is running
* new drive notifications from explorer are annoying
* use Local Group Policy to temporarily disable them
* also fixed missing SetupDiDestroyDeviceInfoList call
2011-12-11 23:38:16 +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 78ad099bf9 [internal] update app URL as well as scripts 2011-12-09 22:47:44 +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 4ce6a1f0f1 [ui] add a timer on the status bar
* also ensure that the user sees a report in case too many bad blocks were found
* also changed bad blocks threshold to 256
2011-12-08 12:14:21 +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 f93a85ab83 [bb] added status report on status bar
* also changed title to add "(Beta)"
2011-12-07 00:28:27 +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 5c2242beaa [bb] badblocks check improvements & cleanup
* also added credits in about box
2011-12-06 18:08:16 +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 d81525d3f4 [misc] added README/TODO
* also renamed Allocation Unit to Cluster
2011-12-05 12:41:55 +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 1d429d939e [msvc] updated paths to reflect source changes
* also updated wdk script
2011-12-05 11:29:31 +00:00
Pete Batard 071cf84cc4 [mingw] update autotools script following path change 2011-12-05 11:19:05 +00:00
Pete Batard 48f9dd47ae [misc] move source files to src/ directory 2011-12-05 10:49:45 +00:00