📄 ui_delete2.lst
字号:
\ 0389 D1 POP DE
\ 038A CD0000 CALL LWRD ?SS_DIV_L02
\ 038D EB EX DE,HL
\ 038E 29 ADD HL,HL
\ 038F 4D LD C,L
\ 0390 44 LD B,H
\ 0391 29 ADD HL,HL
\ 0392 09 ADD HL,BC
\ 0393 DD75E6 LD (IX-26),L
\ 0396 DD74E7 LD (IX-25),H
\ 0399 010500 LD BC,5
\ 039C 09 ADD HL,BC
\ 039D DD75E8 LD (IX-24),L
\ 03A0 DD74E9 LD (IX-23),H
\ 03A3 C9 RET
\ 03A4 ?0092:
\ 03A4 CD0000 CALL LWRD ?SS_DIV_L02
\ 03A7 DD73E4 LD (IX-28),E
\ 03AA DD72E5 LD (IX-27),D
\ 03AD EB EX DE,HL
\ 03AE 29 ADD HL,HL
\ 03AF 4D LD C,L
\ 03B0 44 LD B,H
\ 03B1 29 ADD HL,HL
\ 03B2 09 ADD HL,BC
\ 03B3 DD75E6 LD (IX-26),L
\ 03B6 DD74E7 LD (IX-25),H
\ 03B9 C9 RET
\ 03BA ?0093:
\ 03BA DD4EE8 LD C,(IX-24)
\ 03BD DD46E9 LD B,(IX-23)
\ 03C0 ?0094:
\ 03C0 DD5EE6 LD E,(IX-26)
\ 03C3 DD56E7 LD D,(IX-25)
\ 03C6 3E00 LD A,BYTE3 ShowFilelist
\ 03C8 210000 LD HL,LWRD ShowFilelist
\ 03CB C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 03CE ?0095:
\ 03CE DD4EE8 LD C,(IX-24)
\ 03D1 DD46E9 LD B,(IX-23)
\ 03D4 ?0096:
\ 03D4 DD5EE6 LD E,(IX-26)
\ 03D7 DD56E7 LD D,(IX-25)
\ 03DA ?0097:
\ 03DA 3E00 LD A,BYTE3 reinit_idm_buf_filelist
\ 03DC 210000 LD HL,LWRD reinit_idm_buf_filelist
\ 03DF C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 03E2 ?0061:
\ 03E2 ?0059:
\ 03E2 ?0010:
214 } //switch()
215 }// while(1)
216 }
\ 03E2 draw_del_dir:
217
218 /********************************************************************************
219 /* Description : draw the selector directory.
220 *
221 * Arguments : location :keep the file selector parament
222 string_id :display language type
223 * Returns :
224 *
225 * Notes :
226 *
227 ********************************************************************************/
228 void draw_del_dir(file_location_t *location, BYTE string_id)
229 {
\ 03E2 FDE5 PUSH IY
\ 03E4 DDE5 PUSH IX
\ 03E6 DD210000 LD IX,0
\ 03EA DD39 ADD IX,SP
\ 03EC C5 PUSH BC
\ 03ED 21D6FF LD HL,65494
\ 03F0 39 ADD HL,SP
\ 03F1 F9 LD SP,HL
\ 03F2 D5 PUSH DE
\ 03F3 FDE1 POP IY
230 char Longnamebuf_del[31];
231 char buf[5];
232 BYTE NameNum,Cardflag=0;
233
234 DC oldDC_sav;
235
236 GetDCStatus(&oldDC_sav);
\ 03F5 EB EX DE,HL
\ 03F6 CD0000 CALL LWRD GetDCStatus
237 SetPenColor(Color_WHITE_def);
\ 03F9 010000 LD BC,0
\ 03FC 11FFFF LD DE,65535
\ 03FF CD0000 CALL LWRD SetPenColor
238 SetTextOutMode(1); //设字体透明
\ 0402 1E01 LD E,1
\ 0404 CD0000 CALL LWRD SetTextOutMode
239
240 // SetAsciiFont(FONT_TYPE_LARGE); //ASCII码用大字体
241
242 ResShowPic(SSBCK,0,0);
\ 0407 0E00 LD C,0
\ 0409 C5 PUSH BC
\ 040A 11DD00 LD DE,221
\ 040D 3E00 LD A,BYTE3 ResShowPic
\ 040F 210000 LD HL,LWRD ResShowPic
\ 0412 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0415 F1 POP AF
243 ResShowMultiString(CDELALL,string_id, list_str_x_def, list_str_y_def);
\ 0416 0E94 LD C,148
\ 0418 C5 PUSH BC
\ 0419 0E16 LD C,22
\ 041B C5 PUSH BC
\ 041C DD4EFE LD C,(IX-2)
\ 041F 111401 LD DE,276
\ 0422 3E00 LD A,BYTE3 ResShowMultiString
\ 0424 210000 LD HL,LWRD ResShowMultiString
\ 0427 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 042A F1 POP AF
\ 042B F1 POP AF
244 ResShowPic(DELNO,78,60);
\ 042C 0E3C LD C,60
\ 042E C5 PUSH BC
\ 042F 0E4E LD C,78
\ 0431 110100 LD DE,1
\ 0434 3E00 LD A,BYTE3 ResShowPic
\ 0436 210000 LD HL,LWRD ResShowPic
\ 0439 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 043C F1 POP AF
245 //ResShowPic(MDIR,10,95);
246 // SetTextPos(32,95);
247 // SetPenColor(Color_WHITE_def);
248
249
250 if(location->disk == 'H');//Cardflag=DIRROOT-DIRCARD;
\ 043D ?0063:
\ 043D ?0064:
251 else if(location->disk != 'C')ASSERT(FALSE);
\ 043D ?0066:
\ 043D ?0067:
\ 043D ?0065:
252
253 // SetAsciiFont(FONT_TYPE_LARGE);
254
255 if(location->path[0] == ':') //根目录显示
\ 043D FD7E0E LD A,(IY+14)
\ 0440 FE3A CP 58
\ 0442 283F JR Z,?0073
\ 0444 ?0068:
256 {
257
258 // strcpy(buf, "ROOT");
259 // buf[4] = 0x00;
260 //PutS(buf, -1);
261 }
262 else //子目录显示,会获取子目录的长名
\ 0444 ?0069:
263 {
264
265 memset(Longnamebuf_del,0x00,31);
\ 0444 011F00 LD BC,31
\ 0447 210A00 LD HL,10
\ 044A 39 ADD HL,SP
\ 044B EB EX DE,HL
\ 044C 68 LD L,B
\ 044D CD0000 CALL LWRD ?MEMSET_L11
266 memcpy(Longnamebuf_del,location->path,11);
\ 0450 210A00 LD HL,10
\ 0453 39 ADD HL,SP
\ 0454 EB EX DE,HL
\ 0455 210E00 LD HL,14
\ 0458 FDE5 PUSH IY
\ 045A C1 POP BC
\ 045B 09 ADD HL,BC
\ 045C 010B00 LD BC,11
\ 045F EDB0 LDIR
267 NameNum=FS_GetName(Longnamebuf_del,14);
\ 0461 0E0E LD C,14
\ 0463 210A00 LD HL,10
\ 0466 39 ADD HL,SP
\ 0467 EB EX DE,HL
\ 0468 CD0000 CALL LWRD FS_GetName
268 if(NameNum!=0)
\ 046B B7 OR A
\ 046C 2015 JR NZ,?0073
\ 046E ?0071:
269 {
270 // unitochar(Longnamebuf_del,NameNum*2+2,string_id);
271 //PutS(Longnamebuf_del,-1);
272 }
273 else
\ 046E ?0072:
274 {
275 FS_CD("\\");
\ 046E 110000 LD DE,?0074
\ 0471 CD0000 CALL LWRD FS_CD
276 // NameNum=FS_GetName(Longnamebuf_del,14);
277 // if (NameNum != 0)
278 // {
279 // unitochar(Longnamebuf_del,NameNum*2+2,string_id);
280 //PutS(Longnamebuf_del,-1);
281 // }
282 // else
283 //PutS(location->path, 11);
284 FS_SetCurDir(location->ClusterNo);
\ 0474 FD4E0B LD C,(IY+11)
\ 0477 FD460C LD B,(IY+12)
\ 047A FD5E09 LD E,(IY+9)
\ 047D FD560A LD D,(IY+10)
\ 0480 CD0000 CALL LWRD FS_SetCurDir
\ 0483 ?0073:
\ 0483 ?0070:
285 }
286 }
287 FS_CD(location->path); //CD到删除所在目录
\ 0483 210E00 LD HL,14
\ 0486 FDE5 PUSH IY
\ 0488 C1 POP BC
\ 0489 09 ADD HL,BC
\ 048A EB EX DE,HL
\ 048B CD0000 CALL LWRD FS_CD
288
289
290 // SetAsciiFont(FONT_TYPE_SMALL);
291
292 SetTextOutMode(0); //设字体不透明
\ 048E 1E00 LD E,0
\ 0490 CD0000 CALL LWRD SetTextOutMode
293 SetPenColor(oldDC_sav.PenColor);
\ 0493 DD4ED6 LD C,(IX-42)
\ 0496 DD46D7 LD B,(IX-41)
\ 0499 DD5ED4 LD E,(IX-44)
\ 049C DD56D5 LD D,(IX-43)
\ 049F CD0000 CALL LWRD SetPenColor
294 SetBackgdColor(oldDC_sav.BackgdColor);
\ 04A2 210400 LD HL,4
\ 04A5 39 ADD HL,SP
\ 04A6 5E LD E,(HL)
\ 04A7 23 INC HL
\ 04A8 56 LD D,(HL)
\ 04A9 23 INC HL
\ 04AA 4E LD C,(HL)
\ 04AB 23 INC HL
\ 04AC 46 LD B,(HL)
\ 04AD CD0000 CALL LWRD SetBackgdColor
295
296 }
\ 04B0 C37003 JP LWRD ?0062
297
\ 0000 RSEG CSTR
\ 0000 ?0074:
\ 0000 5C00 DEFB 92,0
\ 0002 END
Errors: none
Warnings: none
Code size: 1203
Constant size: 2
Static variable size: Data(0) Iram(0)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -