📄 speech.lst
字号:
00009AC6 40 F0 52 9A call _T_SACM_DVR1600_ServiceLoop // [0:87] T_SACM_DVR1600_ServiceLoop
BB5_PU1: // 0x56
// BB:5 cycle count: 28
// .loc 0 88 0
// 88 bit_exit++;
LM13:
00009AC8 01 98 R4 = [BP + 1] // [0:88] bit_exit
00009AC9 41 08 R4 = R4 + 1 // [6:88]
00009ACA 01 D8 [BP + 1] = R4 // [8:88] bit_exit
// .loc 0 89 0
// 89 if(bit_exit == 65000)
LM14:
00009ACB 01 98 R4 = [BP + 1] // [14:89] bit_exit
00009ACC 0C 49 E8 FD cmp R4, 65000 // [20:89]
00009ACE 03 4E jne L_1_3 // [24:89]
BB6_PU1: // 0x5d
// BB:6 cycle count: 14
// .loc 0 90 0
// 90 key_value++;
LM15:
00009ACF 00 98 R4 = [BP + 0] // [0:90] key_value
00009AD0 41 08 R4 = R4 + 1 // [6:90]
00009AD1 00 D8 [BP + 0] = R4 // [8:90] key_value
L_1_3: // 0x60
// BB:7 cycle count: 9
// .loc 0 91 0
// 91 FillRamBuf(); //---手动模式下填写播放内容 入口:无 出口:无
LM16:
00009AD2 40 F0 07 9A call _FillRamBuf // [0:91] FillRamBuf
BB8_PU1: // 0x62
// BB:8 cycle count: 9
// .loc 0 92 0
// 92 T_SACM_DVR1600_Status(); //---在汇编中调用播放状态库函数 返回播放状态
LM17:
00009AD4 40 F0 57 9A call _T_SACM_DVR1600_Status // [0:92] T_SACM_DVR1600_Status
BB9_PU1: // 0x64
// BB:9 cycle count: 4
00009AD6 5A EE jmp L_1_1 // [0:92]
L_1_2: // 0x65
// BB:10 cycle count: 31
// .loc 0 95 0
// 93 }
// 94 //---播放结束后复位一些用到的寄存器
// 95 key_value=toteldata;
LM18:
00009AD7 7F BC SR = SR & 63 // [0:95]
00009AD8 0E AD 00 00 SR = SR | high6 _toteldata // [2:95] toteldata
00009ADA 0C 99 7B 01 R4 = offset _toteldata // [6:95] toteldata
00009ADC E4 98 R4 = DS:[R4] // [10:95]
00009ADD 00 D8 [BP + 0] = R4 // [16:95] key_value
// .loc 0 96 0
// 96 T_Stop_Play();
LM19:
00009ADE 40 F0 E6 99 call _T_Stop_Play // [22:96] T_Stop_Play
BB11_PU1: // 0x6e
// BB:11 cycle count: 16
00009AE0 42 00 SP = SP + 2 // [0:96]
00009AE1 88 98 pop BP from [SP] // [2:96]
00009AE2 90 9A retf // [8:96]
LBE2:
.endp
LME2:
00009AE3 .code
// Program Unit: main
.public _main
_main: .proc
// i = 0
// old_frame_pointer = 1
// return_address = 2
// .loc 0 101 0
// 97 }
// 98
// 99
// 100 int main()
// 101 {
LM20:
BB1_PU2: // 0x71
// BB:1 cycle count: 74
00009AE3 88 DA push BP to [SP] // [0:101]
00009AE4 41 20 SP = SP - 1 // [6:101]
00009AE5 08 0B 01 00 BP = SP + 1 // [8:101]
LBB3:
// .loc 0 103 0
// 102 U16 i;
// 103 VolumeValue=10;
LM21:
00009AE7 4A 96 R3 = 10 // [12:103]
00009AE8 7F BC SR = SR & 63 // [14:103]
00009AE9 0E AD 00 00 SR = SR | high6 _VolumeValue // [16:103] VolumeValue
00009AEB 0C 99 80 01 R4 = offset _VolumeValue // [20:103] VolumeValue
00009AED E4 D6 DS:[R4] = R3 // [24:103]
// .loc 0 104 0
// 104 data1=0;data2=0;
LM22:
00009AEE 40 96 R3 = 0 // [30:104]
00009AEF 7F BC SR = SR & 63 // [32:104]
00009AF0 0E AD 00 00 SR = SR | high6 _data1 // [34:104] data1
00009AF2 0C 99 7C 01 R4 = offset _data1 // [38:104] data1
00009AF4 E4 D6 DS:[R4] = R3 // [42:104]
00009AF5 40 96 R3 = 0 // [48:104]
00009AF6 7F BC SR = SR & 63 // [50:104]
00009AF7 0E AD 00 00 SR = SR | high6 _data2 // [52:104] data2
00009AF9 0C 99 7D 01 R4 = offset _data2 // [56:104] data2
00009AFB E4 D6 DS:[R4] = R3 // [60:104]
// .loc 0 106 0
// 105
// 106 for (i=0;i<57;i++)
LM23:
00009AFC 40 98 R4 = 0 // [66:106]
00009AFD 00 D8 [BP + 0] = R4 // [68:106] i
L_2_2: // 0x8c
// BB:2 cycle count: 12
00009AFE 00 98 R4 = [BP + 0] // [0:106] i
00009AFF 78 48 cmp R4, 56 // [6:106]
00009B00 15 9E ja L_2_3 // [8:106]
BB3_PU2: // 0x8f
// BB:3 cycle count: 53
// .loc 0 108 0
// 107 {
// 108 PlaySpeech(VolumeValue,i);
LM24:
00009B01 42 20 SP = SP - 2 // [0:108]
00009B02 7F BC SR = SR & 63 // [2:108]
00009B03 0E AD 00 00 SR = SR | high6 _VolumeValue // [4:108] VolumeValue
00009B05 0C 99 80 01 R4 = offset _VolumeValue // [8:108] VolumeValue
00009B07 E4 96 R3 = DS:[R4] // [12:108]
00009B08 08 09 01 00 R4 = SP + 1 // [18:108]
00009B0A C4 D6 [R4] = R3 // [22:108]
00009B0B 00 96 R3 = [BP + 0] // [28:108] i
00009B0C 08 09 02 00 R4 = SP + 2 // [34:108]
00009B0E C4 D6 [R4] = R3 // [38:108]
00009B0F 40 F0 A7 9A call _PlaySpeech // [44:108] PlaySpeech
BB4_PU2: // 0x9f
// BB:4 cycle count: 2
00009B11 42 00 SP = SP + 2 // [0:108]
Lt_2_1: // 0xa0
// BB:5 cycle count: 18
// .loc 0 106 0
LM25:
00009B12 00 98 R4 = [BP + 0] // [0:106] i
00009B13 41 08 R4 = R4 + 1 // [6:106]
00009B14 00 D8 [BP + 0] = R4 // [8:106] i
00009B15 58 EE jmp L_2_2 // [14:106]
L_2_3: // 0xa4
// BB:6 cycle count: 35
// .loc 0 111 0
// 109 }
// 110
// 111 PlaySpeech(1,1);
LM26:
00009B16 42 20 SP = SP - 2 // [0:111]
00009B17 41 96 R3 = 1 // [2:111]
00009B18 08 09 01 00 R4 = SP + 1 // [4:111]
00009B1A C4 D6 [R4] = R3 // [8:111]
00009B1B 41 96 R3 = 1 // [14:111]
00009B1C 08 09 02 00 R4 = SP + 2 // [16:111]
00009B1E C4 D6 [R4] = R3 // [20:111]
00009B1F 40 F0 A7 9A call _PlaySpeech // [26:111] PlaySpeech
BB7_PU2: // 0xaf
// BB:7 cycle count: 2
00009B21 42 00 SP = SP + 2 // [0:111]
L_2_4: // 0xb0
// BB:8 cycle count: 4
// .loc 0 112 0
// 112 while(1) ;
LM27:
00009B22 41 EE jmp L_2_4 // [0:112]
L_2_5: // 0xb1
// BB:9 cycle count: 16
00009B23 41 00 SP = SP + 1 // [0:112]
00009B24 88 98 pop BP from [SP] // [2:112]
00009B25 90 9A retf // [8:112]
LBE3:
.endp
LME3:
.external _InilSpeech
.external _T_SACM_DVR1600_Status
.external _T_SACM_DVR1600_ServiceLoop
.external _FillRamBuf
.external _T_Stop_Play
0 error(s), 0 warning(s).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -