Topic: API function: get physical sector address for current file position
Both ATA and SD devices managed with ESXDOS use 512 byte sectors. My proposal is to have a ESXDOS function call that can retrieve the address (sector number) of the last sector used in the last read (or write or seek) operation. This can be already achieved by quering the device itself on ATA devices, but SD cards don´t have (afaik) such option.
The purpose of this is for software to be able to get the list of sectors that a file uses by seeking it on 512 byte steps. That list of sectors can therefore be used to perform low level access to the actual device bypassing ESXDOS and allowing real time audio or video playing without the need for the file to be unfragmented and without the need for such program to reimplement a file system just for this.
It also opens the posibility of new hardware devices to be designed so they receive a list of sector addresses obtained this way and the hardware itself is in charge of performing read operations to the device independent of the CPU (so a TZX file player could read TZX/PZX files stored in the same card DivMMC uses instead of using a different SD card, and file selection could be made possible using ESXDOS itself, much like the current implementation of PZX file player on ZX-UNO)