Saturday 13 April 2013

Easy2Boot V1 - BETA14

now has new extension of .isowinvH  for Hirens boot ISOs.

Easy2Boot V1 BETA13 - keyboard mapping adding to support non-US keyboards

You can now add a grub4dos batch file to change the keyboard mapping to work with UK, German, French, AZERTY, QWERTZ or Japanese 106 keyboards. Simply copy one of the KBD_xxxxxx.g4b files in the grub folder to make a file called KBD.g4b and it will be used to change the key code mapping.
If you find any probkems with the mapping or have new mappings, please let me know (or better yet, send me your own working KBD_xxx.g4b file!).

Thursday 11 April 2013

Easy2Boot V1 BETA11 now available

The various Linux folders needed to be Linux (capital L) and not LINUX (all uppercase) to match the .mnu files. New .mnu files added to support persistence with some linux ISOs.
Click here for the new version.

It has a demo of how to add various DOS floppy images, linux isos, ERDCommander, KonBoot floppy image, plop iso, Norton Ghost iso, BartPE ISOs, StartOS ISO with persistence, Full Monty from ISO with persistence and BackTrack 5 from ISO with persistence - all on the same USB drive (plus, of course, any Windows install ISOs and linux ISOs that you have room for!).

Tuesday 9 April 2013

I have made some small changes to BETA10 so that you can use an iso or folder with spaces in the name. The download link is here. As there are only small changes it is still called BETA10 but is version 3.

Monday 8 April 2013

Easy2Boot BETA10 now available

I have changed the folder structure and function yet again!  You can now place almost any payload file (not just .ISO files!) in certain folders and they will be automatically listed in the menu and run according to their file extension.

\_ISO\MAINMENU - holds payload and mnu files that will be listed in the main (first) menu
\_ISO\AUTO - holds payload files that are listed by the AUTO menu
\_ISO\MNU - holds those payload that need mnu files and that are difficult to boot directly
\_ISO\WINDOWS - holds Windows installation ISOs

This menu shows the file ERDCommander.isowinv  - the .iso extension has been changed to .isowinv so that WinVBlock will be loaded as a floppy disk image at the same time as the ISO is loaded as a CD. This allows ERDCommander to boot successfully.

A list of extensions that are recognised by Easy2Boot can be found on the Tutorial page.

Take a look at the file \grub\QRUN.g4b to see what actions will be used for each type of file extension.

Let me know if any are missing...

For item 7, I added a MEMTEST.txt file containing the text:
so that this line is used as the title line instead of just the name of the payload file (MEMTEST.img).

Friday 5 April 2013

Easy2Boot BETA09 now available

This new version adds a new Quick Test menu item. It can be removed by simply deleting the \mainmenu\qtest.mnu file if you don't want it.
The MainMenu folder allows you to drop only ISO files in, but the QTEST folder allows you to drop any type of file in it (including ISO files) and test it.
If you have a file (bin,ima,zip,img,gz etc) that you want to quickly test, just copy it into the \QTEST folder.
It will be listed by the Quick Test menu option and then executed according to it's file extension.
This allows you to quickly test all types of executable self-boot files without needing to add a grub4dos menu. For more details, see here.

If you wish, you can modify what file extensions are recognised and what grub4dos commands are used on each type by editing the \grub\qtest.g4b file.  For example:

kernel (bd)/QTEST/%1 

is the code that will execute on any .bin file. If you want to add another extension type (e.g. .binss), simply add another entry - e.g.

echo This is my special version && pause
kernel (bd)/QTEST/%1 

Saturday 30 March 2013

RMPrepUSB 2.1.664 available

This new version has extra options to install a Bootmgr or Ntldr bootloader to a FAT32 or NTFS partition. You can also install an MS-DOS bootloader to a FAT16 partition (but not FAT32). It uses RMBootSect.exe which is also a vb6 program.

Wednesday 27 March 2013

Easy2Boot v1 BETA08 available

BETA08 now available. A few changes:
  • new grldr and wenv
  • does not re-count all Windows iso files every time you go back to the main menu thus making the loading of the main menu slightly faster when going back to it 
  • You can now use a USB hard disk to install windows direct from windows isos - IF you also connect a USB flash drive with two files on it. 
  • Black console background used instead of brown 
  • Help doc changed to html and reduced (main doc now on RMPrepUSB site Easy2Boot V1 page.) 
  • When asking for name of Windows ISO, you must now type in the full filename (i.e. with the .iso extension) 

Has anyone tested any Windows 8/2012 install ISOs yet?

Sunday 24 March 2013

RMPrepUSB v2.1.663 available

Captain-Midnight noticed that some of the text in RMPrepUSB was too large when viewed on his 1920x1080 display (see screenshot below). The new version 663 fixes this by using a TrueType Sans Serif font instead of the fixed font.


I have also added another English.ini language file. I noticed that Hirens DLC1 MiniWin7 did not display some of the text in the RMPrepUSB form at all (it just showed underscores ______). Changing the Character Set from 238 (European) to 204 (Cyrillic) fixed this, so I have added an English204.ini file. Some other European language.ini files also have this problem, so you might like to change the ini file for your language to charset=204 if you see this issue.

RMPrepUSB improves flash write speed on FAT32 volumes

