1

我正在尝试为 DOS 应用程序读/写 USB 硬盘驱动器和闪存驱动器。

我阅读了EDD 规范。它提到函数 Int13(Fn = 48h) 可用于获取 特定磁盘驱动器的接口路径设备路径。这也包括usb接口和ata接口。

现在,此函数还返回一个设备参数表扩展 (DPTE) 表,该表提供 I/O 地址,绕过 Int13h 的软件可以通过该地址读取/写入设备。但此表适用于 ATA afaik。

我想使用 Int 13h读取/写入 USB 磁盘/笔式驱动器。可能吗?

实际上,它是受保护模式下的磁盘 I/O 敏感应用程序。因此,由于模式切换,使用 Int13h 会在性能方面造成严重损失。所以,我试图避免使用 Int13h。

bios是否也将USB驱动器初始化为ATA驱动器。如果是这样,那么我可以使用 DPTE 获取命令块和控​​制块的 I/O 基地址,然后像访问 ATA 驱动器一样访问 USB 驱动器。我对吗?

谢谢

4

1 回答 1

0

FreeDOS 社区已经详细讨论了这个特定问题。整个问题的最佳指南是 FreeDOS 技术说明“ USB with DOS

于 2014-03-10T14:46:53.800 回答