autosearchhandle.lst
来自「MP3 整个 SDK」· LST 代码 · 共 1,436 行 · 第 1/5 页
LST
1,436 行
\ 00DF DD46F3 LD B,(IX-13)
\ 00E2 DD6EF0 LD L,(IX-16)
\ 00E5 DD66F1 LD H,(IX-15)
\ 00E8 CD0000 CALL LWRD ?SL_DIV_L03
\ 00EB E5 PUSH HL
\ 00EC FDE1 POP IY
97 h=(i%10)*10;
\ 00EE 010000 LD BC,0
\ 00F1 C5 PUSH BC
\ 00F2 0E0A LD C,10
\ 00F4 C5 PUSH BC
\ 00F5 DD4EF2 LD C,(IX-14)
\ 00F8 DD46F3 LD B,(IX-13)
\ 00FB DD6EF0 LD L,(IX-16)
\ 00FE DD66F1 LD H,(IX-15)
\ 0101 CD0000 CALL LWRD ?SL_MOD_L03
\ 0104 29 ADD HL,HL
\ 0105 4D LD C,L
\ 0106 44 LD B,H
\ 0107 29 ADD HL,HL
\ 0108 29 ADD HL,HL
\ 0109 09 ADD HL,BC
\ 010A DD75FE LD (IX-2),L
98 if(k<100)*itoa_2(k,buf);
\ 010D 016480 LD BC,32868
\ 0110 FDE5 PUSH IY
\ 0112 E1 POP HL
\ 0113 78 LD A,B
\ 0114 AC XOR H
\ 0115 67 LD H,A
\ 0116 ED42 SBC HL,BC
\ 0118 210400 LD HL,4
\ 011B 3011 JR NC,?0006
\ 011D ?0005:
\ 011D 39 ADD HL,SP
\ 011E 4D LD C,L
\ 011F 44 LD B,H
\ 0120 FDE5 PUSH IY
\ 0122 E1 POP HL
\ 0123 5D LD E,L
\ 0124 3E00 LD A,BYTE3 itoa_2
\ 0126 210000 LD HL,LWRD itoa_2
\ 0129 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
99 else
\ 012C 180E JR ?0007
\ 012E ?0006:
100 *itoa_3(k,buf);
\ 012E 39 ADD HL,SP
\ 012F 4D LD C,L
\ 0130 44 LD B,H
\ 0131 FDE5 PUSH IY
\ 0133 D1 POP DE
\ 0134 3E00 LD A,BYTE3 itoa_3
\ 0136 210000 LD HL,LWRD itoa_3
\ 0139 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 013C ?0007:
101 strcpy(Freqtab,buf);
\ 013C 210400 LD HL,4
\ 013F 39 ADD HL,SP
\ 0140 EB EX DE,HL
\ 0141 210000 LD HL,Freqtab
\ 0144 CD0000 CALL LWRD ?STRCPY_L11
102 strcat(Freqtab,":");
\ 0147 110000 LD DE,?0008
\ 014A 210000 LD HL,Freqtab
\ 014D CD0000 CALL LWRD ?STRCAT_L11
103 // strcat(Freqtab,buf);
104 //strcat(Freqtab,".");
105 *itoa_2(h,buf);
\ 0150 210400 LD HL,4
\ 0153 39 ADD HL,SP
\ 0154 4D LD C,L
\ 0155 44 LD B,H
\ 0156 DD5EFE LD E,(IX-2)
\ 0159 3E00 LD A,BYTE3 itoa_2
\ 015B 210000 LD HL,LWRD itoa_2
\ 015E CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
106 buf[1]='\0';
\ 0161 DD36F500 LD (IX-11),0
107 //buf[1]=' ';
108 // buf[2]=0;
109 strcat(Freqtab,buf);
\ 0165 210400 LD HL,4
\ 0168 39 ADD HL,SP
\ 0169 EB EX DE,HL
\ 016A 210000 LD HL,Freqtab
\ 016D CD0000 CALL LWRD ?STRCAT_L11
110 if(FMStatus.mode==0)
\ 0170 3A0500 LD A,(FMStatus+5)
\ 0173 B7 OR A
\ 0174 2A0100 LD HL,(FMStatus+1)
\ 0177 200A JR NZ,?0010
\ 0179 ?0009:
111 {
112 k=(FMStatus.freq-0x53d8)/127;
\ 0179 0128AC LD BC,44072
\ 017C 09 ADD HL,BC
\ 017D EB EX DE,HL
\ 017E 017F00 LD BC,127
\ 0181 1808 JR ?0150
113 }
114 else
\ 0183 ?0010:
115 {
116 k=(FMStatus.freq-0x28e0)/105;
\ 0183 0120D7 LD BC,55072
\ 0186 09 ADD HL,BC
\ 0187 EB EX DE,HL
\ 0188 016900 LD BC,105
\ 018B ?0150:
\ 018B CD0000 CALL LWRD ?US_DIV_L02
\ 018E D5 PUSH DE
\ 018F FDE1 POP IY
\ 0191 ?0011:
117 }
118
119 // ResShowPic(FMHEAD,0,107); //显示界面头部 zxs add
120 if(Updateflag==0)
\ 0191 3A0000 LD A,(Updateflag)
\ 0194 B7 OR A
\ 0195 2014 JR NZ,?0016
\ 0197 ?0012:
121 {
122 if(FMStatus.mode==0)
\ 0197 3A0500 LD A,(FMStatus+5)
\ 019A B7 OR A
\ 019B 48 LD C,B
\ 019C C5 PUSH BC
\ 019D 2005 JR NZ,?0015
\ 019F ?0014:
123 {
124 ResShowPic(FMUSBCK,0,0);
\ 019F 114700 LD DE,71
\ 01A2 1803 JR ?0151
125 // ResShowPic(DWNARROW,11-5+k,32); //显示箭头
126 // ResShowPic(FQBAR,0,40); //显示US频率条
127 }
128 else
\ 01A4 ?0015:
129 {
130 ResShowPic(FMJPBCK,0,0);
\ 01A4 113800 LD DE,56
\ 01A7 ?0151:
\ 01A7 CD3D00 CALL LWRD ?0174
\ 01AA F1 POP AF
\ 01AB ?0016:
\ 01AB ?0013:
131 // ResShowPic(DWNARROW,30-6+k,32); //显示箭头
132 // ResShowPic(FQBAR2,0,40); //显示JP频率条
133 }
134 }
135 ResShowPic(FMVOL,3,160);
\ 01AB 0EA0 LD C,160
\ 01AD C5 PUSH BC
\ 01AE 0E03 LD C,3
\ 01B0 114800 LD DE,72
\ 01B3 CD3D00 CALL LWRD ?0174
\ 01B6 F1 POP AF
136 ui_show_volfm(FMStatus.volume); //显示音量
\ 01B7 ED5B0600 LD DE,(FMStatus+6)
\ 01BB 3E00 LD A,BYTE3 ui_show_volfm
\ 01BD 210000 LD HL,LWRD ui_show_volfm
\ 01C0 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
137 ui_show_batt(GetBattery(),F_comval.BatteryType,1); //电池电量显示
\ 01C3 0E01 LD C,1
\ 01C5 C5 PUSH BC
\ 01C6 ED4B0F00 LD BC,(g_comval+15)
\ 01CA CD0000 CALL LWRD GetBattery
\ 01CD 5F LD E,A
\ 01CE 1600 LD D,0
\ 01D0 3E00 LD A,BYTE3 ui_show_batt
\ 01D2 210000 LD HL,LWRD ui_show_batt
\ 01D5 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 01D8 E1 POP HL
138
139 // UpdateScreen(NULL); //刷新
140 if((FMStatus.station_count>0)&&(FMStatus.station>0)) //显示电台号
\ 01D9 3A0400 LD A,(FMStatus+4)
\ 01DC B7 OR A
\ 01DD 2840 JR Z,?0018
\ 01DF 3A0300 LD A,(FMStatus+3)
\ 01E2 B7 OR A
\ 01E3 283A JR Z,?0018
\ 01E5 ?0020:
\ 01E5 ?0019:
\ 01E5 ?0017:
141 {
142 ResShowPic(FMCH,95,8);
\ 01E5 0E08 LD C,8
\ 01E7 C5 PUSH BC
\ 01E8 CD3800 CALL LWRD ?0173
\ 01EB F1 POP AF
143 itoa_2(FMStatus.station,buf);
\ 01EC 210400 LD HL,4
\ 01EF 39 ADD HL,SP
\ 01F0 4D LD C,L
\ 01F1 44 LD B,H
\ 01F2 ED5B0300 LD DE,(FMStatus+3)
\ 01F6 3E00 LD A,BYTE3 itoa_2
\ 01F8 210000 LD HL,LWRD itoa_2
\ 01FB CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
144 strcpy(FMTab,buf);
\ 01FE 210400 LD HL,4
\ 0201 39 ADD HL,SP
\ 0202 EB EX DE,HL
\ 0203 210800 LD HL,8
\ 0206 39 ADD HL,SP
\ 0207 CD0000 CALL LWRD ?STRCPY_L11
145 ui_show_data(FMTab,114,8);
\ 020A 0E08 LD C,8
\ 020C C5 PUSH BC
\ 020D 0E72 LD C,114
\ 020F 210A00 LD HL,10
\ 0212 39 ADD HL,SP
\ 0213 EB EX DE,HL
\ 0214 3E00 LD A,BYTE3 ui_show_data
\ 0216 210000 LD HL,LWRD ui_show_data
\ 0219 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 021C E1 POP HL
146 }
147 else
\ 021D 180C JR ?0021
\ 021F ?0018:
148 ResShowPic(FMCHBG,95,8);
\ 021F 0E08 LD C,8
\ 0221 C5 PUSH BC
\ 0222 0E5F LD C,95
\ 0224 113500 LD DE,53
\ 0227 CD3D00 CALL LWRD ?0174
\ 022A F1 POP AF
\ 022B ?0021:
149 ResShowPic(FMNUMBG,90,100);
\ 022B 0E64 LD C,100
\ 022D C5 PUSH BC
\ 022E 0E5A LD C,90
\ 0230 114400 LD DE,68
\ 0233 CD3D00 CALL LWRD ?0174
\ 0236 F1 POP AF
150 if(FMStatus.mode==0)
\ 0237 3A0500 LD A,(FMStatus+5)
\ 023A B7 OR A
\ 023B 0E2F LD C,47
\ 023D C5 PUSH BC
\ 023E 2006 JR NZ,?0023
\ 0240 ?0022:
151 {
152 ResShowPic(FMBARBG,0,47);
\ 0240 4F LD C,A
\ 0241 113300 LD DE,51
\ 0244 1805 JR ?0152
153 }
154 else
\ 0246 ?0023:
155 {
156 ResShowPic(FMJPBAR,0,47);
\ 0246 0E00 LD C,0
\ 0248 113700 LD DE,55
\ 024B ?0152:
\ 024B CD3D00 CALL LWRD ?0174
\ 024E F1 POP AF
\ 024F ?0024:
157 }
158
159 if(FMStatus.stereo_status==0)
\ 024F 3A0700 LD A,(FMStatus+7)
\ 0252 B7 OR A
\ 0253 200C JR NZ,?0026
\ 0255 ?0025:
160 {
161 ResShowPic(FMSTEREO,104,162); //显示立体声
\ 0255 0EA2 LD C,162
\ 0257 C5 PUSH BC
\ 0258 0E68 LD C,104
\ 025A 114600 LD DE,70
\ 025D CD3D00 CALL LWRD ?0174
\ 0260 F1 POP AF
\ 0261 ?0026:
162 }
163
164 ui_show_FMdata(Freqtab,90,100);
\ 0261 0E64 LD C,100
\ 0263 C5 PUSH BC
\ 0264 0E5A LD C,90
\ 0266 110000 LD DE,Freqtab
\ 0269 3E00 LD A,BYTE3 ui_show_FMdata
\ 026B 210000 LD HL,LWRD ui_show_FMdata
\ 026E CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0271 E1 POP HL
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?