As I have changed the FAT32 code slightly to cater for large (up to 2TB) drives, I wanted to check that the flash write speed improvements still work.
I used XCOPY to copy small files from an XP i386 folder to the flash drive.
I formatted it using either Windows or RMPrepUSB 2.1.662.

Results were:
File copy to Windows 7 FAT32 formatted volume:   784 seconds
File copy to RMPrepUSB FAT32 formatted volume: 695 seconds

for comparison: NTFS: 132 seconds!

This shows a 12% improvement in write speed to a USB Lexar flash drive formatted as FAT32 by RMPrepUSB, compared to the same drive formatted using Windows (results repeated twice and averaged)

I used this command to time the file copy to the flash drive.
timecmd xcopy "c:\sources\XP SP2\i386\a*.*" f:\ /herky

where timecmd.bat contained this code:

@echo off

set start=%time%

:: runs your command
cmd /c %*

set end=%time%
set options="tokens=1-4 delims=:."
for /f %options% %%a in ("%start%") do set start_h=%%a&set /a start_m=100%%b %% 100&set /a start_s=100%%c %% 100&set /a start_ms=100%%d %% 100
for /f %options% %%a in ("%end%") do set end_h=%%a&set /a end_m=100%%b %% 100&set /a end_s=100%%c %% 100&set /a end_ms=100%%d %% 100

set /a hours=%end_h%-%start_h%
set /a mins=%end_m%-%start_m%
set /a secs=%end_s%-%start_s%
set /a ms=%end_ms%-%start_ms%
if %hours% lss 0 set /a hours = 24%hours%
if %mins% lss 0 set /a hours = %hours% - 1 & set /a mins = 60%mins%
if %secs% lss 0 set /a mins = %mins% - 1 & set /a secs = 60%secs%
if %ms% lss 0 set /a secs = %secs% - 1 & set /a ms = 100%ms%
if 1%ms% lss 100 set ms=0%ms%

:: mission accomplished
set /a totalsecs = %hours%*3600 + %mins%*60 + %secs% 
echo command took %hours%:%mins%:%secs%.%ms% (%totalsecs%.%ms%s total)

Thursday 21 March 2013

RMPrepUSB v2.1.662 FAT32 up to 2TB!

Version 2.1.662 can format up to 2TB  (not recommended!) as FAT32.
RMPrepUSB was designed for USB flash drives (removable drives) and may have trouble unlocking a hard disk in use by Windows and so may fail the first or second time you try to format a USB hard disk. Just re-try the operation. If that fails, then use the Clean button and then click 6 Prepare Drive.
Also, if you have a USB hard disk with multiple partitions, RMPrepUSB will only list the first drive volume letter in the list box, but of course, will wipe and format the whole drive if you use the 6 Prepare Drive button.
Two new edit functions have been added to the Edit tab, Edit /grub/menu.lst  (CTRL+F4) and Edit /boot/grub/menu.lst (SHIFT+F4).

Wednesday 20 March 2013

RMPrepUSB - FAT32 bug found!

I found a funny issue with what I thought was caused by grub4dos today, but it turned out to be an issue with the way RMPrepUSB formats a FAT32 volume!

I noticed that if I copied more than 126 or so files to the root of a USB stick prepared using RMPrepUSB as FAT32, then I could not access any file that I added to the USB stick under  grub4dos (even though they were accessible from Windows). At first I thought this was a grub4dos bug, but when I formatted the same USB stick using Windows, it all worked fine.
I also found a fat32formatter.exe utility which also worked fine. The problem was clearly in RMPartUSB (which actually does the formatting). After a few hours, I eventually tracked down the problem.
You can read about the saga here if you want more details.
The bug is fixed in RMPrepUSB 2.1.661. So if you copy lots of files to the root of your grub4dos USB drives that were prepared using RMPrepUSB, you might want to reformat them with the new versions!
The bug has been there since day 1!

Sunday 17 March 2013

Easy2Boot BETA07 available

Few changes to Win 7 install menu. You only need update if use Win7 ISOs.
See Tutorial 72a for download and instructions.
A .mnu file has been added for Fedora with persistence (in docs\samples folder) (you need to extract files from the ISO to get persistence working, otherwise just drop the Fedora ISO file into the \mainmenu folder as usual).

Saturday 16 March 2013

Easy2Boot BETA06 now available

BETA06 available.

Changes are:
1. /menu.lst file now re-instated - it calls /grub/menu.lst. If there is no /menu.lst file then grub4dos displays a black&white default menu for a short while which looked naff!
2. /grub/menu.lst now has all user settings at the top. Copy this file to /grub/mymenu.lst and then edit the settings. More settings are configurable now.
3. To add your own wallpaper, just add a /grub/MyBackground.bmp file - make sure it is exactly 640x480 or 800x600 and 24 bit colour. If any problems, edit your mymenu.lst to set the correct graphics mode.
4. bugfix in addisostomainmenu.g4b - it blew down below the /mainmenu folder and added extra isos to the menu!
5. patchme - this is a grub4dos batch file which will patch grub4dos on your USB stick to remove those pesky signon/debug messages. Instructions are in readme in the download.
6. doc here revised.

Friday 15 March 2013

Easy2Boot Beta05 available

