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

📄 m_jcode.asl

📁 一款KingB公司的语音编码解码程序
💻 ASL
📖 第 1 页 / 共 2 页
字号:
+                   184 ;       function : dummy_loop()
+                   185 ;
+                   186 ;------------------------------------------
0073                187 dummy_loop:
0073 02 00 76       188         br      dummy_loop0
0076                189 dummy_loop0:
0076 02 00 79       190         br      dummy_loop1
0079                191 dummy_loop1:
0079 24             192         ret
+                   193 
+                   194 ;------------------------------------------------------
+                   195 ;
+                   196 ;       function : turn on voc and play_head
+                   197 ;
+                   198 ;------------------------------------------------------
007A                199 on_voc_head:
007A F3 00          200         lda     #00h
007C FC 34          201         sta     r_pwmc
007E F3 06          202         lda     #06h
0080 FC 48          203         sta     r_voc           ;on pwm, d/a
0082 F3 87          204         lda     #87h
0084 FC 34          205         sta     r_pwmc
0086 20 00 1F       206 	call	play_head
0089 F3 F7          207         lda     #0f7h
008B FC 34          208         sta     r_pwmc
008D 24             209         ret
+                   210 
+                   211 ;------------------------------------------------------
+                   212 ;
+                   213 ;       function : turn off voc and play_tail
+                   214 ;
+                   215 ;------------------------------------------------------
008E                216 off_voc_tail:
008E F3 87          217         lda     #087h
0090 FC 34          218         sta     r_pwmc
0092 20 00 48       219         call	play_tail
0095 F3 00          220         lda     #00H         
0097 FC 48          221         sta     r_voc
0099 F3 80          222         lda     #080h
009B FC 34          223         sta     r_pwmc
009D 24             224         ret
+                   225 
+                   226 ;-----------------------------------------------------------------------------
+                   227 ;
+                   228 ;       main program
+                   229 ;
+                   230 ;-----------------------------------------------------------------------------
009E                231 main:
009E F3 00          232         lda     #0
00A0 FC 28          233         sta     r_pp
00A2 FC 21          234         sta     r_dp
00A4                235 clr_loop:
00A4 F3 00          236         lda     #0
00A6 FE             237         sta     i
00A7 F0 21          238         lda     r_dp
00A9 A7 7F          239         cmpe    #07fh
00AB 06 00 B2       240         brz     clr_end
00AE 18             241         incdp
00AF 02 00 A4       242         br      clr_loop
00B2                243 clr_end:
+                   244 ;setup i/o port
00B2 F3 FF          245         lda     #0ffh           ;set port c and port d be high (i/p).
00B4 FC 31          246         sta     r_prtc
00B6 FC 32          247         sta     r_prtd
00B8 F3 7F          248         lda     #07fh           ;set sp to 7fh
00BA FC 18          249         sta     r_sp
+                   250 ;---------------------------------------------------------------------------
+                   251 ;
+                   252 ; demo mode
+                   253 ;
+                   254 ;---------------------------------------------------------------------------
00BC                255 demo_d80:
00BC F0 32          256         lda     r_prtd
00BE A7 FF          257         cmpe    #0ffh
00C0 06 00 BC       258         brz     demo_d80
00C3                259 play_voice:
00C3 F3 FF          260         lda     #0ffh
00C5 FD 05          261         sta     b_talk_end
+                   262 
00C7 20 00 7A       263         call    on_voc_head   ;on voc and play head
+                   264 
+                   265 ;setup the speech pointer
00CA F3 FE          266         lda     #<v1
00CC FD 02          267         sta     speechlow
00CE F3 00          268         lda     #>v1
00D0 FD 03          269         sta     speechhigh
00D2 F3 00          270         lda     #00h         
00D4 FD 04          271         sta     speechtpp
00D6 20 00 00       272         call    .tc_int      ;initialize the jcode1 algorithm RAM
+                   273 
+                   274 ;setup tc2 counter for 8khz
00D9 F3 01          275         lda     #>t8ksample
00DB FC 14          276         sta     r_t2h
00DD F3 4C          277         lda     #<t8ksample
00DF FC 12          278         sta     r_t2l
+                   279 
00E1 F3 18          280         lda     #00011000b      ;normal, fast clock, enable INT,
+                   281                                 ;use TC2, use TC1 , z=0, c=0
00E3 FC 22          282         sta     r_op1
+                   283 
00E5 F3 02          284         lda     #00000010b      ;enable tc2
00E7 FC 04          285         sta     r_ier
+                   286 
+                   287 ;loop until voice end
00E9                288 demo_voice_loop:
00E9 F1 05          289         lda     b_talk_end      ;00=>play, 0ffh=>stop
00EB A7 00          290         cmpe    #0
00ED 06 00 E9       291         brz     demo_voice_loop
+                   292 
+                   293 ;voice end
00F0 F3 00          294         lda     #00000000b      ;off TC2, off TC1 , z=0, c=0
00F2 FC 22          295         sta     r_op1
+                   296 
00F4 F3 00          297         lda     #00000000b      ;disable tc2
00F6 FC 04          298         sta     r_ier
+                   299 
00F8 20 00 8E       300         call    off_voc_tail   ;off voc and play tail
00FB 02 00 BC       301         br      demo_d80
+                   302 
+                   303 ;------------------------------------
+                   304 ;
+                   305 ;       END OF PROGRAM
+                   306 ;
+                   307 ;------------------------------------
+                   308 
00FE                309 v1:
+                   310         .include        "8khvo.inc"
+                   311 
+                   312 
+
+Symbol Table
+
+  2 .STARTUP                           0012 GR
+    .tc_int                            **** GX
+    .tc_play                           **** GX
+  1 acc                                0000 R
+  1 b_talk_end                         0005 GR
+  1 b_talk_high                        0010 GR
+  0 clr_end                            00B2 R
+  0 clr_loop                           00A4 R
+  0 demo_d80                           00BC R
+  0 demo_voice_loop                    00E9 R
+  0 dummy_loop                         0073 R
+  0 dummy_loop0                        0076 R
+  0 dummy_loop1                        0079 R
+  0 int1                               0002 R
+  0 int2                               0003 R
+  1 j                                  000F GR
+  1 k                                  000E GR
+  0 main                               009E R
+  1 mirr_flag                          0001 R
+  0 off_voc_tail                       008E R
+  0 on_voc_head                        007A R
+  1 p_voice                            000B GR
+    pcm_end_code                    =  00FF 
+  0 play_head                          001F R
+  0 play_head_ed                       0047 R
+  0 play_head_l0                       0021 R
+  0 play_tail                          0048 R
+  0 play_voice                         00C3 R
+  1 q_index                            000C GR
+  1 s_data                             000D GR
+    silence_level                   =  0040 
+  1 speechhigh                         0003 GR
+  1 speechlow                          0002 GR
+  1 speechtpp                          0004 GR
+    t8ksample                       =  014C 
+  0 tc1                                0000 R
+  0 tc2                                0004 R
+  0 tc2_ret                            0018 R
+  0 ttrap1                             0001 R
+  0 v1                                 00FE R
+  1 v_int_tph                          0008 GR
+  1 v_int_tpl                          0007 GR
+  1 v_talk_data                        0009 GR
+  1 voice                              0006 GR
+  1 x                                  000A GR
+
+
+Area Table
+
+   0 CODE                               size 4E06   flags 0
+   1 DATA                               size   11   flags 1C
+   2 RCODE                              size   12   flags C

⌨️ 快捷键说明

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