Good , then post just the MBR and the PBR, with those I can re-build an image and make a few tests.
Sorry but I cannot make head or tail of your last post.
If you want help in troubleshooting the issue, please provide what I asked for, so that I can do a few tests.
Ok, clarification:
I recorded sector reads to track down the problem. Left side records the working BOOTSECT.620 loading from NTLDR. Right side records the NON working loading of IO.SYS from GRUB4DOS.
Both records are done from the time pressing ENTER in either NTLDR or GRUB4DOS.
Afterwards I made a comparision (diff) of both. Left side is the working side, right side the non working side.
Letters in the middle mean:
| difference
< or >: not here
The relevant findings are:
Last sector of this read is ROOT DIR entry: scsi-disk: Read (sector 504, count 63) Read inside command.com: scsi-disk: Read (sector 2931390, count 63) Read second ROOT DIR entry: scsi-disk: Read (sector 567, count 63) Inside IO.SYS: scsi-disk: Read (sector 2931453, count 63) Garbage: scsi-disk: Read (sector 189, count 63) Garbage: scsi-disk: Read (sector 242, count 1) Start of IO.SYS: scsi-disk: Read (sector 2931414, count 39) Inside IO.SYS: scsi-disk: Read (sector 2931453, count 63) Inside IO.SYS: scsi-disk: Read (sector 2931478, count 38) Garbage, partly MSDOS.SYS: scsi-disk: Read (sector 2931516, count 26) Garbage: scsi-disk: Read (sector 3168342, count 54) scsi-disk: Read (sector 3168396, count 10) Garbage, some FAT DIR entries: scsi-disk: Read (sector 3168396, count 10)
Left side reads MSDOS.SYS correctly, GRUB4DOS not:
scsi-disk: Read (sector 242, count 1) | scsi-disk: Read (sector 257, count 1) scsi-disk: Read (sector 2931542, count 37) | scsi-disk: Read (sector 3168342, count 54) scsi-disk: Read (sector 2931579, count 63) | scsi-disk: Read (sector 3168396, count 10) scsi-disk: Read (sector 2931642, count 28) <
I think I have to look at the code to understand what happens. Maybe someone can tell the general read strategy for IO.SYS.
Thanx.
Wiesl