This new version Beta05 is more configurable for the user.
The menu now can be re-sized and re-positioned (same size is used for all menus).
Please read the html documentation in the \docs folder for details.
I have included all the .mnu files which might be needed in the \docs\samples folder - this saves having to download them.
The user can make his own menu changes by making his own \grub\mymenu.lst file (which is copied from the menu.lst file and then edited slightly). The user can then change mymenu.lst to change the colours, menu position and size, menu heading, bottom cyan text or re-order the menu items to list ISO files last rather than first.
This means that when you update Easy2Boot in the future (with Beta06 tomorrow!), you won't lose your changes - as your mymenu.lst file will not be overwritten and will be used instead of the default menu.lst file.
Some small text tidying has also been done.

Note: small bug in BETA05 (it lists iso files in subdirs under \mainmenu) -

To fix it
edit  /grub/addisostomainmenu.g4b and add :: as follows to four lines

if "%DD%"=="1" echo @SUB_DIR %1
::set DIR=%DIR%/%1
::call :cpa
goto :copyfiles

will be fixed in BETA06 soon...!

Thursday 14 March 2013

Easy2Boot V1 BETA04 available

This version does not list the Windows Install and AUTOISO menu entries in the main menu unless you actually put some ISO files in those folders. It also counts the ISO files in each Windows folder (see screenshot) and does not list ones that are empty.
There is a brief html manual in download.

click here for direct download

Wednesday 13 March 2013

Easy2Boot v1 BETA03 available

Some tidying up, html doc added, menu.lst moved to \grub folder, ISO files are listed first in Main Menu now (you can change the order or specify your own order - read the html in the download for help).

Tuesday 12 March 2013

Easy2Boot BETA02

I have modified the Easy2Boot Beta, now BETA02 is available.

The first menu is now dynamic and built up from the contents of the \MAINMENU folder. You can place .mnu files and .ISO files in the \MAINMENU folder and they will be listed in the first menu.

Please note: This version is intended to be used on a flash drive and on a real system. Linux ISOs and Windows Vista/7/8 installs won't work correctly under an emulator or if run from a hard disk.

The first (main) menu is currently:

Boot from ISO (AutoISO)   - any ISO file in the \AutoISO folder is listed by the next menu - comes from \mainmenu\Auto_menu.mnu file
Easy2Boot                           - launches the Easy2Boot menu - .mnu files under \_ISO will compiled into an Easy2Boot menu - comes from \mainmenu\easy2boot.mnu
Boot to first internal HDD    - this comes from the \mainmenu\firsthdd.mnu file which can be deleted if not wanted
Install Windows                   - comes from \mainmenu\installwindows.mnu
 xxxxxxx.iso                        - any iso file in the \mainmenu folder is automatically listed in the main menu
yyyyyyyy.iso                        - any iso file in the \mainmenu folder is automatically listed in the main menu

I have debugged some more of the install windows menus too.

To use Easy2Boot  v1 Beta02, you just need to:
1. add Windows install ISO files to the correct folders under \_ISO\Windows and name them correctly (the filenames are indicated in each folder). For Win8/svr2012, the product key can be entered or you can edit the menu to add your own product key or you can use a default dummy key which will not activate.
2. add your favourite bootable ISOs to the \mainmenu folder,
3. add any other ISOs to the \AutoISO folder
4. add any other payloads+.mnu files, downloaded from the Easy2Boot tutorial, to the relevant folders under \_ISO (the entries will be listed by the Easy2Boot 2ndary menu). These will be the odd ones that don't work just by copying them to the \AutoISO or \MainMenu folder.
If you want them listed in the main menu instead, simply copy the .mnu file to the \mainmenu folder (or make your own .mnu file) and copy the payload file to the \mainmenu folder instead of the \_ISO folder - e.g.
if you have fred.mnu and fred.iso which are supposed to go in \_ISO\Utility folder, you can move both to the \mainmenu\utility folder.

The order of the menu items in the main menu is determined by the order that the \mainmenu\xx.mnu files were written to the USB drive. This cannot be changed unless you re-write the same .mnu files again. If you want the order to be pre-determined, you could combine all the \mainmenu\xxx.mnu files into one single large .mnu file - or  - edit the \grub\main.mnu file so it contains all the menu entries you want.

Monday 11 March 2013

New Easy2Boot BETA

Once made (install onto fresh USB FLASH drive (Vista+ OS installs will not work if on an HDD) and then install grub4dos using latest RMPrepUSB), the following Optional files can be added:
Add XP Pro and Home SP2 and SP3 install ISOs to \_ISO\Windows\XP folder to install XP
Add Vista 32 and 64 ISOs to \_ISO\Windows\Vista folder to install Vista
Add Win7 32&64 generic&Enterprise ISOs to \_ISO\Windows\Win7 folder
Add SVR2K8R2 ISOs to \_ISO\Windows\SVR2K8R2 folder
Add Win8 32&64 generic&Enterprise ISOs to \_ISO\Windows\Win8 folder - for generic ISO, you will be asked if you want Consumer or Pro and a dummy Product key will be provided or you can enter your own key.
Add SVR2012 ISOs to \_ISO\Windows\SVR2012 folder - not yet tested as I don't have a full copy!

In addition, if you have clonezilla, acronis rescue, Kasperksy, UBCD etc. ISO files - just copy these and any other LiveCD ISOs you fancy into the \_ISO\AUTOISO folder.

