I did (quite a few) checks/tests.
Are you sure that the files on (hd1,5) are accessible by grub4dos?
Or are they Bitlockered/whatever?
The result of blocklist (hd1,5)/grldr:
#3 - blocklist (hd1,5)/grldr returns 1577000+532
should be:
(hd1,5)1577000+532
and NOT (my bad):
(hd1)1577000+532
The other issues are seemingly because of mixing/mingling with the hard disk number and/or using the old grldr version..
Try doing this.
Have a copy of umbr on the partition where the grldr (the "right" version) is.
Boot to the "right" version of grldr (no matter if on another device).
Root to the volume where the copy of umbr and the grldr you want to link to is, in this example (hd0,0).
Run:
umbr --test (hd0,0)/grldr (hd0)1+2
the result is in the attached image.
The lines are:
00000000: EB 4E 90 00 00 00 00 00 55 4D 42 52 01 00 00 00 <- this is the fixed header of the MBR
00000010: 89 C8 6E 02 00 00 E0 07 70 00 00 00 00 00 00 00 <- which represent:
89C8=0xC889 some form of sum or checksum for the contents of the file that is for the grldr 2016-12-23
6E020000=0x0000026E size of the grldr file in sectors, file is 318277 bytes, in sectors used 622=0x026E
E007=Unknown, seemingly E007 for files, C007 for blocklists
7000000000000000=0x0000000000000070 Offset in sectors (absolute i.e. from sector 0 of the device) to the beginning of the file/blocklist
00000020: 00 00 02 00 00 00 C0 07 70 00 00 00 00 00 00 00 <- which represent:
0000=0x0000 some form of sum or checksum for the contents, since these are two empty sectors, 0 seems a simple 16 byte checksum
02000000=0x00000002 numbers of sectors, ok, since it was (hd0)1
+2C007=Unknown, seemingly E007 for files, C007 for blocklists
0100000000000000=0x0000000000000001 Offset in sectors (absolute i.e. from sector 0 of the device) to the beginning of the file/blocklist, ok, since it was (hd0)
1+2
00000030: 60 4A 01 00 00 00 C0 07 3F 00 00 00 00 00 00 00 <- which represent:
604A=0x4A60 some form of sum or checksum for the contents
01000000=0x00000001 numbers of sectors, ok, since this is the "automatic" entry for the PBR of current root, same as (hd0,0)0+1
C007=Unknown, seemingly E007 for files, C007 for blocklists
3F00000000000000=0x000000000000003F Offset in sectors (absolute i.e. from sector 0 of the device) to the beginning of the file/blocklist, ok, since it is 63 sectors before, same as (hd0,0)0+1
It seems that for some reasons (possibly a small bug in the implementation) the "failsafe" PBR (which is automatically that of "current root" unless the modifiers -d and -p are used is written as third entry (should be on fourth one), which means that you can propose not 3 different objects (besides the failsafe one) but only two (as the third one is overwritten by the "failsafe" setting).
The attentive reader might have noticed
![:dubbio:](http://reboot.pro/public/style_emoticons/default/dubbio.gif)
that in the image I used the umbrtest (and not the umbr) command.
Umbrtest is only a quickly and half-@§§edly hex-edited umbr that DOES NOT actually try to boot and returns to grub4dos command line, I attach it as well (just in case).
![:duff:](http://reboot.pro/public/style_emoticons/default/duff.gif)
Wonko