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

📄 sound_library.asl

📁 智能玩具实际文件
💻 ASL
字号:
+                     1 ;****************************************************************;
+                     2 ; Sound Play Set Library
+                     3 ;
+                     4 ; Written by: lixy
+                     5 ; Date: 2004-02-16
+                     6 ;****************************************************************;
+                     7 
+                     8 ;================================================================;
+                     9 ;Constant Area
+                    10 ;================================================================;
0006                 11 c_voc			equ	#06h		;R_VOC: bit2:PWM, bit1:DA, bit0:OP
+                    12 						;enable PWM and DA
00F7                 13 c_pwmc			equ	#0f7h		;R_PWMC: bit7:COM/DATA, bit6-bit4:PWM OP DRIVER
+                    14 						;        bit3-bit1:PCK SELECTION, bit0:PWM ENABLE
+                    15 						;set PWM enable
+                    16 ;c_cry_times		equ	#2
+                    17 ;c_snd_intvl_h		equ	#050h		;the interval of the mouse sound play
+                    18 ;c_snd_intvl_l		equ	#02h
+                    19 
0010                 20 c_dly_r_f		equ	#10h		;the sound rise and fall delay constant
+                    21 
+                    22 ;================================================================;
+                    23 ;Sound Data Area
+                    24 ;================================================================;
+                    25 ;	.area	sound_var(data)
+                    26 
+                    27 ;flg_cry_for_key_press::	.ds	1
+                    28 ;m_cry_times::		.ds	1
+                    29 ;cnt_snd_intvl::		.ds	2	;the counter of the mouse sound play interval
+                    30 
+                    31 ;temp_pwmc::		.ds	1	;pwmc temporary variable
+                    32 ;temp_dly_r_f::		.ds	1	;sound rise and fall delay temp variable
+                    33 
+                    34 ;================================================================;
+                    35 ;Sound Code Library
+                    36 ;================================================================;
+                    37 ;	.area	sound_lib(code)
+                    38 
+                    39 ;sound::
+                    40 
+                    41 ;//04-03-19// add the sound output from vo
+                    42 ;	lda	r_voc
+                    43 ;	cmpe	#00h
+                    44 ;	brz	next_cry	
+                    45 ;	call	tail
+                    46 ;	lda	#00h
+                    47 ;	sta	r_voc			;close PWM and D/A
+                    48 ;next_cry:
+                    49 ;end add //04-03-19//
+                    50 
+                    51 ;sound_play_set:
+                    52 ;	call	select_sound
+                    53 ;	call	play_initial
+                    54 ;	br	sound_end
+                    55 
+                    56 
+                    57 ;----------------------------------------------------------------;
+                    58 ;Play Initial Subroutine
+                    59 ;----------------------------------------------------------------;
0000                 60 play_initial:
0000 F3 06           61 	lda	#c_voc
0002 FC 48           62 	sta	r_voc
0004 F3 F7           63 	lda	#c_pwmc
0006 FC 34           64 	sta	r_pwmc
+                    65 	;call	header
0008 F3 00           66 	lda	#00h
000A FD 00           67 	sta	M_stopbit
000C 24              68         ret
+                    69 ;----------------------------------------------------------------;
+                    70 ;Select Sound0 (for free run) Subroutine
+                    71 ;----------------------------------------------------------------;
000D                 72 select_sound_normal::
000D F3 00           73 	lda	#00h
000F FD 02           74         sta	M_sphptr+2
0011 F3 00           75         lda	#>(sound_tab)
0013 FD 01           76         sta	M_sphptr+1
0015 F3 1D           77         lda	#<(sound_tab)
0017 FD 00           78         sta	M_sphptr
0019 20 00 00        79         call	play_initial
001C 24              80         ret
001D                 81 sound_tab::
+                    82 	.include	"normal.inc"
+                    83 ;//04-03-23// add the sound played in the course
+                    84 ;of stop which is caused by pressing the key.
+                    85 ;----------------------------------------------------------------;
+                    86 ;Select Sound1 (for key pressed or barrier) Subroutine
+                    87 ;----------------------------------------------------------------;
0F16                 88 select_sound_barrier::
0F16 F3 00           89 	lda	#00h
0F18 FD 02           90         sta	M_sphptr+2
0F1A F3 0F           91         lda	#>(sound_tab_1)
0F1C FD 01           92         sta	M_sphptr+1
0F1E F3 26           93         lda	#<(sound_tab_1)
0F20 FD 00           94         sta	M_sphptr
0F22 20 00 00        95         call	play_initial        
0F25 24              96         ret
0F26                 97 sound_tab_1::
+                    98 	.include	"barrier.inc"
+                    99 ;end add //04-03-23//
+                   100 ;----------------------------------------------------------------;
+                   101 ;Select Sound2 (for Gameover) Subroutine
+                   102 ;----------------------------------------------------------------;
258B                103 select_sound_gameover::
258B F3 00          104 	lda	#00h
258D FD 02          105         sta	M_sphptr+2
258F F3 25          106         lda	#>(sound_tab_2)
2591 FD 01          107         sta	M_sphptr+1
2593 F3 9B          108         lda	#<(sound_tab_2)
2595 FD 00          109         sta	M_sphptr
2597 20 00 00       110         call	play_initial
259A 24             111         ret
259B                112 sound_tab_2::
+                   113 	.include	"gameover.inc"
+                   114 ;end add //04-07-1//
+                   115 ;----------------------------------------------------------------;
+                   116 ;Select Sound3 (for fail) Subroutine
+                   117 ;----------------------------------------------------------------;
5CBE                118 select_sound_fail::
5CBE F3 00          119 	lda	#00h
5CC0 FD 02          120         sta	M_sphptr+2
5CC2 F3 5C          121         lda	#>(sound_tab_3)
5CC4 FD 01          122         sta	M_sphptr+1
5CC6 F3 CE          123         lda	#<(sound_tab_3)
5CC8 FD 00          124         sta	M_sphptr        
5CCA 20 00 00       125         call	play_initial
5CCD 24             126         ret
5CCE                127 sound_tab_3::
+                   128 	.include	"fail.inc"
+                   129 ;end add //04-07-2//
+
+Symbol Table
+
+    M_sphptr                           **** GX
+    M_stopbit                          **** GX
+    c_dly_r_f                       =  0010 
+    c_pwmc                          =  00F7 
+    c_voc                           =  0006 
+  0 play_initial                       0000 R
+  0 select_sound_barrier               0F16 GR
+  0 select_sound_fail                  5CBE GR
+  0 select_sound_gameover              258B GR
+  0 select_sound_normal                000D GR
+  0 sound_tab                          001D GR
+  0 sound_tab_1                        0F26 GR
+  0 sound_tab_2                        259B GR
+  0 sound_tab_3                        5CCE GR
+
+
+Area Table
+
+   0 .                                  size 7DC9   flags 0

⌨️ 快捷键说明

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