⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test56.asm

📁 4channel 语音播放程序 26个字母播放. 4x12 小扫描按键
💻 ASM
📖 第 1 页 / 共 5 页
字号:
        mov     mpF             a
        ret4
;;***********************************************************************
@@set_ins1:
        page5
        mov     ins1            a
        playd3  inst#XO.dat
_@@stins1_00:
        rcode3
        caje    ins1          @f            ;;s1
	rcode3
        jmp     _@@stins1_00
@@:
	page6
        mov     a               adsr			;clear ch1 adsr setting
        and     a               #1110b
        mov     adsr            a
        mov     a               fra2			;load ch1 adsr setting
        and     a               #0001b
        or      a               adsr
        mov     adsr            a
	page5
        mov     a               instyp1			;load sample rate setting
        and     a               #0011b
        mov     instyp1         a
        mov     a               fra1
        and	a		#0011b
	caje	#1		@@stins1_01
	caje	#2		@@stins1_02
	caje	#3		@@stins1_03
	jmp	@f
@@stins1_01:
	mov	a		#0100b
        or      a               instyp1
        mov     instyp1         a
	jmp	@f
@@stins1_02:
	mov	a		#1000b
        or      a               instyp1
        mov     instyp1         a
	jmp	@f
@@stins1_03:
	mov	a		#1100b
        or      a               instyp1
        mov     instyp1         a
	jmp	@f
@@:        
        rcode3						;load release rate
        mov     res1            a
	page6
        mov     a               fra2			;load release step
        mov     rStep1          a
        page0
        ret4
;;***********************************************************************
@@set_ins2:
        page5
        mov     ins2            a
        playd3  inst#XO.dat
_@@stins2_00:
        rcode3
        caje    ins2          @f            ;;s1
	rcode3
        jmp     _@@stins2_00
@@:
	page6
        mov     a               adsr			;clear ch2 adsr setting
        and     a               #1101b
        mov     adsr            a
        mov     a               fra2			;load ch2 adsr setting
        and     a               #0010b
        or      a               adsr
        mov     adsr            a
	page5
        mov     a               instyp2			;load sample rate setting
        and     a               #0011b
        mov     instyp2         a
        mov     a               fra1
        and	a		#0011b
	caje	#1		@@stins2_01
	caje	#2		@@stins2_02
	caje	#3		@@stins2_03
	jmp	@f
@@stins2_01:
	mov	a		#0100b
        or      a               instyp2
        mov     instyp2         a
	jmp	@f
@@stins2_02:
	mov	a		#1000b
        or      a               instyp2
        mov     instyp2         a
	jmp	@f
@@stins2_03:
	mov	a		#1100b
        or      a               instyp2
        mov     instyp2         a
	jmp	@f
@@:     
        
        rcode3						;load release rate
        mov     res2            a
	page6
        mov     a               fra2			;load release step
        mov     rStep2          a
        page0
        ret4
;;***********************************************************************
@@set_ins3:
        page5
        mov     ins3            a
        playd3  inst#XO.dat
_@@stins3_00:
        rcode3
        caje    ins3          @f            ;;s1
	rcode3
        jmp     _@@stins3_00
@@:
	page6
        mov     a               adsr			;clear ch3 adsr setting
        and     a               #1011b
        mov     adsr            a
        mov     a               fra2			;load ch3 adsr setting
        and     a               #0100b
        or      a               adsr
        mov     adsr            a
	page5
        mov     a               instyp3			;load sample rate setting
        and     a               #0011b
        mov     instyp3         a
        mov     a               fra1
        and	a		#0011b
	caje	#1		@@stins3_01
	caje	#2		@@stins3_02
	caje	#3		@@stins3_03
	jmp	@f
@@stins3_01:
	mov	a		#0100b
        or      a               instyp3
        mov     instyp3         a
	jmp	@f
@@stins3_02:
	mov	a		#1000b
        or      a               instyp3
        mov     instyp3         a
	jmp	@f
@@stins3_03:
	mov	a		#1100b
        or      a               instyp3
        mov     instyp3         a
	jmp	@f
@@:     
        
        rcode3						;load release rate
        mov     res3            a
	page6
        mov     a               fra2			;load release step
        mov     rStep3          a
        ret4
