The problem is here:
get_cdinfo(7f),int13/4B01(7F),err=0,drive=7f, cdrom_drive==9F.
Using DL=7F to call, the successfully returned 9F is actually a useless value.
Just now, I have uploaded the test grldr and grub.exe to http://grub4dos.jot.com/, please download and test.
If it still fails, then still use Insert single-step debugging, just post the above get_cdinfo line, the purpose is to see the CDROM drive number.
Whether it succeeds or not, with debug on, post the display of geometry (cd) and root (cd).
get_cdinfo(7f),int13/4B01(7F),err=0,drive=7f, cdrom_drive==9F.
Using DL=7F to call, the successfully returned 9F is actually a useless value.
Just now, I have uploaded the test grldr and grub.exe to http://grub4dos.jot.com/, please download and test.
If it still fails, then still use Insert single-step debugging, just post the above get_cdinfo line, the purpose is to see the CDROM drive number.
Whether it succeeds or not, with debug on, post the display of geometry (cd) and root (cd).
因为我们亲手创建,这个世界更加美丽。

StickyI