You can still add .mnu files in the same way as before.
Make sure to run WinContig to make the ISOs contiguous (use RMPrepUSB - Ctrl+F2).

Feedback welcome - I have not yet tested the following ISOs:
Win7 64
Win7 ent
Win8 64
Win8 ent

I have tested
Vista 32 SP1
Win7 32 SP1
Win 8 32 (Consumer+Pro)
clonezilla, acronis rescue, Kasperksy, UBCD ISOs (just copy into AUTOISO folder)
memtest86+, freedos fdd image

Follow it's development on the forum here.

Saturday 9 March 2013

YouTube RMPrepUSB and grub4dos videos now available

Despite suffering from a cold, I managed to get the following videos up onto YouTube:

Part 1            - Basic USB formatting with RMPrepUSB
Part 2a and b - Advanced features of RMPrepUSB
Part 3a and b - Making a multiboot grub4dos drive using RMPrepUSB

Each one is about 15 minutes long (max allowed!).

Part 1

Part 2a

Part 2b

Part 3a grub4dos

Part 3b grub4dos  cont.

Macrium Reflect Free Edition provides easy way to generate WinPE

Tutorial 107 describes how to create a WinPE bootable ISO without needing to type anything on the command line or do anything more complicated than click a few buttons.
It uses Macrium Reflect Free Edition to build a nice Windows PE (v3 SP1) bootable ISO which you can then add to your multiboot grub4dos USB drive.
It will also make backups or restore your hard disk and fix boot problems too!

Thursday 7 March 2013

RMPrepUSB v2.1.659 now available

This version has a few tweaks and the latest version of grub4dos (grldr).
One new feature - make a grub4dos bootable ISO from a grub4dos bootable drive. This allows you to build and test your grub4dos multiboot system using a USB flash drive (for instance) and then when you are happy with it, you can convert it to an ISO file, test it using RMPrepUSB Boot from ISO, and if all is OK, burn the ISO to a CD or DVD (using external burn s\w).
Also, 'How to use RMPrepUSB' videos are now on YouTube. - part 1, 2a and 2b.
Part 3 will be about grub4dos (when I get the time!).
If there is anything you would like me to cover in it, let me know!

Wednesday 27 February 2013

Sample grub4dos menus

I have made available a few sample grub4dos menus here. This allows you to test out different resolution bitmaps on diffferent systems.
Some include example uses of the menusetting utility which changes the size and position of the menu on the screen. One also loads the UniFont font file for you to view it's affect.
Note that some of the files are in UTF-8 format as they contain unicode characters (e.g. Chinese).

Saturday 16 February 2013

Boot pclinuxos from an iso with persistence

pclinuxos can be booted from an ISO file, however it will not boot if the ISO file is on an NTFS USB drive (it cannot find the cdlive.sqfs file). In addition, persistence will not work unless an ext2/3 partition is available.
However, by using the grub4dos partnew command and mapping the iso to one partition on the USB drive, and an ext2 file to another partition on the USB drive, we can boot pclinuxos from an ISO with persistence.
To see how to do this have a look at Tutorial 104.

Saturday 9 February 2013

A Puppy is not just for Xmas!

I have added a .mnu file for the Easy2Boot project for Puppy Linux Precise 5.4.3 with persistence.
Just add the ISO (named precise-5.4.3.iso) to your Easy2Boot's \_ISO\Linux folder and then add the .mnu file.
When you first boot Puppy and then Exit, it will prompt you to save settings to a file at the root of the USB drive. It will also prompt you to copy the .sfs file from 'CD' to the USB drive - you should answer No to this as there is no speed advantage. When you next boot Puppy, your new settings will also be loaded.

Easy2Boot Tutorial #72.See here for a forum discussion. 

v2.1.657 - File Info function updated to display boot sector info

If you use Drive Info in RMPrepUSB to read sectors from a disk, if it is recognised as an MBR or PBR, the internal values will be parsed and displayed for you in Notepad. However, the File Info function in RMPartUSB only displayed MBR values if it detected a valid MBR but did not display PBR values. v2.1.657 fixes this. Now you can use File Info to display the hex data in a bootsect.dat PBR file, for instance, and it will parse the BPB for you - e.g.


000B Bytes Per Sector = 512 (0200h)
000D Sectors Per Cluster = 8 (08h)
000E Reserved Sectors before first FAT = 32 (0020h)
0010 Number of FATs = 2 (02h)
0011 Root Entries = 0 (0000h)
0013 Total Log Sectors (small) = 0 (0000h)
0015 Media Descriptor = 248 (F8h) HDD
0016 Sectors per FAT table = 0 (0000h)
0018 Sectors per Track = 63 (003Fh)
001A Number of Heads per Cylinder = 255 (00FFh)
001C Hidden Sectors preceding Partition = 63 (0000003Fh)
0020 Total Log. Sectors (big) = 16203713 (00F73FC1h)
0024 Log. Sectors per FAT = 15794 (00003DB2h)
0028 Mirroring Flags = 0 (0000h)
002A Version No. = 0 (0000h)
002C Cluster No. of Root Dir Start = 2 (00000002h)
0030 Log. Sector No. of FS Info Sector = 1 (0001h)
0032 First logical sector number of a copy of the three FAT32 boot sectors, typically 6 = 6 (0006h)
0040 Physical Drive Number = 128 (80h) First Fixed Disk
0042 Extended Boot Signature = 41 (29h)
0047 Volume Label = NO NAME    
0052 FileSystem Type = FAT32   

