Hello, I would like to know how many continuous sectors can int 13h read and why is it limited?
Thanks in advance.
INT 13h Question
- Combuster
- Member
- Posts: 9301
- Joined: Wed Oct 18, 2006 3:45 am
- Libera.chat IRC: [com]buster
- Location: On the balcony, where I can actually keep 1½m distance
- Contact:
Re: INT 13h Question
In general the following may fail:
- Accessing the disk across track boundaries
- Crossing a 64k boundary in RAM
- Reading/writing from unaligned RAM
- The first few read attempts after the disk motor was stopped.
- Anything, if there was no reset between the attempt and the last failed attempt.
Most of it is because the bios is often too stupid to do more than one transaction per bios call.
- Accessing the disk across track boundaries
- Crossing a 64k boundary in RAM
- Reading/writing from unaligned RAM
- The first few read attempts after the disk motor was stopped.
- Anything, if there was no reset between the attempt and the last failed attempt.
Most of it is because the bios is often too stupid to do more than one transaction per bios call.
Re: INT 13h Question
If you use ah=42h you can in principle read up to 127 sectors. However, the input buffer cannot straddle a 64kb boundary in RAM because of the daft way IBM implemented DMA in the originaal PC - at least that limitation applies to floppies. Hard disks nowadays implement their own DMA.renovatio wrote:Hello, I would like to know how many continuous sectors can int 13h read and why is it limited?
Thanks in advance.