;;***********************************************************************
@@set_ins4:
        page5
        mov     ins4            a
        playd3  inst#XO.dat
_@@stins4_00:
        rcode3
        caje    ins4          @f            ;;s1
	rcode3
        jmp     _@@stins4_00
@@:
	page6
        mov     a               adsr			;clear ch4 adsr setting
        and     a               #0111b
        mov     adsr            a
        mov     a               fra2			;load ch4 adsr setting
        and     a               #1000b
        or      a               adsr
        mov     adsr            a
	page5
        mov     a               instyp4			;load sample rate setting
        and     a               #0011b
        mov     instyp4         a
        mov     a               fra1
        and	a		#0011b
	caje	#1		@@stins4_01
	caje	#2		@@stins4_02
	caje	#3		@@stins4_03
	jmp	@f
@@stins4_01:
	mov	a		#0100b
        or      a               instyp4
        mov     instyp4         a
	jmp	@f
@@stins4_02:
	mov	a		#1000b
        or      a               instyp4
        mov     instyp4         a
	jmp	@f
@@stins4_03:
	mov	a		#1100b
        or      a               instyp4
        mov     instyp4         a
	jmp	@f
@@:     
        rcode3						;load release rate
        mov     res4            a
	page6
        mov     a               fra2			;load release step
        mov     rStep4          a
        ret4
;;***********************************************************************
@@tempoPP:
        page6
        mov     a               tempo
        xor     a               #1111b
        caje    #0Eh           @f            ;;s1
        inca
        nop
@@:
        xor     a               #1111b
        mov     tempo           a
        ret4
;;***********************************************************************
@@tempoMM:
        page6
        mov     a               tempo
        caje    #0          @f            ;;s1
        inca
@@:
        mov     tempo           a
        ret4
;;***********************************************************************

;;**********************************************************************       
Initial_Chip:        
        page1
        mov     pause        #0
        mov     tr1_4           #0000b
        mov     tr5_8           #0000b
        mov     tr9_12          #0000b
        mov     tr13_16         #0000b
        mov     p1_go1          #0000b
        mov     p1_go2          #1111b
        mov     scanP1          #0000b
ifdef	mrx_2 
        mov     tr17_20         #0
        mov     tr21_24         #0
        mov     tr25_28         #0
        mov     tr29_32         #0
endif

ifdef	mrx_3	
	page1
	mov     tr33_36         #0
	mov     tr37_40         #0
	mov     tr41_44         #0
	page0
	mov     tr45_48         #0
endif

ifdef	mrx_4
	page0	
	mov     tr49_52         #0
	mov     tr53_56         #0
	mov     tr57_60         #0
	mov     tr61_64         #0
endif	
ifdef	@_key_type_@
	mov	mtr2		#0
	mov	mtr3		#0
	mov	mtr6		#0
endif
		
	page2
        mov     skblock         #0
        mov     delay8m         #0000b          ;m0:delay
        mov     s_delay1        #0000b
        mov     p_delay1        #0000b
        mov     Rand0           #0
        mov     Rand1           #0
        mov     Rand2           #0
        mov     enter_b         #0000b
	mov	a	vol
	mov	vol_pp	a
	page3
        mov     call_b1         #0000b	
        mov     bground1        #0000b
        mov     bground2        #0000b
        mov     spF             #0000b
        mov     bspF            #0000b
        mov     mpF             #0000b
        mov     debocr          #0000b
	page4
        mov     vol1_h  #0000b
        mov     vol1_l  #0000b
        mov     vol2_h  #0000b
        mov     vol2_l  #0000b
        mov     vol3_h  #0000b
        mov     vol3_l  #0000b
        mov     vol4_h  #0000b
        mov     vol4_l  #0000b    
        mov     beat1_h #0000b
        mov     beat1_l #0000b
        mov     beat2_h #0000b
        mov     beat2_l #0000b
        mov     beat3_h #0000b
        mov     beat3_l #0000b
        mov     beat4_h #0000b
        mov     beat4_l #0000b
        page5
        mov     v_vol1  #0000b
        mov     v_vol2  #0000b
        mov     v_vol3  #0000b
        mov     v_vol4  #0000b
	page6
        mov     tempo   #0000b          ;tempo
        mov     t_count #0000b          ;tempo count
        mov     rhyF            #0000b
        mov     fvCnt           #1111b
        mov     a               #0
        mov     p3state         a
        mov     p2state         a

	page7
        mov     p6state         a
        mov     p2_mdy          #0000b
        mov     p3_mdy          #0000b
        mov     p6_mdy          #0000b

        mov     p2_go1          #0000b
        mov     p2_go2          #1111b
        mov     p3_go1          #0000b
        mov     p3_go2          #1111b
        mov     p6_go1          #0000b
        mov     p6_go2          #1111b

        mov     p3_fv           #0000b
        mov     p3_fv1          #0000b
        mov     p6_fv           #0000b
        mov     p6_fv1          #0000b
	mov	a		#3
	mov	rh1		a
	mov	a		#9
	mov	rl1		a
	mov	a		#3
	mov	rh2		a
	mov	a		#9
	mov	rl2		a
	mov	a		#3
	mov	rh3		a
	mov	a		#9
	mov	rl3		a
	mov	a		#3
	mov	rh4		a
	mov	a		#9
	mov	rl4		a
	Jmp	@@Initial_Chip_Bk
	
	