First FAT begins at LBA 95
Second FAT begins at LBA 15889
Root Directory begins at LBA 31683
First file data (cluster 0) begins at LBA 31691

Thursday 7 February 2013

WinToFlash or WinToSlug?

A recent post on complained that a USB flash drive that was prepared for XP installs using WinToFlash, worked well on one system, but would not boot on another and gave an 'NTLDR is missing' error.
I decided to try WinToFlash with an XP install ISO for myself. The first thing I found was that when using the default settings, when I used a USB flash drive created by WinToFlash, the first text mode XP install copy files phase took over 70 minutes!
It turns out this is due to FAT32 being used by WinToFlash for the USB drive format. If this is changed to FAT16LBA, then the 2GB volume created on my 8GB USB drive, when booted will install the same XP files in just 7 minutes.
I also found that if I reformatted the same USB drive as 8GB NTFS and used grub4dos to launch setup, the same install phase takes just over 4 minutes.
To learn how to make the NTFS WinToFlash drive, read Tutorial 102.
By using NTFS, it also removes the 'NTDLR not found' issue - although I have also given details of how this can be avoided even if you 'stick' (pardon the pun!) to FAT.

Saturday 2 February 2013

Xiaopan - boot from ISO on USB

A new tutorial has been added on how to add Xiaopan to a grub4dos multiboot USB drive here.

It dynamically finds and uses the UUID of the volume and can also use a 'persistent' data store.

The tutorial was written after a few hours of experimentation in response to a plea from forum member Hexley Darwin.

Saturday 26 January 2013

Using the SHIFT key to modify the behaviour of a grub4dos menu entry

If you have linux in your grub4dos menu.lst, you often need two entries, one for normal mode and one for safe mode so that you can boot on 'difficult' hardware.

This solution allows you to just have one menu entry but you can hold down SHIFT when you hit Enter to use safe mode parameters.

For this you need the bios utility on your drive (in this case in the root of the boot drive).You could also test for Ctrl or Alt and some other keys.

Note some lines are long and run over - use cut and paste!

title Run Linux\nPress SHIFT+ENTER for safe mode 
/bios int=0x16 eax=0x00000200 > (md)0x300+1
cat --skip=12 --length=2 (md)0x300+1 | set /a n=0x > nul 
set /a n=%n% & 0x03 > nul && if %n%>=1 echo SHIFT PRESSED! 
#set /a n=%n% & 0x04 > nul && if %n%>=1 echo CTRL PRESSED! 
set sf=
if %n%>=1 set sf=acpi=off irqpoll noapic noapm nodma nomce nolapic nosmp 
kernel /casper/vmlinuz file=/cdrom/preseed/ubuntu.seed boot=casper %sf% splash 
initrd /casper/initrd.img

Bios Int 16 ah=2 reference here

NOTE: was...
/bios int=0x16 eax=0x00000200 > (md)0x300+1 && cat --skip=12 --length=2 (md)0x300+1 | set /a n=0x > nul

the 2nd half of the line is only executed if the BIOS returns non-zero. So && should not be used in this case.

Wednesday 23 January 2013

WinContig version updated in RMPrepUSB

RMPrepUSB now uses a later version of WinContig to make all files on a USB drive contiguous. I have had it crash on several occasions when running on my USB FAT32 flash drives. The new version seems much more stable. 

Monday 21 January 2013

Fix 'Error 60 - File not contiguous'!

You have probably come across this error message from grub4dos. It occurs when the file that it is trying to use is not contiguous.

To fix this you can run RMPrepUSB and select the USB drive and press Ctrl+F2 to run WinContig and defragment all files on the drive.

Making all file contiguous on a drive is not the same as defragmenting the drive. Defragmenting a drive shifts all the files to the beginning of the drive but often does not make all the files contiguous. WinContig does not shift the files if they are already contiguous and so WinContig is quicker and more effective than defragging the whole drive using a defrag utility.

Note: WinContig, Defraggler and other similar utilities usually need a contiguous run of free clusters on a drive so that they can copy the file into that contiguous space. Even after you run WinContig/Defraggler, you may not be able to copy over another large file and make it contiguous (even though there is enough free space on the drive) - see this post for details. Defraggler has an option to 'Defrag Free Space' which will fix this problem.

        This Defraggler map shows that the free clusters are not in one contiguous block. See here for more details.

To make a file contiguous,WinContig has to create a new file that is contiguous before it can delete the old non-contiguous file. Thus we need some contiguous free space on the drive that is the same size or larger than the size of the file we are trying to defragment. So for a 3GB file, we will need at least 3GB of contiguous free space on the same drive.

A file in a volume exists as a number of clusters (chunks of data). For example, a typical cluster size on an NTFS volume is 4K or 8 sectors. So a 10K file would occupy 3 clusters:

Cluster 1 = first 4K
Cluster 2 = 2nd 4K
Cluster 3 = 3rd 4K cluster (only first 2K of which has valid data)

These clusters can be anywhere within the volume. So they could be at cluster no 6,7 and 8 or they could be at cluster no. 3234, 44564 and 332!

