int13/42 copies a block to a memory while running in 16-bit real mode, so is useless when running under an OS. To print the contents of any block of sda to the console do:
Code:
dd if=/dev/sda count=1 skip=$block |hexdump
In a program you can just open the disk, seek to any block and issue a read() command.