;;***********  @@update ************************
Update_Key:
;@@update:
        page1
        mov     a       mrx
        caje    #1111b  @@update_key
        mov     a       #0001b
        mov     p2      a
        mov     a       mrx
        mov     p2s     a
        mov     a       #1111b
        mov     p2s     a
        mov     a       p1
        mov     tr1_4   a
        mov     a       #0010b
        mov     p2      a
        mov     a       mrx
        mov     p2s     a
        mov     a       #1111b
        mov     p2s     a
        mov     a       p1
        mov     tr5_8   a
        mov     a       mrx
        caje    #1100b  @@update_over
        mov     a       #0100b
        mov     p2      a
        mov     a       mrx
        mov     p2s     a
        mov     a       #1111b
        mov     p2s     a
        mov     a       p1
        mov     tr9_12  a
        mov     a       mrx
        caje    #1000b  @@update_over
        mov     a       #1000b
        mov     p2      a
        mov     a       mrx
        mov     p2s     a
        mov     a       #1111b
        mov     p2s     a
        mov     a       p1
        mov     tr13_16 a
;;**********************************************************
ifdef   mrx_2
        mov     a       #0001b
        mov     p3      a
        mov     a       mrx_2
        mov     p3s     a
        mov     a       #1111b
        mov     p3s     a
        mov     a       p1
        mov     tr17_20 a
        mov     a       mrx_2
        caje    #1110b  @@update_over
        mov     a       #0010b
        mov     p3      a
        mov     a       mrx_2
        mov     p3s     a
        mov     a       #1111b
        mov     p3s     a
        mov     a       p1
        mov     tr21_24 a
        mov     a       mrx_2
        caje    #1100b  @@update_over
        mov     a       #0100b
        mov     p3      a
        mov     a       mrx_2
        mov     p3s     a
        mov     a       #1111b
        mov     p3s     a
        mov     a       p1
        mov     tr25_28 a
        mov     a       mrx_2
        caje    #1000b  @@update_over
        mov     a       #1000b
        mov     p3      a
        mov     a       mrx_2
        mov     p3s     a
        mov     a       #1111b
        mov     p3s     a
        mov     a       p1
        mov     tr29_32 a
endif
ifdef	mrx_3
        mov     a       #0001b
        mov     p2      a
        mov     a       mrx_3
        mov     p2s     a
        mov     a       #1111b
        mov     p2s     a
        mov     a       p6
        mov     tr33_36 a
        
        mov     a       mrx_3
        caje    #1110b  @@update_over
        mov     a       #0010b
        mov     p2      a
        mov     a       mrx_3
        mov     p2s     a
        mov     a       #1111b
        mov     p2s     a
        mov     a       p6
        mov     tr37_40 a
        mov     a       mrx_3
        caje    #1100b  @@update_over
        mov     a       #0100b
        mov     p2      a
        mov     a       mrx_3
        mov     p2s     a
        mov     a       #1111b
        mov     p2s     a
        mov     a       p6
        mov     tr41_44 a
        mov     a       mrx_3
        caje    #1000b  @@update_over
        mov     a       #1000b

⌨️ 快捷键说明

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