A utility such as WinContig will rearrange the clusters within a file (if it can). So in the previous example, we might end up with the file consisting of cluster no.s  3234, 3235 and 3236 and so the file is contiguous and has sequential cluster numbers.

Recently, a user on had a problem. He had a 6GB VHD file on an 8GB NTFS-formatted USB drive. He ran WinContig but it would not make the file contiguous. Even copying the file to a freshly formatted 8GB NTFS drive did not work, the file was always non-contiguous.

It turns out that the reason for this is that when you format an NTFS volume, the Master File Table (MFT) is placed at the 3GB position within the volume (if the volume is over about 5GB). So on a freshly formatted 8GB volume, we have

(3GB of free space)
$MFT  (NTFS 'directory')
(4.7GB approx. of free space)

So we can see that there is no way we can store a 6GB sequential file with the MFT placed at the default 3GB position.

As the file is greater than 4GB, we cannot use a FAT32 filesystem (as FAT32 does not support files greater than 4GB).

You can see this if you use a utility such as Auslogics defrag tool which shows a map of the used clusters and what files occupy which areas of the disk.

Piriform's Defraggler is another good tool for displaying fragmented files and analyzing the file layout on a drive. It can also defragment individual files too (right-click in Explorer) and also offers to delete files in the Recycling Bin before defragging.

Alternatively, you can boot to grub4dos from the USB drive, go to the grub4dos shell (press c in the grub4dos menu) and then use the blocklist command to see how many fragments you have and where they are located - e.g.

So how can we make an 8GB USB flash drive containing a 6GB contiguous file?

