|
不点、chenall大能不能查下1004版的grub4dos是否产生了bug
2011-10-03 (tinybit)changed buf_addr from 0x20000 to 0x100000 to avoid possible conflict between dd_func and get_diskinfo.
如下六个菜单 使用1002版及之前的grub4dos都可以正常启动
换用1004版之后的grub4dos前三个没问题 可以正常启动 后三个均在分区阶段0x7B蓝屏
一个简单的规律 只要 map --heads=2 --sectors-per-track=18 --mem (md)0x800+4 (99)一句在 dd if=(fd1) of=(fd0) count=1 之后执行 就会蓝屏
- title [01] XP
- map /BOOT/IMGS/FIRADISK.IMG (fd1)
- map --heads=2 --sectors-per-track=18 --mem (md)0x800+4 (99)
- map --mem (md)0x6000+2880 (fd0)
- map --hook
- dd if=(fd1) of=(fd0) count=1
- find --set-root /WIN$.ISO
- map /WIN$.ISO (0xff)
- map --rehook
- write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/WIN$.ISO;floppy,vmem=find:/BOOT/IMGS/FIRADISK.IMG;\n\0
- chainloader (0xff)
- boot
- title [02] XP
- map /BOOT/IMGS/FIRADISK.IMG (fd1)
- map --mem (md)0x6000+2880 (fd0)
- map --heads=2 --sectors-per-track=18 --mem (md)0x800+4 (99)
- map --hook
- dd if=(fd1) of=(fd0) count=1
- find --set-root /WIN$.ISO
- map /WIN$.ISO (0xff)
- map --rehook
- write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/WIN$.ISO;floppy,vmem=find:/BOOT/IMGS/FIRADISK.IMG;\n\0
- chainloader (0xff)
- boot
- title [03] XP
- map /BOOT/IMGS/FIRADISK.IMG (fd1)
- map --mem (md)0x6000+2880 (fd0)
- map --hook
- map --heads=2 --sectors-per-track=18 --mem (md)0x800+4 (99)
- dd if=(fd1) of=(fd0) count=1
- find --set-root /WIN$.ISO
- map /WIN$.ISO (0xff)
- map --rehook
- write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/WIN$.ISO;floppy,vmem=find:/BOOT/IMGS/FIRADISK.IMG;\n\0
- chainloader (0xff)
- boot
- title [04] XP BSOD
- map /BOOT/IMGS/FIRADISK.IMG (fd1)
- map --mem (md)0x6000+2880 (fd0)
- map --hook
- dd if=(fd1) of=(fd0) count=1
- map --heads=2 --sectors-per-track=18 --mem (md)0x800+4 (99)
- find --set-root /WIN$.ISO
- map /WIN$.ISO (0xff)
- map --rehook
- write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/WIN$.ISO;floppy,vmem=find:/BOOT/IMGS/FIRADISK.IMG;\n\0
- chainloader (0xff)
- boot
- title [05] XP BSOD
- map /BOOT/IMGS/FIRADISK.IMG (fd1)
- map --mem (md)0x6000+2880 (fd0)
- map --hook
- dd if=(fd1) of=(fd0) count=1
- find --set-root /WIN$.ISO
- map --heads=2 --sectors-per-track=18 --mem (md)0x800+4 (99)
- map /WIN$.ISO (0xff)
- map --rehook
- write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/WIN$.ISO;floppy,vmem=find:/BOOT/IMGS/FIRADISK.IMG;\n\0
- chainloader (0xff)
- boot
- title [06] XP BSOD
- map /BOOT/IMGS/FIRADISK.IMG (fd1)
- map --mem (md)0x6000+2880 (fd0)
- map --hook
- dd if=(fd1) of=(fd0) count=1
- find --set-root /WIN$.ISO
- map /WIN$.ISO (0xff)
- map --heads=2 --sectors-per-track=18 --mem (md)0x800+4 (99)
- map --rehook
- write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/WIN$.ISO;floppy,vmem=find:/BOOT/IMGS/FIRADISK.IMG;\n\0
- chainloader (0xff)
- boot
复制代码 |
|