If you are looking for a ready-made solution for a multi-boot USB drive. please go to the Easy2Boot website.
Click here to watch the ‘How to use RMPrepUSB’ YouTube videos.
RMPrepUSB is a Windows utility that can be used to format any USB storage device, e.g. USB Flash drive (UFD) or USB hard disk, as a bootable device (but cannot be used on USB Floppy drives to format floppy disks). It can be used to partition, format, write a Master Boot Record, partition table and/or Volume Boot Record (sometimes called a Partition Boot Record) and operating system boot code to a USB storage device (e.g. USB flash memory drive or USB hard disk). It can also be used to work on non-USB drives.
If you installed RMPrepUSB using the Installer, you can easily uninstall it using the ‘uninstall RMPrepUSB’ entry in the Start Menu. However, you do not need to install RMPrepUSB (it is portable and will even run under BartPE or WinPE v1/v2/v3), just ensure that all the files are copied to a folder on your hard drive or storage drive.
Note: if running Win PE you may need to copy the MSVBSM60.DLL from the WINPE_EXTRA folder to the same folder that RMPrepUSB.exe is in. Also, if you are running under Win PE v1/BartPE you may need to copy showdrive.exe file from the WINPE_EXTRA folder (do not copy this file if running Windows XP+ though as it can cause problems!) – showdrive auto-mounts a new drive after it has been formatted if the OS itself does not.
To start – select the Language that you want to use in the top-right hand box. RMPrepUSB will list all *.INI files found in the .\LANG folder. Note that the translated files may be slightly out of date, but if you select English you will always get the latest version of help text. If you are running Windows XP, you may need to install Asian language support (see FAQ Q32)
Please read the all the FAQs at the end of this document!
LICENCE SMALL PRINT
RMPrepUSB and RMPartUSB are free (Freeware) for private use only; however they are not Open Source programs. For commercial use and licensing please contact firstname.lastname@example.org. Distribution, sale, or use in a commercial solution is forbidden without permission from RM Education plc (see FAQs below for more information).
The RMPrepUSB download includes some executables which are not the intellectual property of the author or RM Education. The licensing terms and conditions of these programs are:
- Grubinst.exe, grldr and touchdrv.exe – Author: bean123 homepage GPL (see GPL.txt)
- Mkefs.exe – Author: MattWu email@example.com homepage GPL (see GPL.txt)
- Syslinux.exe – Author: H. Peter Anvin see homepage
- QEMU – QEMU was written by Fabrice Bellard and is free software.
- HashMyfiles.exe – by NirSoft (licence files included with download)
- WinContig.exe. – with kind permission from Marco D. Free for personal and commercial use.
- Start_VM.exe – with kind permission from David B. Free with published sources on reboot.pro
Various parts are released under different GNU General Public License version 2-compatible licenses.
These include the GNU Lesser General Public License (GNU LGPL) or permissive licenses such as the BSD license
RMPrepUSB is intended for use on USB Flash memory drive, USB hard disk drives or other USB storage devices such as card readers.
Press F1 for help and shortcut functions.
- · Partition, format and make bootable a USB drive (follow the steps numbered 1-6 in blue text)
- · Clean (erase/wipe) a USB drive (best to unplug and re-plug afterwards)
- · Backup a USB drive (or parts of a USB drive) to an image file
- · Restore an image file (or part of an image file) to a USB drive
- · Install the grub4dos or syslinux bootloader onto a USB drive
- · Test a USB drive (useful for testing fake USB flash memory drives)
- · Test raw read/write speed of a USB drive
- · Eject a USB drive (for safe removal)
- · Display the partition structure of a USB drive (or image file)
- · Be used after PEBuilder to install your XP PE files to a bootable USB drive.
- · Work on hard disk drives as well as USB drives (by using the ALLDRIVES command line parameter)
- · Create an ext2/3/4 read/write filesystem (as a mountable file – e.g. casper-rw)
- · Emulate booting from the selected USB drive (QEMU = F11) v2.1.707 and later versions have full write access!
- · Calculate MD5/CRC32/SHA1 checksum of a file (ALT+F2)
- · Overwrite Master Boot Record with default (Win7/Vista) MBR
- · Run Disk Doctor utility for disk testing/editing
- · Install the WEE bootloader to Track 0 (overwrites MBR)
- · Run DiskDoctor (a raw disk editing/testing/data search utility)
- · Make all files on a drive contiguous using WinContig
- Install grub2 to MBR+following sectors
Note: Red or blue coloured buttons will write to your USB drive in some way. Except for the Test Speed button, all red/blue buttons will erase, alter or overwrite your USB drive contents. If you have any important files on the USB drive, copy them to a safe place first!
Important: always run these utilities with Administrator privileges or USB drives may not be accessible and you may get a write error reported!
When you click on one of the Prepare Drive, Quick Size Test, Test Speed, Clean, Image Tool or Info buttons, RMPrepUSB will call the Windows command line utility RMPartUSB – the exact command line will be shown to the user beforehand. If you prefer, you can use RMPartUSB in your scripts or batch files rather than use RMPrepUSB. Type ‘RMPartUSB’ in a Windows command shell to see full instructions on how to use the utility or read the rmpartusb.txt readme file.
Fig. 1 Note: The button ‘6 Prepare Drive’ uses the settings numbered 1-5.
The two imaging operation buttons (FiletoUSB and USBtoFile) are totally independent of any other settings within RMPrepUSB (i.e. the NTLDR, FAT32 and all other options have no effect when imaging – a binary image is simply copied to or read from the UFD and is similar to the dd.exe utility, no additional ‘tweaking’ is done by RMPrepUSB or RMPartUSB and no extra files are copied afterwards).
The ‘Install grub4dos’ function installs grub4dos to any USB drive and does not call RMPartUSB.
Also note that during operation, both the commands that will be executed and the status are shown at the bottom of the form.
Fig. 2 RMPrepUSB Help form (press F1 or Help button)
Note the extra functions available using the Function keys!
CLICK TO SEE RMPREPUSB VIDEOS ON YOUTUBE
SIX STEPS (1-6) TO MAKE YOUR USB DRIVE BOOTABLE
1. Select the USB drive in the listbox if more than one is present and either leave the ‘1 Partition Size’ as MAX or change it (e.g. type 512 for a partition size of 512MiB).
2. Change the ‘2 Volume label’ text if you want to.
3. Set the ‘3 Bootloader Options’ that you want installed onto the new partition after it has been formatted.
4. Change the ‘4 Filesystem and Overrides’. You may need to experiment with these before you can find a combination that works. If in doubt use ‘FAT32’ and ‘Boot as HDD’.
5. If you want to, you can copy the contents of a folder (or zip/iso file) to the new empty partition on the USB drive after it has been formatted by RMPrepUSB. Tick the ‘5 COPY OS FILES’ box if you want to do this. Note: RMPrepUSB will not place any boot files on the USB drive and it will not be bootable unless you copy some boot files onto it using this option or by manually copying files over after formatting.
6. Click on the blue ‘6 Prepare Drive’ button.
WARNING: After a format operation or if Refresh is clicked, RMPrepUSB may select a different drive in the drop-down list. ALWAYS check that the correct USB drive is selected before clicking the Prepare button!
Note: When finished and before you unplug the USB drive, click on the ‘Eject’ button to prevent file corruption.
If you are experiencing difficulties using RMPartUSB or RMPrepUSB when formatting drives as a ‘floppy’ device – try disabling your antivirus software. Some antivirus software (e.g. Symantec) can interfere with direct access to the drive once it has been formatted as a floppy drive! Alternatively, disable floppy disk scanning in your AntiVirus options.
Special shortcut keys:
- F1 – Help
- F2 – Open Explorer @ USB drive
- ALT+F2 will calculate MD5/CRC32/SHA1 checksum of any file
- CTRL+F2 – run WinContig to defrag all files on selected drive
- ALT+CTRL+F2 will overwrite the MBR with a default one
- F3 – Open Explorer @ RMPrepUSB application home folder
- F4 – Open menu.lst from root folder on currently selected USB drive with notepad
- F5 – Refresh
- ALT+F5 or CTRL+F5 – Toggle the mode to allow operation on all types of drives (ALLDRIVES/USB_ONLY)
- CTRL+Z – Show all sizes of USB drives (inc. > 128GB) v1.735+
- ALT+CTRL+F5 – Launch Disk Doctor utility
- F6 – Open USBSpeedDP.csv using the spreadsheet app. associated with .csv files
- F7 – Open USBSpeed.csv using the spreadsheet app. associated with .csv files
- F8 – Open USBSpeedDP.csv in notepad
- F9 – Open RMPrepUSB.ini file in notepad
- F10 – Save current configuration settings to RMPrepUSB.ini
- F11 – Run QEMU and emulate booting from USB drive
- F12 – Load user pre-set menu again (if RMPrepUSB.ini file present)
- ALT+F12 – Install WEE bootloader
If you have the English language selected, you can press F1 to see this hotkey list and then press ESC to close the help form.
There are many other hotkey combinations – these can be seen when you use the menu tabs:
Fig. 3 Drive menu showing hotkey shortcuts
About the COPY OS FILES function
RMPrepUSB prepares a USB drive by partitioning it, formatting it and placing boot code in the Master Boot Record (MBR) and Volume Boot Record (VBR, sometimes called the Partition Boot Record or PBR). However, the USB drive will not boot unless you copy boot files onto the drive. You can automatically copy files to the root of the USB drive after it has been formatted by ticking the COPY OS FILES option. If you do not tick this option then you must copy any boot files onto the USB drive manually afterwards (make sure you copy the system and hidden files too!).
The latest version allows you to either COPY FILES FROM A FOLDER (yes) to the root of the target drive or EXTRACT FILES FROM A FILE (no) and copy them to the target drive. If you have all your files in a folder and just want to copy the files inside the folder to the USB drive, then choose ‘Yes’. If you select a folder, the entire contents of the folder will be copied after the format has completed.
The contents of the selected folder (and all subfolders) will be copied if you choose ‘No’.
If you want to EXTRACT files from a compressed file (e.g. an ISO or ZIP file) then choose ‘Yes’. If you answer ‘yes’, and then select a compressed file, such as an ISO file or zip file, the decompressed contents of the file will be copied to the target drive after it has been formatted.
You can ask RMPrepUSB to extract files from an iso,zip,7z,gzip,cab,rar,vhd,lzh,img or ima file after formatting has completed.
SAVING YOUR FAVOURITE CONFIGURATIONS
If you regularly make bootable USB drives or you want to distribute RMPrepUSB to other users inside your company or friends, together with a source folder containing your OS files, you can save the RMPrepUSB settings to RMPrepUSB.ini automatically by pressing F10. Here is how to do it:
A. Place your source OS files in folders on the C: drive of your hard disk, e.g.
Now for each USB configuration:
B. Run RMPrepUSB (you must click cancel if you already have an RMPrepUSB.ini file present and are prompted to choose a previous configuration) and actually make your bootable USB drive as you would normally (you do not have to do this, unless you use syslinux, but it helps to get it right – if you don’t actually make a USB drive then check the contents of the RMPrepUSB.ini file after making it). If you need to use the install syslinux option, you must run through a complete format/syslinux operation to set the correct Raid/Syslinux options so they are saved to the ini file correctly when you press F10.
C. (optional) After ‘Prepare Drive’ has finished and the file copy has completed, untick the ‘No user prompts’ box and then click on Install grub4dos and choose the grub4dos options as you require (this sets the grub4dos option to either MBR or PBR depending on which one you choose). If you don’t need to run grub4dos, then skip this bit as it is not necessary. If you also want to create an ext2 filesystem, you should use the Create ext2/3/4 FS button to set those options (though you can cancel after entering the volume name and size parameters). Now you can tick the ‘No user prompts’ box again if you don’t want the end user to have lots of prompts.
D. Now press F10 – you should be asked if you want to append the settings to the configuration file RMPrepUSB.ini. F10 records all the current settings including the MBR or PBR selection used when grub4dos was run, also any syslinux options and also the ext2 filename/size and appends them to the end of the RMPrepUSB.ini file as a new entry.
E. You will be asked to input a title (which will eventually appear in the user’s menu on each first run of RMPrepUSB – see section F below) and then add some text for the user’s instructions:
If you don’t already have an RMPrepUSB.ini file then it will be created for you. You can press F9 if you want to see it or edit it.
Repeat this (B-E) for all your different types of bootable OS’s.
F. Exit from RMPrepUSB and then restart RMPrepUSB – because an INI file is now present in the same folder as RMPrepUSB.exe, the user will now see a menu list when RMPrepUSB first runs and can pick one of the preset configurations.
Clicking ‘Cancel’ will not set any options, but choosing a configuration and clicking OK will pre-set the options which may override any options the user chooses. The user will now be prompted with the instructions that you previously entered into the configuration file, e.g.:
G. When the user clicks on the ‘6 Prepare Drive’ button, they will be prompted to accept or refuse the SIZE and VOLUME LABEL that was set in the configuration file:
If the user chooses ‘No’ then the current settings in RMPrepUSB will be used; ‘Cancel’ will abort the operation.
If you used ‘Install grub4dos’ and/or the ‘Create ext2/3/4 FS’ button, it will automatically run with the correct options that you recorded in the RMPrepUSB.ini file.
You can edit the INI file using Notepad to make changes or delete any section – just press F9. Note that you can hide some buttons and checkboxes if you wish. Here is an example RMPrepUSB.ini file with only one menu item:
- TITLE=Ylmf Live USB
- LABEL=Ylmf 3.0
- USERPROMPT=Click 6 Prepare Drive to format your USB drive, install grub4dos and create an Ext2 filesystem named casper-rw for Ylmf
- EXT2VISIBLE= FALSE
You can now ZIP up all source files and RMPrepUSB files and create a self-extracting EXE which will extract the source files to the correct location on the hard disk (i.e. C:\ACME\RMPrepUSB in this case). This is especially useful if you have the same source files but have different systems which need different RMPrepUSB options set (i.e. some systems boot with Force LBA set and some do not – so you can have two configurations but only one set of source files). Alternatively, you can create a self-installing distribution file using NSI – see the tutorial on the website for more details.
Note: if your partition is small (e.g. DOS), rather than use preset configurations, you can also distribute an image instead, using the ‘USB->File’ function (make sure the USB partition size is as small as possible – just big enough to hold the OS files to keep the image size small) and use the PALL option.
The RMPrepUSB PDF file (press F1 and then OK to view it) has a more detailed explanation of the steps above and includes screenshots too.
HOW TO BOOT TO AN OPERATING SYSTEM
RMPartUSB only partitions and formats the drive. You must copy over the boot files to make a bootable disk. RMPrepUSB can copy these boot files to the USB drive if you use the COPY FILES folder and tick the Copy check box.
Hint: If the boot files are present but your PC is not booting correctly – check your BIOS menu options! Some BIOSes have an option to boot a USB drive as a ‘Fixed Disk’ or a ‘Removable Disk’. Try different BIOS settings if you are having difficulty getting your USB drive to boot!
Here are some quick tips on what boot files you may need to boot different Operating Systems:
Required extra boot files
MS-DOS requires IO.SYS (or MSDOS.SYS depending on the version used) and COMMAND.COM in order to boot. You must obtain these files from somewhere (e.g. a DOS floppy boot diskette?). Simply copy these files onto the USB drive after you have formatted it using the MS-DOS option, by using the COPY FILES option to point to where you keep these MS-DOS boot files and tick the Copy checkbox.
FreeDOS requires the files KERNEL.SYS and COMMAND.COM (which may be renamed in some versions) in order to boot. The latest version of RMPrepUSB includes the few essential boot files in a FreeDos folder, so simply use the COPY FILES option and select the FreeDOS option in RMPrepUSB.
WinPE v1 and XP require many files to boot, but the first file is NTLDR. If you want to boot to BartPE, see Q24 below.
WinPE v2 and v3 and Vista and Windows 7 require many files to boot, but the first file is BOOTMGR. For instance, just copy all files from a Vista or Windows 7 bootable DVD to the USB drive after formatting using the WinPEv2 (bootmgr) option in RMPrepUSB.
SysLinux when booting will first look for the files LDLINUX.SYS and a SYSLINUX.CFG file. Many other files will also be required. If you are using isolinux, use the Install SysLinux RMPrepUSB option and then after the files have been copied over, rename isolinux.cfg to syslinux.cfg. Note that when RMPrepUSB installs syslinux it uses the -fma switches, so as well as the PBR boot code being changed, the MBR boot code will also be changed. If you want to also boot to grub4dos, install grub4dos to the MBR after running syslinux.exe. You can then boot to grub4dos, and then to syslinux by using chainloader (hd0,0)+1 to load the syslinux PBR bootstrap code.
Grub4dos when booting will first look for the file GRLDR. RMPrepUSB will ask you if you want it to copy this file after it has installed the boot code. After that it will look for a \menu.lst file. Note that the version of grubinst.exe is not the normal v1.1 version, it is a ‘homebrew’ version (I have called v1.2) which has been specially modified to work on more systems/BIOSes than the old 1.1 version. The grldr file is recent ‘chenall/tinybit’ version but you can change it for any version you like by overwriting the file.
If you want to use a different version of syslinux or grub4dos, place your own versions of syslinux.exe, (grubinst.exe) and grldr into the same folder as RMPrepUSB and overwrite the ones provided.
Explanation of the Override options
The most complex part of RMPrepUSB is in selecting which overrides (if any) to use. The reason that there are so many choices is that different BIOSes behave in different ways. A USB Flash Drive (UFD) that is formatted normally and contains MS-DOS boot files may boot as an A: drive on one system, but boot as a C: drive on another system. If you change the BIOS Setup menu options on the same system, it might then boot as an A: drive. On yet a third system, the same USB flash drive might not boot at all!
In addition, some BIOSes will not boot from a UFD at all if the physical drive size is greater than 512MB – or – some BIOSes may not boot from a UFD if the volume size is over (say) 1.3GB.
If you wish to boot from a UFD or USB hard drive, you may need to experiment with the settings below. You may find that one group of settings will work for one system and a different group of settings will work for another system. If using UFDs, always try a 512MB USB flash drive first before you move on to larger UFDs – some older BIOSes will only work with small UFDs.
Boot as FDD (A: no MBR)
This option will format the drive with the chosen filesystem format option (FAT16\FAT32\NTFS) – the USB drive will have no partition table just like a floppy disk. The first sector of the USB drive will typically contain the operating system boot code. This option is usually used for an MS-DOS or FreeDOS drive that you wish to boot as a large floppy drive (i.e. they will boot to the A: prompt).
You can also select the 64hd/32sec option (recommended). If you de-select the 64hd/32sec option and have FAT32 then the volume boot record will use 255 heads and 63 sectors per track on drives over 4GB – otherwise 64 spt or 32 spt depending on the size of partition.
Note: If you need to boot as drive A:, grub4dos can be used to map the UFD always as drive A: even if the BIOS tries to boot it as a hard disk. See FAQ 35.
Boot as ZIP (A: with MBR)
This option creates a Master Boot Record and partition table in the first sector of the drive. The Volume Boot Record code that is written to the drive will be suitable for booting MS-DOS or FreeDOS as a floppy drive. In addition, a drive geometry of 64hd\32sectors will be used (if possible).
If you wish to boot the USB drive as a hard drive then untick this option or tick the 64hd\32sec option.
‘Force use of LBA calls’ can be used with this override, but ticking the 64hd/32sec override will de-select the ZIP option, as the ZIP option will add the 64hd\32sec override.
Note: Some ZIP drive specifications define the first three entries in the partition table as unused and the fourth partition table entry is used, however this partition arrangement is not recognised by Windows and such a partition cannot be accessed by Windows Explorer. Only the first partition of a removable drive can be accessed by Windows OS’s (unless a special driver is installed).
Boot as HDD (C: 2PTNS) – Recommended to try first!
This option simply adds a second, small hidden partition entry to the partition table. Some BIOSes will treat a USB drive as a hard disk if it sees more than one partition table, because the ‘specification’ of a ZIP drive (super-floppy) is that it must only have one partition (thanks to ‘online’ of www.boot-land.net for this discovery). If you want to boot a system from a USB drive as a hard disk, set this option and untick the ZIP option. You can try either the ‘Force LBA’ override or the 64hd\32sec override with this option.
Note: If you want to boot a USB drive as a hard disk and this option does not appear to work, try re-partitioning again but leave all the USB-FDD, USB-ZIP and USB-HDD options unticked.
Forcing the use of LBA calls (only use if boot problems)
This option sets the end Cylinder/Head/Sector values in the partition table to their maximum value of 1023 (3FEh) cylinders, 255 heads (FEh) and 63 sectors – even if the partition size is under 8GB. If BIOSes read a drive partition table and see that the CHS value is the maximum, then the BIOS may use a sector translation of 255 heads and 63 sectors per track. In addition, partition and volume boot record boot code will use LBA Extended Int 13h BIOS calls if it determines that the CHS values are set to the maximum. This also may help to successfully boot an operating system from a USB drive.
This option cannot be used with the 64hd\32sec option as they are mutually exclusive.
Use 64hd/32sec if possible
Instead of creating a partition table using the default drive geometry of 255 heads and 63 sectors per track, this option will use 64 heads and 32 sectors per track which is the most compatible setting for USB-ZIP (large-floppy) booting. If the partition is too large to use 64\32 geometry, then 128\32 will be used instead and then 255/32 and then 255/63. This option is recommended for ZIP (large floppy) booting and FAT16.
ver 2.1.639 and later – If FAT16 is selected and this 64/32 option, then a partition type of 06 will be used instead of 0Eh. If you need to use DOS6.22 or an earlier DOS OS that is not compatible with later partition types, use FAT16+32/64. DOS 6.22 will not boot with a type 0E partition type.
BartPE to USB tick box
This tick box should be used if you want to boot an XP/WinPE v1 based OS such as BartPE from a USB drive. It can be used to prepare PeBuilder BartPE files or other XP-based boot CD files such as those used on Asus EeePC XP Recovery DVDs. You can only tick this box if you have selected the XP booot option and have also ticked the COPY OS FILES tick box.
Function: After RMPrepUSB has partioned and formatted the USB drive, it will copy over the files in the COPY OS FILES folder and then run the RMPrepUSBXP.cmd script file (or the rmprepusbxp_german.cmd file if the german language is selected). This script performs a similar task to petousb.cmd, on the USB drive only it…
1. Copies \i386\setupldr.bin to \NTLDR
2. Copies \i386\NTDETECT.COM to \NTDETECT.COM
3. Renames the \i386 folder on the USB drive to \MININT
4. Copies all files and folders in the RMPrepUSB folder PEtoUSB from your hard disk to the root of the USB drive (this folder is normally empty unless you copy extra files to it first).
A typical usage would be to use PeBuilder and set the Builder source to your XP SP2 or SP3 install CD and the Builder output to BartPE and the Media Output to None and then press the Build button. After the build has finished, copy any extra files you want to add to the USB drive (e.g. portable apps) to the PEtoUSB folder which is in the RMPrepUSB folder on your hard disk (optional) and then use RMPrepUSB and set the COPY OS FILES folder to the BartPEISO folder path (e.g. C:\pebuilder3110a\BartPE) and tick the XP, NTFS and BartPE options. This should make a BartPE bootable USB drive.
For a tutorial on how to create an Asus EeePC bootable flash memory drive see http://www.youtube.com/watch?v=4qMsMXOterc
Using RMPrepUSB on a non-USB disk
To partition and format a non-USB drive, you must run RMPrepUSB using the command line ‘RMPrepUSB ALLDRIVES’ which must run with Administrator privileges. RMPrepUSB will then list all drives rather than just the USB drives. You could save your hard disk MBR using USB->File in this way. WARNING: Do not accidentally wipe the wrong hard disk! You can also create a Windows Shortcut for this and specify ALLDRIVES as a parameter (but take care!). There is an option in the Start Menu to run in the ALLDRIVES mode, or alternatively simply type Alt+F2 to toggle the mode on and off when running RMPrepUSB.
FreeDOS and MS-DOS boot as A:
Size=500 Boot.as.FDD 64hd\32sec FAT16
Size=500 Boot.as.ZIP 64hd\32sec FAT16
If either of these work, try using MAX size and/or FAT32
Ensure BIOS boot option for USB is set to ‘Removable Drive’ and not ‘Fixed Disk’
BartPE, WinPEv2\v3, FreeDOS and MSDOS boot as C:
Size=500 Boot.as.HDD. FAT16
Size=MAX Boot.as.HDD.(2PTNS) FAT32
Ensure the BIOS boot option for USB is set to ‘Fixed Disk’ and not ‘Removable Drive’
Try also various combinations of these options. Note that one setting may work for one computer but not for a different computer! Try adding the ForceLBA option if you have difficulty booting.
Testing your BIOS (experts only – not in the ‘Lite’ version)
Some special MBR files are provided in the TESTMBR folder. These allow you to test how your BIOS ‘sees’ a USB drive when you change various options in RMPrepUSB. Please read the ReadMe.txt file in the TESTMBR folder for more details. There is also a tutorial on the RMPrepUSB website about this test code. You can also use the grub4dos boot loader shell to investigate how the UFD boots (e.g. type FIND to list all storage devices that grub4dos can see).
Tip for UFD booting as a hard drive
Most UFDs identify themselves as ‘Removable devices’ but if you want to boot an OS directly from them it is often better if they pretended to be a hard drive. If you have a Lexar or Netac USB Flash drive, obtain the utility BootIt.exe (try a Google search). This utility has a ‘Flip Removable Bit’ button – click on this and then unplug the UFD, then plug it in again – if it has worked, your UFD will now always report itself as a ‘Fixed Disk’ rather than ‘Removable Media’. The utility only works with certain types of UFD controller chips. Many BIOSes will always boot a drive as C: (hard disk) if the device identifies itself as a ‘Fixed Disk’ rather than ‘Removable Media’. You can also create and access multiple partitions on the USB Fixed drives under Windows, rather than just the one partition allowed for ‘Removable drives’.
To boot a linux system, use the SYSLINUX option in RMPrepUSB. This will format the UFD as a FAT16 or FAT32 MSDOS volume and then (after copying files if you tick the file copy option) will run syslinux.exe on the new UFD volume. The Windows version of syslinux.exe must be in the same folder as RMPrepUSB.exe.
Syslinux.exe will install syslinux boot code into the volume specified and place the file ldlinux.sys on the UFD. Do not delete, overwrite or move this file once syslinux has placed it on the UFD or the UFD may not boot – it must remain at the same sector position on the UFD. If you already use syslinux.exe, replace the version in the RMPrepUSB folder with your version to avoid compatibility issues.
When the UFD boots, it will load ldlinux.sys and look for a syslinux.cfg file, which can contain a menu and details of which kernel to load. If you have an isolinux.cfg file, you need to rename this to syslinux.cfg. More information can be found on the internet about syslinux.
If the UFD fails to boot after a while, either re-format the UFD using RMPrepUSB again or run syslinux.exe from the Windows command line (cmd) – e.g.
syslinux –fma F: (where F: is the volume letter of the UFD)
WARNING: take care not to specify your hard disk drive letter or your hard disk will not boot to Windows!
If you have a linux version that supports a persistent mode, you can use the Create ext2/3/4 FS button to create an ext2 filesystem as a file on the USB drive. Typically, for Ubuntu based versions it will be named casper-rw, be in the root and have a size of at least 1GB.
The full version of RMPrepUSB contains a few different versions of Syslinux. If your OS files require an earlier version of Syslinux, simply copy the version that you require from the RMPrepUSB\Syslinux folder (e.g. v3.86) and overwrite the version in the main RMPrepUSB application folder (press F3 to list the RMPrepUSB application folder in Windows Explorer). The equivalent menu.c32 files are also included in the syslinux folders and these can be copied to your USB drive if required.
If you are installing linux (e.g. Ubuntu or YLMF) and want an ext2 filesystem (e.g. a casper-rw volume), you should create a file of the same name using the ‘Create Ext2/3/4 FS’ button (v2.1.732+).
Note that ext3 or ext4 is much less likely to get corrupted, so I recommend ext3/4 wherever possible.
Installing the Grub bootloader
The ‘Install grub4dos’ button will run grubinst on the selected USB drive and then ask the user if they wish to also copy the grldr file. The USB drive should be already partitioned and formatted before you click this button. If the grub MBR does not seem to be written to the USB drive (because it does not seem to load grub but boots to DOS) then try the Eject button before you click on the ‘Install grub4dos’ button (but you will have to copy over the grldr file manually after re-inserting the USB drive). You will also need a menu.lst file.
You will be given the choice of installing grub4dos as an MBR or a PBR. MBR will usually work for most systems, but if you have problems (e.g. flashing cursor on boot) try PBR instead.
To test the USB drive and your grub4dos menu, press F11 to run the QEMU emulator (or SHIFT+CTRL+F11 to run in write protected mode)
Installing the grub2 bootloader
Select the BootLoaders tab – Install grub2 to MBR.
For a typical install just accepts defaults (‘Yes’). Otherwise, you can load your own boot.img (MBR boot code) and core.img (grub2).
Installing WEE bootloader (ALT+F12)
To install the WEE bootloader, type ALT+F12. You will then be presented with the default menu (weemenu.txt) which can can edit if you wish. Close the editor and a script will run which will list the weemenu.txt file for you to check and the hard disks that are in the system. You will then be prompted to confirm the installation of wee to the MBR and Track 0 of the disk that was selected originally in RMPrepUSB. Type Y followed by <Enter> to install WEE. Details on WEE can be found in Tutorial #68.
EXPLANATION OF HOW BIOSES BOOT FROM A USB DEVICE
Most BIOSes require the user to enable USB booting and set the boot order so that a USB device will boot before the internal hard disk (although some BIOSes have an F10, [ESC] or F12 key function which will allow you to choose a boot device from a BBS menu). In addition you can often set the USB speed to USB 1.1 speeds (Hi speed) or USB 2.0 speeds (Full speed). If you are having difficulty booting from a USB drive, it is recommended to use a rear USB port, set the BIOS to USB 1.1 speeds and change the boot order so that the USB drive is first in the boot menu.
Before you enter the BIOS menu, switch off the system, insert the USB drive and then switch on the system – then press the F1 or F2 or Esc or DEL key (depending on your particular system) to enter the BIOS Setup menu. Note: it is highly recommended that you always switch on the system with the UFD already connected; some BIOSes do not list the UFD or provide menu options unless the UFD is already inserted. In addition, some BIOSes only determine the type of UFD that is connected on the first cold boot, so if you re-format the UFD using a different RMPrepUSB option and then re-connect it to the target system, it will not treat the UFD as a different device type (e.g. USB-ZIP instead of USB-HDD) unless you first switch off the target system and then switch it on again.
All BIOSes behave differently, however disk storage devices are always accessed via Interrupt 13h calls to the BIOS. There are two types of ways to access a disk device via the BIOS – ‘floppy’ or ‘hard disk’ read or writes. The BIOS must determine whether to allow access to the USB drive that it detects as either a ‘floppy’ (which is accessed with Int 13h DL=00h,or 01h for the 2nd floppy drive, etc.) or a ‘hard disk’ (which is accessed with Int 13h DL=80h, or 81h for the 2nd drive, etc.). The BIOS has to determine which of these two access methods (DL=0 or DL=80h) to ‘map’ the USB drive to.
Once a BIOS determines how to map the USB device (either as a floppy device or a hard disk device), it will read the first sector from the USB device (512 bytes) into memory at address 07C0:0000h and then jump to that code. The last two bytes of the sector must end in the two bytes ‘55h’ and ‘AAh’ or it is not considered to be valid boot code. When the CPU starts to execute the code that has just been copied into memory at 07C0:0000h, the BIOS has also pre-set the DL CPU register to the correct device number (usually either 00h or 80h). The boot code can use this value in DL to load more sectors into memory from the same USB device.
There are two types of USB drives – Fixed or Removable. The type is reported by the USB controller when interogated by the BIOS.
There are three ‘types’ of USB drive formats and the BIOS must try to determine which of the three different ways to access the USB drive:
- USB-FDD (floppy disk device)
The BIOS maps the device to ‘floppy’ Int 13h DL=0. A USB device may be detected as a USB-FDD device if it has a device name similar to ‘TEAC floppy drive’ and a capacity of 1.44MB, or possibly if it has no valid partition table. The device does not need to be formatted as 1.44MB, you can have a 1GB FAT16 UFD with no MBR.
- USB-HDD (hard disk device)
A BIOS maps the device to ‘hard disk’ Int 13h DL=80h. A USB device may be treated as a USB-HDD device by the BIOS if it has a partition table and has more than one partition entry in that partition table. If only one entry exists the BIOS could treat the device as a USB-ZIP drive or a USB-HDD drive. Sometimes a BIOS menu setting can be changed to alter this behaviour. If the USB hardware device type is reported as a ‘Fixed Disk’ type by the USB device controller chip, then most BIOSes will always treat that USB device as a hard disk and use DL=80h.
- USB-ZIP (pseudo-super-floppy)
A BIOS maps the device to ‘floppy’ Int 13h DL=0. A USB device may be detected as a USB-ZIP device if the drive has a partition table containing only one entry. The BIOS may also require the device (not partition but physical device) to be under a certain size (e.g. 512MB or less) or have values in the partition table of 64hds\32secs. These conditions vary from one BIOS to the next!
In addition, when a BIOS boots from a device as a USB-ZIP device it does NOT load the first sector MBR code (LBA 0) into memory – instead the BIOS loads the Volume Boot Record code directly into memory and jumps to it by reading the single entry in the partition table to find the start position of the partition (a USB-ZIP drive can thus only contain one partition entry). The BIOS then maps the USB drive to the Int 13h DL=0 call BUT it will always adds the partition start address to any access. Thus a BIOS Int 13h DL=0 call to read cylinder 0, head 0 sector 1 (LBA 0) will actually read the first sector of the partition. The real sector 1 (LBA address 0) cannot be accessed at all. For instance, say the USB-ZIP drive has a partition table with a single entry. The partition table entry indicates that the partition starts at sector 32, then the BIOS would load sector 32 into memory and start to execute the code there. Any attempt to read a sector at CHS 0\0\1 (LBA 0) via a floppy Int 13h DL=0 call (or Extended Int 13h call) from that point onwards, will actually read sector 32. If the boot code attempts to read CHS 0\1\1 (LBA 32) it will actually read the sector located at CHS 0\2\1 (LBA 64) as the BIOS will always add the partition start address on to any access. In this way, the boot code located at the start of the partition is identical to that found on a floppy disk which has no MBR or partition table.
Some BIOSes do not support this type of booting and may always boot a USB-ZIP device as a hard disk (i.e. map the USB device to respond to Int 13h DL=80h calls) if they see a valid partition table and MBR. The difference between a USB-ZIP device and a USB-HDD device is very small, both have a master boot record and a valid partition table, however a USB-ZIP device should contain partition boot code that expects to be booting from a ‘floppy drive’ (DL=0) whereas a USB-HDD device should contain partition boot code that expects to be booting from a ‘hard disk drive’ (DL=80h). Many modern BIOSes contain a special menu option to change this behavior.
About ‘Fake’ USB Flash memory pen drives
See Tutorial #7 – There is a large worldwide problem with ‘fake’ or counterfeit USB flash memory drives being sold via web auction sites and markets, etc. These USB drives often contain faulty memory chips and appear to be larger than they really are. For instance, a ‘fake’ USB drive may be sold as being 16GB and the size reported by Windows may indeed be approx. 16GB, however it may be made with only 2GB of flash memory and the memory chips themselves may be faulty. As you use it, you may not see a problem until you fill it with more than 2GB of files. Then you may lose all of your previous files and the drive may become ‘unformatted’ and totally corrupt.
If you suspect you have one of these fake USB drives (or even if you don’t!) run the Quick Test function in RMPrepUSB or use the program H2TESTW.exe (English and German languages are available in H2TESTW). Here is a quick summary of these two utilities:
· RMPrepUSB – QuickTest – Very quick but destroys all data on the USB drive. It is not a thorough test and will not detect the odd bad block or corrupt memory cell. Recommended for checking if you have a fake ‘undersized’ UFD as it is very quick.
· H2TESTW – Non-destructive (fills the USB pen with large files which can be deleted by you afterwards). It is very slow!!!! Tests every byte except for areas that are ‘filled’ with the files that are already on it (so best to format it before testing so that it is empty).
There are also other utilities available such as the Russian Check Flash (chkflsh). Download and run the file English.bat for the English version of this very useful program.
The top Menu Bar (in English only) contains functions that are also available by using a key shortcut (as listed in the F1 Help screen) but it also includes some extra functions which are not listed in the F1 Help form.
The list below explains what each of these menu functions do (in the latest Beta version):
Explore RMPrepUSB Installation folder F3 – Opens Windows Explorer at the folder where RMPrepUSB.exe is currently located
View Speed Test results (USBSpeedDP.csv) F6 – Opens the speed test results file which contains decimal point using whatever application is associated with .csv files (e.g. Excel or Calc)
View Speed Test results (USBSpeed.csv) F7 – Opens the speed test results file using whatever application is associated with .csv files (e.g. Excel or Calc)
View File Information Ctrl+I – inspects an image file and displays it’s contents in hex bytes. If the first 512 bytes is recognised as an MBR or PBR then extra values are also interpreted
Boot from ISO file using QEMU Emulator Ctrl+F11 – User can select an ISO file and optionally create a virtual hard disk and then boot QEMU from the ISO (for instance you can install XP to a virtual hard disk using this option)
Make grub4dos ISO from Drive – this makes a bootable ISO file from your grub4dos bootable (USB) drive. It will ask for a volume label and ISO filename and then make a grub4dos bootable ISO from the contents of the selected drive. To make bootable WinPE ISOs, add oscdimg.exe (see Tutorial 83 to get it) to the RMPrepUSB\QEMU folder.
Boot from Virtual HDD image using QEMU emulator Shift+F11 – Boot from a previously installed virtual hard disk image (for instance, you can install linux to a virtual hard disk using Ctrl+F11 and then boot to the hard disk at any time later using Shift+F11)
Create a 1.44MB MS-DOS Floppy Boot Image – Extracts an MS-DOS boot image from a Windows DLL file present in your Windows OS and creates an IMA file
Get File MD5/CRC32/SHA1 (Alt+F2) Ctrl+C – Runs NirSoft HashMyFiles.exe on the chosen file to display it’s MD5 and CRC32 and SHA1 values
Exit RMPrepUSB Ctrl+X – Exits RMPrepUSB and saves the current user settings to the Windows Registry
Edit grub4dos menu (Menu.lst) F4 – Load the file \menu.lst into Notepad from the currently selected drive
Edit Speed Test Results (USBSpeedDP.csv) F8 – Loads the file USBSpeedDP.csv intp Notepad from the RMPrepUSB installation folder
Explore Drive F2 – Opens Windows Explorer at the root of the currently selected drive
Refresh Drive List F5 – re-detects all drives and repopulates the drive selection list in RMPrepUSB
Test Drive using QEMU Emulator F11 – Emulates booting from the selected drive using QEMU, a virtual hard disk size and the amount of memory available can be entered by the user first. During emulation the drive will be dismounted from the hots Windows session.
Run QEMU (write-protected) Shift+Ctrl+F11 – same as above but runs QEMU in snapshot mode. Writes to any file will not actually work.
Make All Files Contiguous Ctrl+F2 – Runs WinContig on the selected drive. First only .img, .ima and .iso files are made contiguous, then all files on the drive are made contiguous. If there is not enough room to make all files contiguous, the WinContig app will remain for the user to see which files were not made contiguous.
Launch WinContig Shift+F2 – Runs WinContig and selects the currently selected drive. This allows the user to run WinContig manually.
View Drive Information Shift+Ctrl+F2 – Reads and displays the user selected drive sectors. If an MBR or PBR is read, some data values will be interpreted for the user. If LBA 0 is requested then RMPrepUSB will try to interpret as an MBR or if this fails, a PBR. If LBA > 0 requested, it will try to interpret it as a PBR if it has valid data (v2.1.743c or later).
Format Volume (using Windows) Ctrl+F – This brings up the Windows Format drive Dialogue box. Only for use if RMPrepUSB fails to format a drive or if you want exFAT.
Note: If the device has no MBR or partition table, Windows will format the device as a floppy disk. If the device has an MBR and partition table at the time of formatting, Windows will format the device as a hard disk and it will have an MBR and partition table after the format has finished. If you format as exFAT it will not have a BOOTMGR boot sector unless you run Bootsect.exe on it afterwards. Use the RMPrepUSB exFAT option to format as exFAT bootable.
Disk Manager (diskmgmt.msc) Ctrl+K – This brings up the Windows Disk Manager MMC. Useful to assign drive letters to a mounted drive (NTFS formatting in RMPrepUSB will not work unless the drive has a drive latter assigned by Windows).
DiskDoctor Alt+Ctrl+F5 or Ctrl+D – Launches the RMPrepUSB Disk Doctor application for editing, examining and testing a disk drive.
Edit Disk Signature Ctrl+T – Reads and displays the disk signature of the currently selected drive and allows you to write a new one.
Clear ReadOnly Status – Runs Diskpart to clear the read-only attributes on the currently selected disk and drive letter.
AutoMount Drives (changes Registry) Ctrl+L – Runs the Windows command Mountvol /e to enable automatic mounting of new volumes
Set Windows Accessible Partition Ctrl+O – Allows the user to set any one of four primary partitions on USB Flash drive as the Windows accessible partition.
Install grub4dos Ctrl+G – installs the grub4dos bootloader and copies over the grldr file (same as clicking the Install grub4dos button)
Install Syslinux Ctrl+S – installs syslinux to the currently selected drive using the version of Syslinux.exe present in the RMPrepUSB installation folder
Install WEE Ctrl+W – installs the WEE bootloader to the currently selected drive. The WEE menu will be presented in Notepad to the user first so that it can be changed as required.
Install Std MBR Alt+Ctrl+F2 or Ctrl+B – installs the standard Win 7 MBR boot code to the selected drive. The Disk Signature and partition table are not changed.
Install MSDOS Bootloader (FAT16 only) – calls RMBootSect.exe to insatll the MS-DOS FAT16 bootcode to the Partition boot record
Install BOOTMGR Bootloader – calls RMBootSect.exe to install the Vista/Win7/8 bootloader to the Partition boot record which loads bootmgr
Install NTLDR Bootloader – calls RMBootSect.exe to install the XP bootloader to the Partition boot record which loads ntldr
Install grub2 to MBR – loads grub2_boot.img and grub2_core.img from grub2 folder in the RMPrepUSB application folder. You can specify your own .img files.
Note: To install the grub4dos bootloader on an exFAT volume, format the drive using the WinPE+exFAT options and answer Yes to the prompt after clicking Prepare Drive. Do NOT use the ‘install grub4dos’ button. The MBR should be the standard MBR.
Edit User Config Menu (RMPrepUSB.ini) F9 – If present, this will load the User Configuration menu in Notepad.
Save Current Config to RMPrepUSB.ini F10 or Ctrl+F9 – Appends the current configuration to the end of the ini file.
Load a User Configuration F12 – loads the User Configuration menu and allows the user to select a different preset user configuration
Use ALLDRIVES Mode Alt+F5 or Ctrl+F5 – Toggles ALLDRIVES mode to show or not show non-USB drives (also affects List Large Drives setting – see below)
List Large Drives > 128MiB Ctrl+Z – by default drives larger than 128MiB are not listed by RMPrepUSB – this will toggle this filter
Minimize Desktop during Operation Ctrl+P – Windows may hide some dialogue boxes during operation of RMPrepUSB and the utilities used by RMPrepUSB. Enable this setting so that all other Windows are minimised when RMPrepUSB is run. The Desktop will be restored once the RMPrepUSB command has finished.
Note: If you specify LARGEDRIVES as a command line parameter, then all sizes of USB drives will be listed (v1.735+) – e.g. RMPrepUSB.exe LARGEDRIVES
Quick Help + Hotkeys F1 – Shows the Usage and Hotkleys help form
User Guide (PDF) Ctrl+F1 – Launches the User Guide pdf using whatever application is associated with PDF files
Visit the RMPrepUSB website Ctrl+R – Launches a browser to the RMPrepUSB website
Update Check Ctrl+U – checks the RMPrepUSB website for the latest fully released version. Note that this does not check for the latest Beta version.
About Ctrl+A – Displays the version number of RMPrepUSBUnsupported embed
FREQUENTLY ASKED QUESTIONS – PLEASE READ!
The Q&A’s below contain lots of extra useful information and are worth reading…
Q1 – What happens if I don’t tick any of the Override options?
A1 – A partition table will be created using a hard drive geometry of 255 heads and 63 sectors per track. Only one partition table entry will be made. The volume boot record will be created with hard disk compatible parameters.
Q2 – What code is used for the Master Boot Record (MBR) ?
A2 – The code used is identical to that used by Vista. It includes BitLocker support so that if you install Vista or Windows 7 onto a USB hard disk and then enable BitLocker, it should (!!!) work. The MBR will boot both ‘floppy’ USB drives and ‘hard disk’ USB drives.
Q3 – What boot code is used for the Volume Boot Record?
A3 – The VBR code will vary depending on what filesystem and format options you have selected, as follows:
FAT16 + MSDOS – MSDOS5.0 identifier, looks for IO.SYS, MSDOS.SYS (or WINBOOT.SYS). Possible Error Messages: Error!
FAT16 + MSDOS + ZIP – MSWIN4.1 identifier, with floppy disk paramters, looks for IO.SYS, MSDOS.SYS (or WINBOOT.SYS). Possible Error Messages: Invalid system disk, Disk I/O error, Replace the disk, and then press any key.
FAT16 + FreeDOS – FRDOS4.1 which boots KERNEL.SYS (if ZIP option used then floppy disk parameters are used) – Possible Error Messages: Error
FAT16 + BOOTMGR – uses MSDOS5.0 identifier and boot code and hard disk parameters. Possible Error Messages: Remove disks or other media, Disk error, Press any key to restart.
FAT16 + NTLDR – uses MSDOS5.0 identifier and boot code with hard disk parameters. Possible Error Messages: NTLDR is missing, Disk error, Press any key to restart.
FAT32 + MSDOS – MSWIN4.1 identifier and boot code which looks for IO.SYS and MSDOS.SYS (or WINBOOT.SYS). If ZIP option is used then uses floppy disk parameters. Possible Error Messages: Invalid system disk, Disk I/O error, Replace the disk and then press any key
FAT32 + FreeDOS – FREEDOS which boots KERNEL.SYS. If ZIP option is used then uses floppy disk parameters. Possible Error Messages: Loading FreeDOS, No KERNEL.SYS
FAT32 + NTLDR – uses MSDOS5.0 identifier and boot code and hard disk parameters. Includes 4 byte PATCH at E6-E9 changed to 90h (NOP). Possible Error Messages: Remove disks or other media, Disk error, Press any key to restart.
FAT32 + BOOTMGR – MSDOS5.0 identifier. Possible Error Messages: BOOTMGR is missing, Disk error, Press any key to restart
NTFS + BOOTMGR – Vista NTFS boot code. Possible Error Messages: A disk read error occurred, BOOTMGR is missing, BOOTMGR is compressed, Press Ctrl+Alt+Del to restart
NTFS + NTLDR – XP boot code with 4 byte PATCH at D9-DCh changed to 90h (NOP). Possible Error Messages: A disk read error occurred, NTLDR is missing, NTLDR is compressed, Press Ctrl+Alt+Del to restart.
RMPrepUSB uses special modified VBR code which has various tweaks to improve USB booting on different BIOSes. For that reason it is always recommended to format a bootable USB drive with RMPrepUSB rather than any other format utility.
Q4 – How do I copy a Vista or Win7 OS install DVD onto a UFD and make it bootable?
A4 – Select the BOOTMGR option + HDD (2PTNs). Browse to the OS DVD and set the DVD drive letter as the file copy path. Tick the ‘Copy’ checkbox. Click Prepare Drive.
See http://www.youtube.com/watch?v=3bh7aeAyTYk for a tutorial. if you have an ISO file, select the ISO file in the 5 – Copy Folder/File box and tick the Copy checkbox.
Q5 – How do I copy an XP OS install CD onto a UFD and make it bootable?
A5 – There is no simple way to do this from an ordinary XP CD and make a UFD bootable. Please visit www.boot-land.net for more information. If you wish to install XP onto the hard disk of a PC by booting from a UFD, you can use WinSetupFromUSB (which has a version of RMPrepUSB built in).
If instead, you want to boot directly from a UFD – try BartPE. Use PE-Builder to create a BartPE folder (by taking files from an XP installation CD) and then select the BartPE output folder in RMPrepUSB and tick the COPY FILES box and the ‘PE to USB’ box. Also checkout my UBCD4Win tutorial!
Q6 – Why does my bootable BartPE\WinPE v2 (Vista) UFD boot on one system but not on another?
A6 – These operating systems expect be present on a ‘hard disk’ type of device which is accessed via Int 13h DL=80h. The BIOS that does not boot successfully is probably treating the UFD as a USB-FDD or USB-ZIP device and thus ‘mapping’ the UFD to Int13h DL=00h and treating the device as a floppy device. It may be possible to change a setting in the BIOS setup menu (e.g. Emulate USB device as ‘Fixed Disk’) so that the UFD is treated as a hard disk. You should also try setting the HDD (2PTNs) option and the ForceLBA option. Also try changing the filesystem (e.g. use NTFS instead of FAT16). Some BIOSes will treat UFDs below a certain physical size (not partition size) as a USB-ZIP device, so try a 4GB or larger UFD. Also, try copying the boot files to the drive before the rest of the files. The best way to do this is to create a separate folder containing just the boot files (e.g. ntldr, ntdetect.com, boot.ini for XP, or IO.SYS, MSDOS.SYS and COMMAND.COM for MS-DOS or KERNEL.SYS for FreeDOS). Also try with and without the 2PTNS option as some BIOSes work well with this option but others will not boot at all!
If you are using MS-DOS or FreeDOS, you can install grub4dos and construct a menu.lst file that maps (hd0) to (fd0) or vice versa. This allows you to boot to DOS as A: or C: by mapping one device to another. However this trick does not work for other operating systems that load their own disk drivers.
IMPORTANT! After re-formatting a UFD, always switch off the target system, insert the UFD and then switch on the target system. Do NOT just use Ctrl-Alt-Del on the target system as some systems do not re-detect the type of UFD on a warm reset.
Q7 – Why does my MS-DOS bootable UFD boot as drive C: on some systems?
A7 – This will be due to the BIOS mapping the UFD as a hard drive (accessible via Int 13h DL=80h) rather than as a floppy device. Try the Boot as FDD and Boot as ZIP override options.
Q8 – My PC seems to treat UFDs as a floppy device, how can I boot to WinPE v2?
A8 – There are ways to work around this. First try a larger UFD and use the Boot as HDD option. Please visit http://reboot.pro for other solutions. A typical way is to use Grub or Grub4DOS as a 2nd stage boot loader which in turn will load the operating system. For instance, you can boot to a WinPE v2 iso file using Grub4DOS if your BIOS does not support USB-HDD booting.
Q9 – Where can I ask a question about RMPrepUSB or ask for help?
A9 – http://reboot.pro – post specific questions about RMPrepUSB in the Project Forge – USB formatting utilities – RMPrepUSB topic, for other questions choose the most appropriate forum and start a new topic. Alternatively, contact the author (me) using the Contact Me page.
Q10 – Can I re-distribute RMPrepUSB or use it as part of a commercial soultion?
A10 – Only with the permission of the author or RM Education plc (UK). This is because although RMPrepUSB and RMPartUSB are Freeware and made freely available for private use, it is not free for commercial purposes. Commercial enquiries should be directed to firstname.lastname@example.org (ask for ClassRoom Technologies dept.). RMPrepUSB and RMPartUSB are the intellectual property of RM Education plc (www.rm.com). RM may ask you to remove the software or take legal action against you if these utilities are used for commercial purposes (i.e. if you are selling it) without permission or without a licence having first been obtained (and after all, it’s only polite to ask J ). Redistribution without permission from the author is also prohibited.
Q11 – Does RMPrepUSB/RMPartUSB work under WinPE v2/v3?
A11 – Yes as long as MSVBVM60.DLL is present in the same folder! If no USB drives are listed then copy this dll file from the WINPE_EXTRA folder to the same folder that RMPrepUSB.exe is located in. Most functions will work except perhaps the folder browse button in RMPrepUSB – you may need to type the folder path in manually.
Q12 – How can I use RMPrepUSB in my script/batch files?
A12 – You cannot, but you can use RMPartUSB. Type ‘RMPartUSB’ in a Windows command console window for help. RMPartUSB uses a command line and returns an errorlevel after completion. You can also use the LIST, GETDRV and FIND commands to find the drive number of a USB device. Tip: RMPrepUSB shows the exact command line that it uses to run RMPartUSB. For instance, you can use RMPartUSB in a cmd script to detect the presence of UFDs, their drive letters and partition and format them.
Q13 – Sometimes after running RMPartUSB, it returns a large negative error number – why?
A13 – This has been observed to occur when using Windows 2000 or when terminating the RMPartUSB command console window before RMPartUSB has itself terminated. For instance, if you click the USBInfo button in RMPrepUSB and then terminate the shell windows that is displayed by RMPartUSB, RMPrepUSB may report this error message. The reason is unknown.
Q14 – I used RMPrepUSB to format my UFD and make it bootable but there are no files on it and it won’t boot?
A14 – RMPrepUSB does not copy any boot files. Microsoft boot files are part of the operating system and cannot be distributed. You can obtain them if you are licensed to do so from CDs or DVDs or other sources, or use Freeware like FreeDOS (included in the RMPrepUSB application folder – press F3 to view).
Q15 – I have set the USB partition size text box to 500 MB, how do I set it back to the maximum size?
A15 – Type ‘MAX’ in the Size text box or click on the Refresh button.
Q16 – RMPrepUSB reports an error when it runs but I know the UFD is good – why?
A16 – Under Vista or Windows 7 you must right-click on RMPrepUSB.exe and choose ‘Run as Administrator’. Later versions contain manifest files so this should not be necessary and you should be prompted for permission to let RMPrepUSB run with Administrator privileges.
Q17 – The Prepare Drive button does not seem to work under Vista – nothing happens?
A17 – Try creating a folder at C:\RMPrepUSB – do not use a folder in special locations like the Desktop or My Documents as these may have special limited access rights under Vista/Win7.
Q18 – I used RMPrepUSB/RMPartUSB and now something is wrong with my USB pen and I can’t seem to access it.
A18 – Try the CLEAN and QUICKTEST option. If it tests OK, try to re-format it to a smaller size (e.g. 512MB). If that looks OK try a larger or maximum size. Use FAT16 or FAT32 (but not NTFS). Partition the USB pen to maximum size and then use H2TESTW to check the USB drive has no errors. If all else fails, try a different USB format utility.
Q19 – What does the QUICK SIZE TEST function do?
A19 – Quick size test will check a UFD for duplicate or bad ‘pages’. It writes to some sectors on the UFD and then reads them back to see if the information is correct. For example, it would write 0 to Sector 0 (first 8 bytes), then 2048 to the first 8 bytes at the 1Mb point (sector 2048), then 4096 to the first 8 bytes at sector 4096 (2Mb point), etc. – and then reads back the ‘marker’ values in each of the sectors. This is useful as a quick test of a UFD. If it passes this test then you should use H2TESTW to run a thorough test of all bytes. QuickTest is designed to quickly check a UFD to see if it contains the correct amount of memory chips. If a UFD fails QuickTest then there is no need to wait hours for it to be tested using H2TESTW or ChkFlsh as you know it will fail. QuickTest will also report the maximum usable size of memory in the UFD so you can reformat it to the correct size.
Q20 – I ran QUICK SIZE TEST and it failed – what can I do to fix my UFD?
A20 – First you should realize that even if you manage to ‘fix’ the UFD it will be very unreliable and may fail (or corrupt the file contents on it) at any time. For instance, you could copy the latest draft of your new blockbuster novel to it, then copy it over the top of your master file on your hard disk. Then later you may find out that you have a corrupted file on your USB drive and have overwritten the original on your hard drive with the bad version L – you have been warned!
One way to ‘fix’ it is to partition the UFD to a lower volume size. RMPrepUSB or H2TESTW will usually give you a clue as to what the maximum usable size might be. When you have decided on a size, proceed as follows (e.g. you have a 4GB pen but think only 1GB is usable).
1. Use RMPrepUSB to partition and format the UFD – use FAT32 or FAT16 rather than NTFS as accessing an NTFS filesystem that has errors or bad blocks can ‘upset’ Windows and lead to hangs/crashes. Set the size of the partition as required. Start low – e.g. 800MiB.
2. Run H2TESTW to test the new volume.
3. If the test passes, increase the size in step 1 – e.g. 900MiB and repeat steps 1 and 2 until H2TESTW fails. Then reformat with the previous ‘good’ size.
Q21 – I started to use QUICK SIZE TEST and H2TESTW and at first I just got a few errors reported from my 4GiB UFD, but now I get write errors and the system seems to hang for ages during testing.
A21 – This is a typical symptom of cheap or ‘fake’ UFDs that have been constructed from faulty memory. The memory may be multiply mapped (e.g. 1GB mapped 4 times so it appears as 4GB) and the controller bad block management probably has not been set up properly. Error correction may not even be working correctly and the memory has probably not even been tested thoroughly by the UFD manufacturer. Everything may appear to be OK as long as you don’t use more than 1GB of the UFD, after that files will begin to get corrupted. In addition, more memory ‘pages’ may fail due to the stress of testing (or normal use) over time. If a UFD sector write fails, the PC can hang/freeze for many minutes on each sector write operation – be patient or pull out the UFD to make it fail quickly.
A UFD from a reliable make and source (Netac, Kingston, Lexar, etc.) can be tested many times without any problem.
Q22 – I have tested my UFD with RMPrepUSB and H2TESTW and it is fine, but after a week or so I get corrupt files or Windows wants me to reformat it and thinks it is faulty. If I re-format it then all is well until a few days later – is the UFD faulty?
A22 – Are you using the Windows SystemTray ‘Safely Remove Hardware’ icon and ‘ejecting’ the UFD before pulling it out of the USB port? When Windows sees a FAT filesystem, it loads the FAT tables into system memory. Any changes made to the files on the UFD will also cause the FAT tables in Windows memory to be updated – BUT NOT ALWAYS THE FAT TABLES ON THE UFD ITSELF! So if you simply pull out the UFD, the FAT tables on it will not have been updated. By using the ‘Safely Remove Hardware’ feature, you cause Windows to write all the new FAT table changes to the UFD. This is particularly important if your UFD appears as a ‘Fixed Disk’ to Windows and not as a ‘Removable Disk’. You can check to see if caching is used by right-clicking on the UFD drive in Windows Explorer and choosing Properties – Hardware – Properties – Policies. Even if it is set to ‘Quick Removal’ on your PC, you should always use the ‘Safely Remove Hardware’ icon on other PCs – so get into the habit and always do it!
If your UFD is formatted with NTFS, again always use the ‘Safely Remove Hardware’ icon before pulling out the UFD. The danger is that Windows can write or read to the UFD at any time, and pulling out the UFD at exactly the same time can lead to data corruption.
If you are still having problems, try the UFDs which have ‘Ultra Stable Technology’ (e.g. Netac) or similar. These UFDs employ a buffering scheme which prevents corruption due to power loss when a UFD is pulled out during write operations.
Q23 – I am having trouble getting some systems to boot. A USB flash memory pen works on one system but not on another. Some pens work on one system, but a different pen with an identical image does not work on the same system! What is going on?
A23 – This is a typical problem and it all comes down to the BIOS. Read the explanation above about how BIOSes boot USB devices. Here are some issues that have been observed with some BIOSes:
- The BIOS will not attempt to boot any USB device over 512MB – the USB pen LED will not even flash during system POST as no read request is ever made!
- The BIOS will not attempt to boot any USB device over 1GB.
- The BIOS will treat any USB device under xxx MB as a USB-ZIP device, and any device over xxx MB as a USB-HDD
- The BIOS will treat any USB device as a USB-ZIP and always boot it as a floppy device
- The BIOS will treat any USB device as a USB-HDD and always boot it as a hard disk device
- The BIOS will boot a USB-FDD formatted device that has no MBR or partition table, but will not boot a USB-ZIP or USB-HDD device
- The BIOS will boot any device with only a single partition table entry in the MBR as a floppy device, but will boot a device that has two partition table entries as a USB-HDD device
- The BIOS setup menu can be use to make the BIOS always treat a USB device as a ‘Removable’ device (USB-ZIP) or a ‘Fixed Disk’ device (USB-HDD) depending on user choice.
- The BIOS looks at the Volume Boot record to determine type of device (e.g. if it sees MSWIN4.1 then it treats the device as a USB-ZIP device).
- Partition parameters – if the partition has 32hds and 16 sectors per track then treat it as a USB-ZIP, if 63 sectors then treat it as a hard disk.
- If the end cylinder is 1023 (max) then treat it as a hard disk.
- You format the same USB pen using RMPrepUSB and used the same files (you even make an image and re-used that so you KNOW the USB pen contents are identical), but it seems to sometimes work and sometimes not on the same PC – it is as if it has good and bad days!
A BIOS can be made to boot the same device in different ways – e.g. USB-FDD, USB-KEY, USB-ZIP, USB-HDD – try each in turn and try different ways of formatting with RMPrepUSB.
Be methodical in your testing! There are 5 variables to consider FOR EACH TYPE OF PC as below:
1. BIOS MENU settings
2. Physical size of USB device
3. MBR on USB device (there is no MBR on a USB-FDD device or there is an MBR and partition table on USB-ZIP and USB-HDD devices)
4. Filesystem the volume is formatted with (NTFS, FAT32 or FAT16)
5. Code in VBR (i.e. if the code expects to access a floppy drive or a hard disk)
The last three (3-5) are determined by settings in RMPrepUSB, the first two must be changed by the user. I suggest using a 512MB USB pen and a 2GB USB pen for all testing and make sure they have activity LEDs so you can see if the BIOS is reading them. Also use FreeDos for all initial testing because FreeDos can usually boot to either a ‘floppy’ device or a ‘hard disk’ device without error (unlike some versions of MSDOS). Try different BIOS and RMPrepUSB options and write down all results (all error messages – see Q3 above, and if boots as A: or C:).
PC Model and BIOS version (use latest version if possible!)
USB pen make, model, size
RMPrepUSB options used
BIOS settings used
Result (did the LED flash, any BIOS messages, any boot messages, A: or C:, etc.)
WARNING: In between each test, always switch off the system under test each time, then switch it on, then go into the BIOS and check the settings and that the USB pen is listed correctly. If you do not cold boot or reset, the BIOS may ‘remember’ the type of USB drive that was fitted previously even though you have just re-partitioned the USB drive and changed its format and boot type using another computer! Many computers do not need to be switched off and on again, but some do – if your computer is one that does require to be switched off and on again and you do not do this, you can spend many frustrating hours trying to work out what is going on! WARNING: A lot of BIOSes will remove your (previously added) USB drive from the BIOS drive boot order menu list if you remove the USB pen before you switch it on again. So always check BIOS boot order every time! Remember, just because one type of system works with one particular USB pen drive, it does not mean that other systems will! Have fun and don’t pull all your hair out!
Q24 – How can I make a bootable USB pen drive with BartPE on it?
A24 – Simples!
- Obtain an XP installation CD
- Download PE-Builder (e.g. v3110a)
- Copy the contents of your XP CD to say C:\XPCD
- Run PE-Builder.exe and select the source folder C:\XPCD, check the Output folder is set to BartPE and Media Output set to None
- Click Build
- When finished run RMPrepUSB
- Set the options as shown below (use FAT16, FAT32 or NTFS – XP, Boot as HDD). Check that setting 5 has both Copy Files and BartPEàUSB set.
- Click 6 Prepare Drive
- When finished, click Eject Drive
See also my website for an UBCD4Win tutorial.
Q25 – I want to copy my own extra files to my BartPE USB drive. Can I do this automatically?
A25 – Yes. When you tick the ‘BartPE to USB’ box, after the File Copy, RMPrepUSB calls the batch file RMPrepUSBXP.cmd. This batch file tweaks the files on the USB drive to make them bootable and also copies all files in the PEtoUSB folder over to the USB drive. So simply add your files to the PEtoUSB folder which is located in the same folder as RMPrepUSB. Alternatively, edit the batch file RMPrepUSBXP.cmd which is in the same folder as RMPrepUSB, to copy your own folder over. E.g.
xcopy /herky C:\myPEextras\*.* %pen%\*.*
Q26 – I want to boot XP/WinPE v1 (not BartPE) – the ‘BartPE to USB’ function doesn’t seem to work with my version?
A26 – You must look on the internet (reboot.pro) to find out how to prepare the source files correctly and how to convert the files so they will boot from a USB drive. Once you know how to alter the boot files, you can automate this by using Notepad to edit the file RMPrepUSBXP.cmd. This file is automatically run when you tick the BartPE to USB checkbox. If it is just a case of adding extra files to the USB key, you can simply drop these extra files into the PEtoUSB folder which is located in the same folder as RMPrepUSB. During the running of RMPrepUSBXP.cmd, any files and folders that are in the PEtoUSB folder will be copied across (and overwrite) any files on the USB drive.
Q27 – I want to install BartPE on a USB drive but using Grub4DOS rather than NTLDR, but I cannot tick the ‘PE to USB’ checkbox when I select the MS-DOS option.
A27 – This has been done to prevent mis-use, however there is a deliberate loophole. First select XP/WinPE and tick the COPY FILES and PE to USB checkboxes. Then change the radio button option from XP/WinPE to either MS-DOS or FreeDOS. After RMPrepUSB has run, you can add your DOS boot files and Grub menu files.
Q28 – Will the Speed Test function harm the data on my USB drive?
A28 – The non-destructive Speed Test reads a large amount of data from your USB drive into memory and then writes back the same data to the USB drive. It should not corrupt or destroy any of the data on your USB drive – HOWEVER… (get out clause now follows…) if your computer has faulty RAM or the USB flash memory in your USB drive is unreliable or something else goes wrong, this function may possibly destroy all the data on your USB drive. For this reason the button has a pink colour to show that writes to the USB drive will occur and the function could be slightly risky if using unreliable hardware. Data is written from the start of the drive (in case you don’t have as large a USB drive as you think you have!), so the boot and directory areas of the drive will be read and written to and thus ***could*** be corrupted.
Q29 – How can I test the speed of my USB drives and log the results?
A29 – The Speed Test button performs a read/write speed test and the results are automatically added to the file USBSpeed.csv in the same folder that you placed RMPrepUSB.exe in. Just double-click on the .csv file to load it into Excel or a similar spreadsheet application. There should be two lines for each run (one row for read speed and one row for write speed). In addition to USBSpeed.csv, a second file USBSpeedDP.csv is written – this file always uses a decimal point for numbers and commas for separators whereas USBSpeed.csv will use your locale settings (e.g. if your locale is Holland, it will use ; for separators and , for decimal points and so Excel will load this correctly as Excel uses locale settings).
Q30 – I can boot from a FAT16 2GB UFD formatted as FAT16 but not from a 3GB or bigger UFD – why not?
A30 – MS-DOS cannot access FAT16 partitions over 2GB (Size=2000MB in RMPrepUSB/RMPartUSB). Set the partition size to 2000 or use FAT32.
Q31 – What is the difference between using the Syslinux radio button in the Boot Options section and the Install Syslinux button after formatting?
A31 – Not a lot! The Boot Option radio button will disable NTFS as a choice and use MSDOS as the OS boot type, then after formatting it will run the syslinux.exe utility to add the syslinux boot code and replace the DOS boot code. The Install Syslinux button just lets you run syslinux on any USB drive at any time without having to format it first, so if you want to try out a syslinux menu after having made a grub4dos USB drive, you can just overwrite the old grub4dos boot code with new syslinux boot code.
Q32 – I want to make a language file for RMPrepUSB, how do I do this?
A32 – The first step is to convert the English.ini file to your own language using a text editor that supports UniCode (such as Notepad). Note that the font name, Locale (LCID) and font sizes are very critical. The file Fonts, CharSets and LCIDs.rtf in the \LANG folder contains information on which settings to use. Under Windows XP, to see some Asian languages, it may be necessary to install the Asian Language pack from the XP CD (using Control Panel – Regional and Languages – Languages – Install Files for East Asian languages). You should always choose the font and LCID suggested in the txt file even if other fonts appear to work, this is because your PC may be localised for your Region but English versions may not use the correct fonts – for instance for Simplified Chinese use SimSun font even though Tahoma may appear to work correctly on your computer, it will not work correctly on European PCs.
If you also wish to translate the RMPrepUSB.pdf file, the original Word .doc file can be downloaded from the RMPrepUSB website.
Once you have made a new .ini file (and pdf file) simply place them in the .\LANG folder. Every time you click on the language drop-down box, your new language file will be re-loaded.
See Tutorial #51 on the RMPrepUSB website.
Q33 – How do I get the latest version of RMPrepUSB?
A33 – Version 2.0.809 and later have a ‘Get Latest Version’ button on the Help form. When you click on this button it will attempt to download a version.txt file from the RMPrepUSB home website. This file contains the version number of the latest fully released and stable version of RMPrepUSB and will download the ZIP file of the latest version to the same folder as RMPrepUSB.exe. You will then need to Exit from RMPrepUSB.exe and unzip the files from the new version and overwrite your current version (or make a new folder if you prefer). The latest Betas can be found at http://sites.google.com/site/rmprepusb. Although they are Betas, they will normally contain improvements and bugfixes and unless otherwise specified, they are better than the current released version.
Q34 – The results from the Speed Test seem very high – are they correct?
A34 – Yes – Chkflsh.exe also gives similar results to RMPrepUSB. The thing to bear in mind is that the figures shown are for a single 63MiB sequential direct access read and write. In the real world, this type of access would not be used, so the read/write figures obtained are ‘best case’ figures for that OS and driver and chipset. This allows you to compare UFDs without needing to worry about how they are formatted (FAT16/FAT32/NTFS) or how the operating system is accessing them. In other words, it is a measure of the USB drive speed and PC hardware but does not test which filesystem is fastest. So provided you use the same PC and OS, you can compare different USB drives fairly even if they are formatted differently. It also means the test is quick! However, note that (for the same UFD) results will vary depending on the Operating System used, the USB driver used and the mainboard, BIOS and chipset used to test it with.
Q35 – I want to boot to DOS as drive A: when using the Boot as FDD setting, but my PC always tries to boot it as C: (and I get a command.com not found error), how can I fix this?
A35 – Prepare your UFD for MS-DOS or FreeDOS drive using RMPrepUSB and the ‘Boot as HDD’ setting, then use the ‘install grub4dos’ button to install grub4dos. Then create a menu.lst file as below (the lines beginning with # are comments and can be omitted):
title MS-DOS (AS FLOPPY) AND HDD as HDD0
map (hd0,0)+1 (fd0)
# map the first partition of the hard disk as a floppy disk
map (hd0) (hd32)
# map the UFD as a virtual cd
map (hd1) (hd0)
# map the real hard disk as hard disk 0
# hook Int13 interrupts so all map changes take effect
# load the io.sys code into memory from the floppy disk (now ufd is fd0)
# set the file root as the floppy disk
# Tweak BIOS device numbers so DOS sees 1 floppy and 1 hd
(if using FreeDOS replace ‘io.sys’ with ‘kernel.sys’ in the above menu). The above menu re-maps the UFD partition, which appears as a hard disk in the BIOS after booting, to appear as a floppy disk drive.
Q36 – When I boot from a USB device and run ImageX (or another imaging utility) to capture an image, it does not work and refuses to save the image – why?
A36 – You cannot save files larger than 4GB on a FAT32 volume. Try formatting the USB device with the NTFS filesystem. Also try reformatting the USB drive with RMPrepUSB. Also close down all Explorer Windows and quit as many applications as possible before running ImageX.
Q37 – How can I make an image of my Windows hard disk and copy it to another hard disk on another system (or lots of systems)?
A37 – I would recommend booting to WinPE (VistaPE or Win7PE) from a USB drive (of course!) and then using the Microsoft tool ImageX.exe after using sysprep.exe. For a getting started guide see my tutorial on the RMPrepUSB site here.
Q38 – Where has H2TESTW gone?
Q38 – The author has requested that I don’t include a copy in my download and that you download the latest version from his website. Use the Help button on RMPrepUSB and then click on the H2TESTW link.
Q39 – When using grub4dos and loading an ISO file I get a ‘ Error 60: File for drive emulation must be in one contiguous disk area’ error – but it used to work before?
A39 – Typically, you will get the non-contiguous error when you have edited or deleted files on the USB drive and then copied over an iso file or simply overwritten the old iso file with the new iso file. If you get this error when trying to boot an ISO file using grub4dos from a USB Flash Drive, you can run WinContig (hit CTRL+F2) to fix the ISO file, but it is very slow when run on a USB flash drive. A much quicker way to fix the problem is to copy all the files over to your hard disk, run RMPrepUSB again on the UFD to reformat it and then run grub4dos and then copy all the files back again. If this is not possible, then always copy the iso file to the USB drive first, before you edit any files on the USB drive.
Q40 – My USB drive is not listed by RMPrepUSB –why not?
A40 – RMPrepUSB should list all USB drives that are over 0 bytes in capacity. U3 USB flash drives may not be listed unless they have been enabled by the U3 Launcher application. If you are running BartPE or Windows PE or WINE under linux with WINE, it is possible that you need the MSVBVM60.DLL (which is normally present in Windows XP and later Windows versions). Copy the file from the \WINPE_EXTRA folder in the full download to the same folder that RMPrepUSB.exe is located in. This dll file is also required for RMPartUSB.exe.
Q41 – When booting grub4dos on some PCs I just get a flashing cursor (or ‘missing – mbr Helper’ message) and no grub4dos menu, but other PCs boot fine – why?
A41 – This is caused by the BIOS code, but can often be fixed by installing grub4dos to the Partition Boot Record (PBR or sometimes called VBR) instead of the Master Boot Record (MBR). When you click on the RMPrepUSB Install grub4dos button, choose the PBR option. Also try changing the Boot to HDD option (some BIOSes don’t like this option, some only boot with it!). This issue should be fixed in v2.1.607 and later and you should be able to install grub4dos to either PBR or MBR.
Q42 – When I load the USBSpeed.csv file in OpenOffice (or Excel), I do not get the proper columns – why?
A42 – This is because Excel takes account of your regional settings (locale) but OpenOffice does not. If USBSpeed.csv does not load properly, try USBSpeedDP.csv which always contains decimal points for numbers and commas for field separators.
In versions before 2.1.503, the format of the CSV file was that each field was separated by a comma, but the number format would be written in your own locale’s format. This meant that for non-US/UK countries (e.g. Germany), you could get a CSV file such as:
To further complicate the problem, the correct CSV format expected by Excel in non-US/UK countries is to use a semi-colon as a separator and a comma as a decimal point. E.g.
Version 2.1.503 and later of RMPartUSB, now writes two CSV files:
USBSpeed.csv which writes according to the locale on your computer (e.g. in Germany it writes aaa;bbb;ccc;ddd;5,6;6,2) and USBSpeedDP.csv which always writes a CSV file with commas as separators and dots as decimal points (aaa,bbb,ccc,ddd,5.6,6.2). So use USBSpeed.csv if using Excel, or USBSpeedDP.csv if you application always expects commas and decimal points.
Q43 – How can I copy an image onto a USB drive of a different size?
A43 – You cannot re-size an image using RMPrepUSB. So you need to follow these steps:
1. Determine the minimum partition size required to hold all the files in the image (e.g. say it is 2.7GiB)
2. Set the size in RMPrepUSB to just larger (say 2.9GiB) and reformat the USB drive to that size
3. Prepare and test the USB drive to make sure it works on all systems
4. Make a USB–>File image using the PALL setting
5. Now use the File–>USB button to copy the image to all your other USB drives (which must be at least 2.9GiB in size)
6. If you want to expand the partition and it is a single NTFS partition (do not use HDD 2PTNS option), then use Windows Diskpart command as follows:
SEL VOL J: (assuming J: is the volume letter given to your USB drive that you want to expand)
Tip: You can reduce the size of the final image file using a file compression program like 7Zip. However, if the partition contains lots of ‘junk’ data in the unused sectors of the disk image, the disk image file will not compress very well. You can clear out the unused sectors and in a number of ways such as:
- On the Image that you have made – Run WinImage then use Image – Defragment – this is fast and efficient.
– OR –
- BEFORE using the Drive–>File button, clean out the unused disk sectors on the USB drive. Download and install Disk Redactor. Run it on the drive that you are about to take an image of. This process is very slow however! A faster method is to use ImDisk to mount the Image file, run Redactor on the mounted volume and then dismount it.
After clearing out the unused sectors you can use 7Zip or your favourite compression programs to compress the file.
Q44 – I am booting to BartPE/UBCD4Win and get the XP error ‘PreLogon – File not found’. This does not happen when booting from CD. How do I fix this?
A44 – You probably prepared the OS files on a Vista or Win 7 system. Create a folder on your USB drive under \MININT called \Registration. Copy the file from your Windows Vista/7 hard disk folder C:\Windows\Registration\R000000000001.clb to make the file \MININT\Registration\R000000000001.clb on your USB drive.
Q45 – I get a BSOD when booting BartPe from USB – why?
A45 – Try replacing the ntdetect.com file with the one from W2K3 SP2. Some Dell systems for instance, require this.
Q46 – My (Dell) system does not boot to grub4dos menu after using HDD+Force LBA options – why?
A46 – Some BIOSes do not ‘like’ the Force LBA option – only try this option if the USB pen will not boot without it.
Q47 – My USB device does not appear in the drive list –why?
A47 – To appear in the device list, the USB drive must appear as a \\physicaldrivex device in Device Manager, must have a size of greater than 0 bytes and must be classed as a USB device. RMPrepUSB v2.1.2 and later have improved USB detection. Note that password protected U3 devices will not appear in the menu unless you have enabled the USB storage device using the U3 Launcher software.
Q48 – My USB Flash drive seems to be faulty, it takes a LONGGGGGGG time to access it even under RMPrepUSB and my system just stops responding. Should I throw it away?
A48 – No! It probably has corrupt data on it and Windows cannot understand it, the USB drive itself is probably fine. You need to wipe the data from the drive but as Windows cannot access the drive, you have to find another way to clean it – see here for details.
Q49 – What is a GiB or MiB or KiB?
A49 – Drive manufacturers use KB to mean 1 thousand bytes (i.e. 1000), but computers (operating systems and applications) often regard 1024 bytes as being equal to ‘1KB’. To avoid this confusion the new abbreviation KiB was invented. So 1KiB=1024 bytes, 1MiB=1024×1024 bytes or 1048576 bytes, 1GiB=1024x1024x1024 bytes or 1073741824 bytes. This means that a 160GB hard drive may actually appear as 149GiB in Windows (which it still calls ‘GB’ not ‘GiB’) which is the same as 160GB. RMPrepUSB uses GiB, so a 32GB USB flash drive may appear as 29.8GiB in RMPrepUSB or 29.8GB Windows. Still confused – you would think a computer could display a size correctly wouldn’t you?
Q50 – How do I use RMPrepUSB on a (non-USB) SATA or IDE hard drive?
A50 – Hit CTRL+F5 or ALT+F5 – or use the Start Menu entry for RMPrepUSB ALLDRIVES or open a command prompt (shell) window as an Administrator (right-click and Run as Administrator on Start Menu – Program Files – Accessories – Command Prompt) and then type RMPREPUSB ALLDRIVES. You should then have access to all physical storage drives except floppy drives and CD/DVDs. Take care not to format or install grub4dos to the wrong drive! Press CTRL+F5 or ALT+F5 to toggle the mode off again.
Q51 – I used the syslinux option but I cannot get the syslinux.cfg menu to display – I just get a black screen instead and it seems to hang?
A51 – This is probably due to the version of syslinux.exe not matching the version of vesamenu.c32 in your OS files on the USB drive. Try using menu.c32 instead in your syslinux.cfg menu file. If that works then it is a vesamenu.c32 issue. Either find another version of the vesamenu.c32 file or try replacing the syslinux.exe file in the RMPrepUSB menu with another version of syslinux.exe and re-running RMPrepUSB so that syslinux is re-applied to the USB drive. COM32R versions of vesamenu.32 that are dated 2010 will probably require syslinux v4.03 or later so use RMPrepUSB v2.1.604 or later. Syslinux v4+ needs a vesamenu.c32 file in COM32R format. The version of syslinux included with RMPrepUSB versions before 2.1.604 used an older version which requires COM32 format files. Version 2.1.604 and later use syslinux 4.03 (or later) which requires COM32R.
Different versions of syslinux.exe and their .32 files may be found included with later versions of RMPrepUSB downloads in the syslinux folder. If you have version incompatibility problems, use the v4.03 .c32 files in your USB’s syslinux.cfg menu.
Q52 – When I run Quick Size Test capacity test, sometimes it reports an error (e.g. last sector bad) and sometimes it does not. Also, sometimes RMPartUSB seems to pause for 2 minutes before completing – how can I fix this?
A52 – First try disabling your antivirus software or reformat the drive as an HDD or CLEAN it. If you have a USB drive which has been formatted as ‘FDD’ or ‘USBFDD’, then the antivirus software may start scanning it which will interfere with the actions of RMPartUSB. Secondly, reboot Windows to try to clear the error.
Q53 – I am having problems running QEMU F11 function?
A53 – To emulate booting from the USB drive selected in the RMPrepUSB dropdown selection box, just press F11. When choosing the amount of virtual RAM memory to use, RMPrepUSB shows you as the maximum approx. 75% of Windows available memory. If QEMU does not seem to launch, try reducing the virtual memory size to say 64MiB instead of the default 512MiB – don’t go lower than 32MB as grub4dos does not work well below 32MB.
Check you have the two files StartFromUSB.cmd and CreateImg.cmd. These are the two files that are called by RMPrepUSB. If the two cmd files do not appear to work, you can debug them by editing them in notepad and placing the word ‘pause’ at the end of the file. As the command shell is minimized by Windows during running, you will need to find the minimized command shell task and maximise it to see what error messages you get and then press Enter to continue.
The F11 feature allows you to create an empty virtual hard disk or use the existing one. It is always called ‘harddisk.img’ and located in the QEMU folder below the RMPrepUSB application folder – if you want to use your own hard disk image then replace it with your own file. By using a virtual hard disk, you can test OS installation USB drives (e.g. install XP or DOS onto the virtual hard disk).
Q54 – What is WEE and how do I install it?
A54 – WEE is a cut-down version of grub4dos. It can load many bootloaders directly but also can be loader by Windows bootloaders such a bootmgr. This means you can boot to WEE using a Windows BCD and then from WEE you can load grub4dos or boot to any other OS, partition or ISO/image. See Tutorial #68 for more details.
Q55 – What does the ALT+CTRL+F2 Overwrite MBR function do?
A55 – This function replaces the boot code in the Master Boot Record in the first sector of the selected disk (Sector 1 Head 0 Cylinder 0 or LBA 0) with the standard Windows boot code. The normal MBR boot code is quite simple in operation, it looks at the four entries in the partition table to find the one marked as ‘Active’ and then loads the sector which is at the start of the partition of that active partition and then runs that code. Some bootloaders such as grub4dos or syslinux or WEE will overwrite this MBR boot code. The RMPrepUSB ALT+CTRL+F2 function does the following – reads the current sector at LBA 0, replaces the boot code from bytes 0 to 01B7h with standard Windows boot code, writes the whole sector back to the selected disk. Note that the disk signature bytes and the 64 byte partition table is NOT changed using ALT+CTRL+F2.
Q56 – How do I use Disk Doctor GUI?
A56 – Invoke Disk Doctor using ALT+CTRL+F5 and then select a disk drive (the default one will be the one selected in RMPrepUSB. WARNING: ALL DRIVES will be available in Disk Doctor including internal disk drives (which may be locked by Windows).
To check a disk for errors – select a drive number, click on Sequential Read. The whole disk surface will be scanned (statistics will be displayed during operation). When the scan has completed any errors will be displayed in the main window. The SMART data (if available) will be displayed from before the scan and after the scan, any Windows Event Log errors that occurred during the scan will also be displayed. Any Slow Transfers will also be displayed (Slow Transfers indicate a slow response to a Read request, this could be due to initial spin-up delays or disk retries). Result variables are displayed in the form of SET WI_X_YYYY.
SET WI_D_TOTERR=0 Total errors during the operation
SET WI_D_READERR=0 Total Disk Read errors
SET WI_D_WRITEERR=0 Total Disk Write errors
SET WI_D_CMPERR=0 Total compare errors (only valid during random write test)
SET WI_D_MODEL=ST3250820AS Disk Model description
SET WI_D_SNO=5QE5BA65 Disk Serial number
SET WI_D_FIRMWARE=3.ADG Disk firmware
SET WI_D_SECTORS=488281250 Total number of sectors
SET WI_D_SIZE_DECMB=250000 Total capacity in decimal megabytes
SET WI_D_SIZE_GB=232 Total capacity in GB
SET WI_D_XFER_RATE_AV=79 Average data transfer speed (time from disk command to all data received/sent)
SET WI_D_XFER_RATE_L=69 Lowest transfer rate during entire operation in mS (milliseconds)
SET WI_D_XFER_RATE_H=82 Highest transfer rate during entire operation in mS (milliseconds)
SET WI_D_SLOW_XFERS=0 Number of transfers that were below the preset ‘slow transfer rate’ – this indicates disk retries (hidden errors)
SET WI_S_READ_ERR=0 Number of SMART read errors (difference between start of operation and end of operation)
SET WI_S_REALLOC_SECT=0 Increased in SMART reallocated sectors after op completed
SET WI_S_SEEK_ERR_RATE=200 SMART Seek error rate (may not be meaningful – depends on manufacturer!)
SET WI_S_CALIB_RETRY=0 SMART calibration retries increase
SET WI_S_POWER_CYCLE=0 Number of power cycles (how many times it has been switched off and on during the operation – always should be 0!)
SET WI_S_FINAL_POWER_ON_HOURS=12624 Number of Power On Hours
SET WI_S_FINAL_TEMP=41 Final drive temperature at end of operation
SET WI_S_REALLOC_EVENTS=0 Number of reallocated events (implies drive has remapped bad sectors during operation)
SET WI_S_UNCORRECTABLE=0 Number of uncorrectable errors (should see hard errors reported by Disk Doctor)
SET WI_S_UDMA_CRC=0 Number of Ultra DMA data transfers that had CRC errors during transmission – if > 0 then indicates a bad SATA/IDE cable or data integrity
SET WI_S_ERRORS=1 Total number of all SMART errors – note that may have false positives (in this case SEEK_ERR_RATE has been counted as an ERROR!)
SET WI_S_WARNINGS=0 Total number of SMART warnings – may not be errors
SET WI_S_INFO=0 Total number of SMART value changes that may be of interest but are not errors
To edit a disk sector- Select a disk number, set the No. Sectors to 1, set the Start to whatever sector you want to read (e.g. 0 for the MBR). Click on Sequential Read to read the sector into the Disk Doctor internal data buffer. Click on Display and Edit Buffer. Maximise the Disk Doctor form. Now edit the hex values in the main box, be careful to keep the same formatting. The ASCII characters at the end of each line will be ignored. Do NOT remove the EDIT SECTOR DATA text line. When you have finished editing the table, click on Write using Buffer (you can change the Start box if you want to write to a different sector) confirm the operation when requested and the new data should be written. If you get a ‘write error’ reported, it may be due to Windows locking the volume – to avoid this use the RMPrepUSB Eject button on the drive and try again. Note that editing the system volume or boot volume of a PC (NOT RECOMMENDED!) may not work as Windows may refuse access.
To find a string of byte pattern on a disk – select the required disk number, check that the Start is set to 0 and the No. Sectors is set to the disk length. Now click on Search Disk and enter the desired search string:
EXAMPLE SEARCH STRINGS
tlook for this – case sensitive text search for the string ‘look for this’
Tlook for this – case INsensitive text search for the string ‘look for this’
H003e31 – search the disk for byte 00h followed by byte 3eh followed by byte 31h
!HAA – search the disk until you find a sector with a byte that is NOT AAh – you can only set a single byte value using !H – useful to find the start sector of a partition or FAT table, etc.
Fill Buffer and Write with Pattern – This button fills the buffer with the pattern that you have set in the ‘Fill Pattern (hex)’ box and the starts to write to the entire disk starting at Start and for No. Sectors. If you set the start to 0 and the No. Sectors to the disk length, the entire disk will be erased. To check the pattern before you write, click on the Fill Buff button and then the Display and Edit Buffer button.
Non-Destructive Random Write – You will be asked for the number of passes and the number of sectors to write per block. This function reads a block of memory from disk and saves it in memory, then fills the buffer with randomly generated data and writes it to a randomly chosen (anywhere on the whole drive) and writes the block to the disk, then reads back the block and compares it with that just written and then writes back the original block contents. Due to modern disk controllers caching sectors, this test probably does not actually cause a block re-read of the disk but just gets the data from cache, but it does at least test data transmission and drive head alignment, etc. and gives the drive a good ‘thrashing’!
Random Read – You will be asked for the number of passes and the number of sectors to read per block.This function picks a random start position anywhere on the drive and reads the requested number of sectors. This is repeated for the specified number of passes. This can be used to check for head alignment and seek errors on a disk.
Q57 – I cannot see any USB drives listed by RMPrepUSB.
A57 – You probably do not have sufficient user (admin) rights. Log in as Administrator and try RMPrepUSB again. If you have a Windows Vista or later system, you can enable the Administrator account by running an Administrator Command prompt (right click on Command Prompt in the Start Menu and select ‘Run as Administrator’) and typing the command NET USER ADMINISTRATOR mypassword and then type NET USER ADMINISTRATOR /ACTIVE:YES. This will enable the administrator account and set the password to ‘mypassword’. Now log in as user Administrator.
Q58 – How do I format as exFAT and install grub4dos to make it bootable.
A58 – Select WinPE and exFAT as shown in Fig. 1 at the top of this page. Set the other options as required and click on 6 Prepare Drive. You will be asked if you want to install the grub4dos bootloader (or the standard BOOTMGR bootloader) to the PBR.
Just answer Yes to start the partitioning and exFAT formatting. After the format has completed, you will be asked if you want to copy over the grldr file (grub4dos 2nd stage bootloader file), answer Yes. The drive will now be grub4dos bootable. DO NOT USE THE INSTALL GRUB4DOS BUTTON in RMPrepUSB on an exFAT drive.
Q59 – exFAT formatting does not work (I am using Windows XP).
A59 – You need to install the exFAT update for Windows XP. If you are using Vista, you will need Service Pack 1.
Q60 – Large USB hard disks are not listed in RMPrepUSB, but flash drive are?
A60. Drives larger than 128GB are not listed by default in RMPrepUSB to prevent you from accidentally formatting your backup drive! Use the Settings menu to list large USB drives (CTRL-Z) or list all drives including internal hard disks (CTRL+F5).
— o O o —