来自「静音琴的源码,有兴趣的拼音可以下载下来看看,这个是可以生产的程序.」· 代码 · 共 89 行

TXT
89
字号
;##############################################################
        PROC  SYCL,SYJTBCL
;********************************
;       收音处理
;********************************
;功能:  开关标志=1
;       发送:键序号,音量(=0)
;--------------------------------
;入口:  JXH     键序号
;--------------------------------
;出口:  XFS_BZ=0       需发送标志
;--------------------------------
;资源   无
;--------------------------------
SYCL:
        PUSH  ACC
        PUSH  00H               ;R0
        CLR   EA
        MOV   R0,TXD_IN         ;发送数据放入地址
        SETB  BZ_KGJP           ;开关键盘标志,1=关
        
        ;-----发送80H------------------
        MOV   A,#80H            ;关
        MOVX  @R0,A
        INC   TXD_IN
        ANL   TXD_IN,#01111111B ;发送缓冲长度限制
        MOV   R0,TXD_IN
        ;------------------------------
        MOV   A,JXH             ;键序号
        MOVX  @R0,A
        INC   TXD_IN
        ANL   TXD_IN,#01111111B ;发送缓冲长度限制
        MOV   R0,TXD_IN

        MOV   A,#0              ;关
        MOVX  @R0,A
        INC   TXD_IN
        ANL   TXD_IN,#01111111B ;发送缓冲长度限制

        CLR   BZ_XFS            ;需发送标志,0=需
        SETB  EA
        POP   00H               ;R0
        POP   ACC
        RET
        include "软件陷阱.asm"
;********************************
;       收音脚踏板处理
;********************************
;功能:  关脚踏板: B0 40 00
;--------------------------------
;入口:  无
;--------------------------------
;出口:  XFS_BZ=0       需发送标志
;--------------------------------
;资源   无
;--------------------------------
SYJTBCL:
        PUSH  ACC
        PUSH  00H               ;R0
        CLR   EA
        MOV   R0,TXD_IN         ;发送数据放入地址

        MOV   A,#0B0H           ;关脚踏板: B0 40 00
        MOVX  @R0,A
        INC   TXD_IN
        ANL   TXD_IN,#01111111B ;发送缓冲长度限制
        MOV   R0,TXD_IN

        MOV   A,#40H            ;关脚踏板: B0 40 00
        MOVX  @R0,A
        INC   TXD_IN
        ANL   TXD_IN,#01111111B ;发送缓冲长度限制
        MOV   R0,TXD_IN

        MOV   A,#0              ;关脚踏板: B0 40 00
        MOVX  @R0,A
        INC   TXD_IN
        ANL   TXD_IN,#01111111B ;发送缓冲长度限制

        CLR   BZ_XFS            ;需发送标志,0=需
        SETB  EA
        POP   00H               ;R0
        POP   ACC
        RET
        include "软件陷阱.asm"
;********************************
        END
;##############################################################

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?