Well, Wonko the Sane (from came up with the idea of making a small NTFS volume and then re-sizing it (expand it), thus leaving the MFT in the same place (as it is not normally moved when resizing).

Here is how to make a bootable 8GB USB drive containing a 6GB contiguous file using the partitioning tool EaseUS Home Partition Master (EHPM):

1. Erase all ptns on the 8GB flash drive
2. Make a small 20MB NTFS PRIMARY ptn using EHPM - or RMPrepUSB if you want a special bootloader
3. Re-Size the ptn using EHPM to ALMOST the full drive capacity - e.g. 7.8GB
4. Now add a small 2nd FAT PRIMARY partition (this is to improve boot compatibility with some BIOSes - the ptn is not actually used)
5. Copy over your large 6GB file and check it is contiguous using WinContig.

If you have Vista or Win7/8, then you can use Disk Manager instead of EaseUS Home Partition Master.

The whole discussion can be found on here.

Having trouble still? See also my other blog article here.

Recommended: SanDisk Extreme Pro USB 3.1 (#ad)

Monday 14 January 2013

Identify Unknown Devices in Device Manager

Came across a useful utility (UnknownDevices.exe  Dec 2012 version) by HalfDone which is intended to be run on a freshly-installed Windows system.

It looks at Device Manager (registry) entries and attempts to identify all the unknown devices which don't have drivers by using a database. It works on XP or later.
It also shows the Windows Product Key and lists a history of disk devices ever connected (inc. USB devices).
This is a useful addition for your toolbox!

As it relies on a database which needs to be updated as new hardware is released, you will need to get the latest version from the forum here.

Thursday 10 January 2013

fun with grub4dos batch files!

I have written a few new batch files which can be called by grub4dos - see here.

FindFullFileName.g4b - finds the first file matching a full filename
FindFileName.g4b - finds the first file matching a filename (without extension)
FindFileExt.g4b - finds the first file matching a file extension
title FindFileExt on mapped HDD Image
map  (bd)/harddisk.img (hd2)
map --hook
root (hd2,0)
# look for a file with a .com extension - param1=start folder   param2=extension
(bd)/grub/FindFileExt.g4b / .com
if not "%FILEPATH%"=="" echo FILE FOUND AT %FILEPATH%! 
if "%FILEPATH%"==""  echo No file with matching extension found!
(more commands here)
Please download to obtain these batch files.

Sunday 30 December 2012

Version 2.1.654 released as full version

The 'full release' version was getting a bit long in the tooth, so I have updated it with the latest version.
Changes can be read at
If you click on the Help (F1) button and click on the update box, the new version will be downloaded. You must then click on the downloaded file to install it manually.

Saturday 29 December 2012

Easy2Boot tutorial updated

I have included the AutoLinux code from Tutorial #96 into the Easy2Boot Tutorial #72.
I have also tested over 30 ISOs using the 'partnew' technique used in these tutorials and with 98% success; only the Trinity Rescue Disk ISO failed to work correctly.
Even DOS based ISOs just worked fine.
This allows you to just copy any ISO onto your Easy2Boot USB drive and try it. The menu is automatically made as the USB drive boots.

Tuesday 18 December 2012

Automatic grub4dos Linux ISO boot menu entry

Tutorial 96 shows how to add a grub4dos menu entry that will automatically create a new dynamically-created grub4dos menu in a ramdrive and list all your linux ISO files. You can then choose one of them and boot from it.

Thus means that you should be able to quickly try any linux ISO that you fancy without needing to make a special menu entry for each one. Just download the ISO file and copy it to the folder on your grub4dos bootable drive. Then boot from the drive and chose the Linux ISO menu entry - all the ISO files in a folder will be listed (as shown below) and you should be able to boot from any one of the ISOs.

Even a BackTrack 5 iso will just work!

Thursday 13 December 2012

Tails you win! A new method for booting linux from an ISO file!

I recently came across a post on by cdob on how to map an ISO file to a partition using grub4dos. This technique has the advantage that it should work for most linux ISOs, even the ones that don't support booting from an ISO file!
It also can get around the problem of booting a version of linux from an NTFS boot drive, even if that linux does not understand or support the NTFS filesystem.
This means that even if your USB grub4dos boot drive is formatted as NTFS, you can boot nearly any linux ISO from it!


I tried this out using a Tails linux ISO file (which at the time I could not find a way to boot from an ISO file) and it worked a treat.

You can even boot from Ophcrack ISO file AND access the rainbow tables (no need to extract the rainbow tables onto the USB boot drive!).

If you have a linux ISO that you cannot get booting as an ISO file from a grub4dos boot pen/hdd, try this technique!

See for details.

See also here for booting Tails 3.16 from a USB HDD.

Wednesday 5 December 2012

grub4dos and the blocklist command

It has always been there, but I have just found that the grub4dos blocklist command can be used to display the groups of contiguous sectors that make up a file. So you can use this command to check if an ISO file (for instance) is contiguous (and can therefore be directly mapped under grub4dos using map /xxx.iso (0xff)) or if it is not contiguous.
The file is 512 bytes long and thus occupies one sector on the disk. The file knoppix511.iso however is split into two contiguous sector 'runs', one starting at block 24856 (1425152 sectors long) and the other at 1450616 (976 sectors long).
WinContig is included in RMPrepUSB and can be used to make all files on the drive contiguous if you run into this problem.

Monday 12 November 2012

Windows 7 To Go tutorial download updated

I was recently contacted by James Leyden who was running the Installer.cmd script on his Dell M15X Alienware laptop from 2008 to prepare a 1TB USB HDD drive.
The resulting USB drive would not boot:

BOOTMGR is missing
Press Ctrl+Alt+Del to restart

 and indeed did not even have \bootmgr in the root of the drive. Upon investigation, we found that the bcdboot command was not working in the Installer.cmd script and further investigation revealed that James' Dell was in EFI mode (this was confirmed by running the command line utility testefi.exe).
The bcdboot command used in the script was modified to use the /f BIOS parameter but still the bcdboot command did not work. Finally, James downloaded the Windows 8 WAIK files and replaced the Win 7 WAIK version of BCDBOOT.EXE with the Win8 version. At last his Windows 7 To Go now boots!
I have now modified the download in tutorial #43 so that it uses the /f BIOS parameter and also now checks that both the bcdboot and bootsect commands actually complete successfully!
For your reference, the error that the Win7 version of bcdboot reports, if you attempt to use it to prepare a Win 7 USB drive on a system running 64-bit EFI Win 7, is:
BSFVC: Failed to create a new system store. Status = [c000003a]

See Tutorial 47 for the revised download files.

92 - BITS Intel BIOS Implementation Test Suite added

This is a BIOS test suite from Intel. It can be added as an ISO to a multiboot grub4dos USB drive and is useful to test BIOSes for compatibility. It is most useful for testing BIOSes on new or pre-production systems but can be use on any Intel CPU-based system. 

Sunday 4 November 2012

Boot Splash Screen

A user wanted to use the Clonezilla auto-restore tutorial, but did not want the user to see any menu text at all. They just wanted a splash screen and then a 10 seconds delay to allow them to hit F4 if they wanted a restore, otherwise they just wanted the system to boot to Windows as normal. This is similar to the way the Windows 7 F8 key works.
I found you could hide the menu completely and use hotkeys by adding two grubutils utilities, menusetting and hotkey - see here for more details.

Saturday 3 November 2012

Windows 8 install from ISO #43 updated

The technique in Tutorial 43 required the unattend.xml file to be pre-populated with the Windows 8 Product Key. This is OK for volume licence versions where the same key is used each time, however, for Retail versions, a different key is required each time for each different system. I have therefore added a user prompt to the grub4dos menu which asks the user for the Product Key before the installation begins.
Note that the set /p prompt string cannot be over 80 characters and should be less than 70 characters to avoid an error!

If you are prepared to make a small modification to the iso and edit the ei.cfg file in the \sources folder within the iso file, then you can avoid the need for the unattend.xml file needing to contain the product key.

Thursday 25 October 2012

New QEMU options added to RMPrepUSB

v2.1.651 now has two new options under the File menu tab.

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)
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)

For instance, if you hit Ctrl+F11, you can select an XP install ISO, choose to create a new virtual hard disk image of any size and then choose how much memory to allocate to QEMU. The ISO will then boot and you can install Phase 1 (textmode) XP to the virtual hard disk. When the XP setup phase 1 reboots, it will reboot to the ISO file again but this time do NOT press a key to boot from the 'CD'. The QEMU BIOS will then boot from the hard disk and the ISO will be attached as the CD and the 2nd Phase (GUI Mode) of the XP install will continue to completion successfully. Note: Because QEMU is verrrry slow, this can take 4-6 hours!

You now have a virtual hard disk which is installed with XP. You can now run this at any time using Shift+F11. Again verrry slow to boot!

