INT25h on damaged partitions does not always work
So I've been looking into dealing with the sad state of affairs involving poor disk check support. After posting an alogrithm some months ago, I decided to try my hand at developing something.
You can imagine my surprise when my first unit test runs smack into a kernel bug.
On trying this assembly program with this disk image (boot sector erased, but has backup boot sector for disk repair tool to find), you get error code 810C from int 25h. This is wrong in two ways.
- AH=81h is not in the lookup table of error codes.
- The call should succeed not fail. Here I'm not talking about compatibility. If you want a reliable disk check, this call should work on this disk image.
Kernel Version: 2043 (build 2043 OEM:0xfd) [compiled May 13 2021]