读书人

怎样在汇编音乐小程序中实现暂停功能?

发布时间: 2012-03-20 14:01:11 作者: rapoo

怎样在汇编音乐小程序中实现暂停功能?求大家帮忙!
课程设计做了一个简单的汇编音乐程序,用的是定义一个频率表和节拍时间表来演奏的方法,现在想在程序中加个暂停功能,使音乐在播放时从键盘按任意键时暂停,如果用21h中断的1号功能会在从键盘输入前打断音乐,该使用什么中断才能实现我要的功能?
各位帮帮忙!

[解决办法]
直接读60H端口应该也行吧
[解决办法]
还需要读取一下60H端口吧? 貌似:
in al,60H
然后在用cmp判断al的值。
[解决办法]
http://blog.csdn.net/paullbm/archive/2006/06/21/819229.aspx 这是BIOS和DOS中断大全(我也不知道全不全,不过很详细)


还有读取60H端口 判断扫描码什么的
[解决办法]
参考一下下面的程序(znxllyuan前两天写的那个“字符变色”程序让我又回想起这个功能):

Assembly code
CODE    SEGMENT    ASSUME    CS:CODESTART:MOV    AH,2MOV    DL,'A'INT    21H    ;输出'A'MOV    AH,1INT     16H     ;测试键盘有无按键(不论有无按键都不停止)JZ      START    ;若无, 返回前面继续显示'A'MOV     AH,2    ;有按键, 则显示'B'MOV     DL,'B'                              INT     21h                                 MOV    AH,4CH    ;返回DOSINT    21HCODE    ENDS    END    START 

读书人网 >汇编语言

热点推荐