我目前正在使用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超声库 编辑(2011年7月19日):也可以使用其他语言,因为QuickBasic也可以链接它们。
P.S。 Sound Blaster库可用here,但我不喜欢它产生的声音。
答案 0 :(得分:1)
作为QB的忠实粉丝,我很高兴看到有人还在使用它。所以我为你找到了答案。这是我发现的。 this page上有一个ASM Gravis图书馆。使用ASM tutorials,您应该能够将两者结合起来。仅供参考,这是另一个great resource。祝你好运。
答案 1 :(得分:1)
您可以查看DS4QB ++,它允许您使用Windows API播放音乐和声音效果。我没有尝试过更高版本的Windows。还有BWSB,它是基于DOS的,可以播放MOD / S3M文件。两者都在我的旧QB网站上提供:
答案 2 :(得分:1)
QB64 uses TiMidity,我猜是通过_SNDOPEN。