This allows you to quickly test boot an ISO to see what it looks like, without needing to set up QEMU Manager or use a different virtual machine.

Tuesday 23 October 2012

CloneZilla Windows Backup/Restore partition Tutorial added (Tut89)

Whilst discussing how to make a grub4dos menu.lst file show only one 'boot to Windows' option, a solution was posted by ndog37 on here for how to add CloneZilla to an existing Windows system. With this solution added, you can quickly backup your copy of Windows at any time and then later restore any of the previous Windows backup images. An XP backup takes approximately 5 minutes. Restoring an XP image takes approximately 1 to 5 minutes. The backup is made on the hard disk, so it is not suitable for off-line backups.

See YouTube vidoes here and here.

See also here for UEFI or here for MBR Tutorials.

You just need to add the files to your backup partition and then install grub4dos (I provide a script file in the download to do this with just one click) and then hide the files to protect them from accidental deletion (again using a script provided in just one click).
This makes it very quick to install onto any simple Windows PC or notebook (e.g. your grannies PC) so that they can quickly restore a working image if their Windows installation gets infected or becomes SNAFU'd.

Monday 22 October 2012

Avira Rescue, ImDisk and RockRidge!

Recently, I was asked to look at making Avira Rescue ISO boot from a bootable grub4dos USB drive (see Tutorial here). It turns out that most of the Avira Rescue iso's content actually needs to be in 'flat file' form (i.e. exist as files and folders on the USB drive) and so I needed to extract the contents of the iso file to the USB drive.

Now my favourite tool for this is ImDisk to mount the iso as a virtual drive volume and then copy over the files and folders that I think (guess!) that Avira might need. However, when I did this I found a problem - the resulting Avira linux boot pen did not fully boot to the Avira GUI desktop and stopped at ' Press Alt+F7 to return to the graphical User Interface '.

After much head-scratching, I found that the problem was caused by the case of the files. All of the files appeared in the ImDisk virtual drive as upper-case file names and folder names, yet when the Avira iso file contents were displayed by the 7Zip GUI, most of the files were lower-case. If I extracted all the files from the Avira ISO using 7Zip and copied them to the USB stick, it booted fine, up to the full GUI.

I realised that this must be due the ISO standard that the Avira ISO file was made with and an interesting discussion evolved on my favourite boot forum (see here).

It turns out that we just can't trust the Windows CD filesystem as it does not support the RockRidge enhancements used by *nix OS's. This means that utilities like ImDisk and SlySoft Virtual CloneDrive may shows filenames as all uppercase if a non-Joliet (i.e. RockRidge only) ISO is mounted under Windows.

Windows 8 supports the mounting of ISO files natively, no utility is needed - but it still does not support RockRidge! (come on MS - this is 2012!).

The moral of this story is, if you are extracting files from a linux ISO file, don't use a virtual drive to mount the ISO because the filenames 'case' cannot be trusted - instead use an extraction utility like 7Zip which will detect that the ISO is a RockRidge ISO and use the correct case for the files and folders.

Wednesday 10 October 2012

v2.1.650 new feature for multi-partition flash drives

If you have a flash drive with more than one primary partition on it, then Windows Explorer will only allow access to the first partition defined in the partition table. The new option allows you to re-order the table so that any one of the four primary partitions will be instantly accessible under Windows.
To create a multi-partition USB flash drive, I recommend the free Easeus Partition Master Home Edition.
RMPrepUSB version2.1.650 now has a new option in the Drive menu tab which allows you to make any one of 4 primary partitions on a USB or removable media drive visible to Windows. You do not need to remove the USB drive - the change is instant. So now you can quickly change the contents on each partition using Windows Explorer.

Sunday 26 August 2012

Was YLMF now StartOS

Tutorial 17 has been updated for the latest version of YLMF which is now called StartOS.
This is a Vista-like liveCD/installer but starts up in Chinese. I have added some cheat codes to get it to start in English. Take a look here.

Monday 13 August 2012

Windows 8 To Go

I seem to be getting a lot of hits on the Windows8ToGo page on my site, so I have added a YouTube video to help people to get started. Using JFX's tool, you can now directly download and extract the essential WAIK tools in about 30 seconds, rather than have to download the entire 1GB WAIK and then install it!

Friday 3 August 2012

First attempts at Raspberry Pi

I finally got my RPi a few weeks ago but have not had the time to play with it until now.
The first mistake I made was trying to power it from one of it's two standard USB ports (as I did not have a mini-USB power adapter at the time). This appeared to work, in that the RPi powered up and gave some video on the HDMI connection. However, the RPi kept crashing and rebooting and the USB keyboard did not work.
I was getting very frustrated until I tried a new mini USB charger (ordered from Amazon) - now it works well and does not crash.
Next, I tried Debian Wheezy, but I found it very slow - even for gmail browsing, and I could not find any instructions that worked to get YouTube working.
Finally, I tried an XBMC build from and then found a guide on how to install BBC iPlayer and other TV add-ins. I also found that a TVCatchup add-in is also available, so I can watch Live UK TV as well! Picture quality varies and there is some buffering delay on occasion even though I have a direct Enet connection.
It is ironic that TVCatchUp plays live TV, whereas as BBC iPlayer and other TV players play recorded TV!
My next step is to get a WiFi dongle working and then an IR dongle for a remote mini-keyboard.