1

我目前正在 QuickBasic 中进行一个需要使用 MIDI 文件的小项目。
作为 DOS 环境,我使用的是 DOSBox 0.74,它提供了 Gravis Ultrasound 卡的仿真。

到目前为止,我只能通过使用 C:\ULTRASND 目录中的 PLAYMIDI.EXE 文件来访问 GUS。但是,不可能从 QuickBasic 内部启动它:SHELL 语句创建一个子 COMMAND.COM 进程,因此当 PLAYMIDI.EXE 开始在后台播放时,子进程完成并终止,音乐停止。所有这一切意味着启动 PLAYMIDI.EXE 的唯一方法是在实际程序之前通过批处理文件,但这也意味着无法从 QuickBasic 程序控制音乐。 编辑(2011 年 7 月 24 日)实际上可以使用 SHELL 启动它(我的错误),但 PLAYMIDI.EXE 的 TSR 版本占用大量内存,因此我的程序没有足够的空间。问题仍然存在。

因此,我的问题是是否有适用于 QuickBasic 的 Gravis Ultrasound 库。
编辑(2011 年 7 月 19 日):也可能是另一种语言,因为 QuickBasic 也可以链接这些语言。

PS Sound Blaster 库在这里可用,但我不喜欢它产生的声音。

资源

4

3 回答 3

2

作为 QB 的忠实粉丝,我很高兴看到有人仍在使用它。所以我特意为你寻找答案。这是我发现的。此页面上有一个 ASM Gravis 库。使用ASM 教程,您应该能够将两者结合起来。仅供参考,这是另一个很棒的资源。祝你好运。

于 2011-07-21T14:18:59.427 回答
1

QB64 使用 TiMidity,我猜是通过_SNDOPEN

于 2012-03-28T08:45:10.450 回答
1

您可以查看 DS4QB++,它允许您使用 Windows API 播放音乐和音效。不过,我还没有尝试过使用更高版本的 Windows。还有基于 DOS 的 BWSB,可以播放 MOD/S3M 文件。两者都可以在我的旧 QB 网站上找到:

http://piptol.qbasicnews.com/files.htm

于 2011-07-21T15:31:47.940 回答