This CHS-to-LBA conversion and retry-with-reset pattern is exactly what GRUB's stage-1/stage-1.5 and every historical DOS disk driver implemented to survive the unreliable floppy and early IDE hardware of the era, and the 8GB CHS ceiling you're working around here is the real reason INT 0x13 extensions (AH=0x42, LBA-based) had to be invented for larger drives. Skipping the retry loop is why old bootloaders would randomly fail to boot on flaky hardware.