首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何制作MS-DOS下的音频驱动程序?

如何制作MS-DOS下的音频驱动程序?
EN

Stack Overflow用户
提问于 2019-06-25 02:12:01
回答 1查看 244关注 0票数 -4

我想在汇编8086中为MS-DOS制作音频驱动程序,将游戏和其他软件中的Tandy声音发送到非Tandy 1000计算机(没有Tandy 1000声音芯片的计算机)上的PC扬声器。

EN

回答 1

Stack Overflow用户

发布于 2019-06-25 02:26:02

这有点难以实现。Tandy声卡通过将数据写入端口0xc0来工作。为了模拟声卡,您需要截获对该端口的写入,并使用软件处理它们。这在8086上是不可能的,对于80286上的实模式软件来说也是不可能的,所以你至少需要80386才能工作。

关键思想是将您的CPU踢入Virtual 8086模式,然后为其提供IO权限掩码,除了端口0xc0-0xc7之外,任何地方的IO权限掩码都为0。这会导致除您尝试访问Tandy声卡时以外的所有硬件访问都能正常工作。在这种情况下,您将获得一个VM出口,您可以使用它来模拟硬件。

对于this project中的LPT port adlib卡,也做了类似的事情。您应该能够根据您的目的调整代码。

请注意,这使得如何实际模拟声卡的声音的问题完全没有解决。我帮不了你。Tandy使用了SN76489芯片来产生声音,所以我猜,看看以前是否有人试图效仿它。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56741884

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档