These ideas are mostly from grub4dos, I think they can be useful in GRUB2. 1. cat
In addition to the current function, cat can also generate hexadecimal dump, and it can optionally choose the range of bytes to display. For example: cat [--hex] [--skip=S] [--length=L] FILE Sometimes it's useful to dump the content of physical memory, it can be implemented with a special option --mem. For example, cat [--mem] [--skip=S] [--length=L] base_address It can also be implemented with virtual device (md). For example, cat --hex (md)+2 dump the first 1K of memory. But It seems a waste to add a new device just for cat. The cat module can export function dump: dump(unsigned long base, char* buf, int len); other module can use it to generate hexadecimal dump. 2. find Find command is missing in GRUB2. It's used to find the device which contains a certain file. find [--set=var_name] FILENAME If the device is found, it's name will be copied to var_name. For example, find --set=root /io.sys chainloader +1 Boot from the partition that has io.sys in the root directory. 3. chainloader It can be useful if chainloader can load multiple sector file. chainloader [--force] [--load-addr=SEG:OFS] [--boot-addr=CS:IP] FILE The default load address and boot address is 0:0x7C00. With this extension, chainloader can load grldr, ntldr, io.sys, kernel.sys, etc. -- Bean <[EMAIL PROTECTED]> _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel