On Tue, Nov 01, 2011 at 08:21:11PM +0900, Daniel Castro wrote:
When an int 13 operation is handles (suppose read), you are supposed to get sector X up until sector Y, where X is lba and count is Y. But I wonder, the buffer is the size of the operation? or is it a predefined size that never changes? I tend to incline for the later one, but how can I determine the size?
If the caller requests a read of 16 sectors that are 512 bytes each then the caller must provide an 8K buffer to read into. The SeaBIOS code will pass this buffer to the low-level driver code (op->buf_fl) - the driver should try to fully populate this buffer according to the drive sector size and request size (op->count).