我目前正在 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 库在这里可用,但我不喜欢它产生的声音。
资源
- libTiMidity:http ://libtimidity.sourceforge.net/
- 装配 Gravis 超声库:guslib11.arj
- 组装教程(包括 QBasic):http ://www.petesqbsite.com/sections/tutorials/assembly.shtml
- Direct Sound 4 QB++:ds4qbpp12.zip
- 钟声、口哨声和音板:bwsb.zip
- QMIDI 4.1:http ://www.phatcode.net/downloads.php?id=191