Using Plop to fix buggy USB BIOSes
Boot from your USB drive as normal. Now if you are having problems booting to an OS from the USB drive menu, you can try booting through Plop instead. Plop will replace the BIOSes USB boot code with it's own and so may work better if you have a buggy USB BIOS.
1. Boot from your large USB drive as usual to the grub4dos menu
2. Choose the Plop boot menu entry that you have added when you followed the instructions above but delete the 'hiddenusb' word from the menu
3. Plop should now run and you will see a Plop menu similar to that shown below:
4. Now choose the USB menu entry (as shown selected in the above screenshot) and press Enter - Plop should now boot from the USB drive again and reload your USB grub4dos menu.
5. Now choose the same menu entry that would not work or worked slowly previously (e.g. boot a linux ISO or boot Windows 7 or whatever) - if the problem was that you had a buggy USB BIOS in the target system, then it should now work without any errors or much faster than before.
Note: if you have a USB keyboard, you may lose the keyboard once plop! loads - if so, try a PS/2 keyboard instead or use the hiddenusb keyword to autoboot from USB without needing a keyboard - see below for details.
Tip: The Plop menu allows you to boot from HDA Partition 1 which is the USB first partition if you booted from USB in the first place. If you install grub4dos to the PBR as well as the MBR, then you can use this entry as a failsafe to boot back to the grub4dos menu. On the other hand, if you have a bootable hd0,0 partition on your USB drive, you can use this entry to boot to it.
Configure plpbt.bin
You can easily configure Plop to autoboot from USB using the hiddenusb parameter (see example above or read the next section). You can also 'hard code' the plopbt.bin file using plpcfgbtGUI.exe, as follows:
Using the Windows utility plpcfgbtGUI.exe, you can configure the plpbt.bin file to boot to a default device after a timeout.
Detecting if Plop is installed
You can then use the modified version of plopbt.bin (settings as shown above) to make a grub4dos menu that automatically loads PLOP every time it boots and has a 5 second countdown, by using the modified plpbt.bin file and this line at the top of your menu.lst file:
This searches memory for the Plop signature and if it is not found it will load Plop. When Plop loads it counts down from 5 seconds and then boots from the USB drive (set as the default now) and when menu.lst reloads, because Plop is now loaded it does not reload Plop again.
Another method is to check to see if the BIOS has been patched by Plop. This uses the grub4dos executable file BIOS which can be obtained from the grubutils download area. This example requires plpbt.bin and bios to both be in the /plpbt folder on the USB drive. A modified version of plpbt.bin is not required as we are using the hiddenusb parameter to force Plop to boot to USB immediately.