📄 ui_delete2.lst
字号:
209 {
210 FSELGetLocation(location);
\ 0393 CDA103 CALL LWRD ?0093
211 return key;
\ 0396 69 LD L,C
\ 0397 60 LD H,B
212 }
\ 0398 ?0065:
\ 0398 DDF9 LD SP,IX
\ 039A DDE1 POP IX
\ 039C FDE1 POP IY
\ 039E C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 03A1 ?0093:
\ 03A1 DD5EFC LD E,(IX-4)
\ 03A4 DD56FD LD D,(IX-3)
\ 03A7 3E00 LD A,BYTE3 fselGetLocation
\ 03A9 210000 LD HL,LWRD fselGetLocation
\ 03AC C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 03AF ?0094:
\ 03AF FDE5 PUSH IY
\ 03B1 D1 POP DE
\ 03B2 CD0000 CALL LWRD ?SS_DIV_L02
\ 03B5 EB EX DE,HL
\ 03B6 29 ADD HL,HL
\ 03B7 4D LD C,L
\ 03B8 44 LD B,H
\ 03B9 29 ADD HL,HL
\ 03BA 09 ADD HL,BC
\ 03BB DD75E6 LD (IX-26),L
\ 03BE DD74E7 LD (IX-25),H
\ 03C1 010500 LD BC,5
\ 03C4 09 ADD HL,BC
\ 03C5 DD75E8 LD (IX-24),L
\ 03C8 DD74E9 LD (IX-23),H
\ 03CB C9 RET
\ 03CC ?0095:
\ 03CC CD0000 CALL LWRD ?SS_DIV_L02
\ 03CF DD73E4 LD (IX-28),E
\ 03D2 DD72E5 LD (IX-27),D
\ 03D5 EB EX DE,HL
\ 03D6 29 ADD HL,HL
\ 03D7 4D LD C,L
\ 03D8 44 LD B,H
\ 03D9 29 ADD HL,HL
\ 03DA 09 ADD HL,BC
\ 03DB DD75E6 LD (IX-26),L
\ 03DE DD74E7 LD (IX-25),H
\ 03E1 C9 RET
\ 03E2 ?0096:
\ 03E2 DD4EE8 LD C,(IX-24)
\ 03E5 DD46E9 LD B,(IX-23)
\ 03E8 ?0097:
\ 03E8 DD5EE6 LD E,(IX-26)
\ 03EB DD56E7 LD D,(IX-25)
\ 03EE 3E00 LD A,BYTE3 ShowFilelist
\ 03F0 210000 LD HL,LWRD ShowFilelist
\ 03F3 C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 03F6 ?0098:
\ 03F6 DD4EE8 LD C,(IX-24)
\ 03F9 DD46E9 LD B,(IX-23)
\ 03FC ?0099:
\ 03FC DD5EE6 LD E,(IX-26)
\ 03FF DD56E7 LD D,(IX-25)
\ 0402 ?0100:
\ 0402 3E00 LD A,BYTE3 reinit_idm_buf_filelist
\ 0404 210000 LD HL,LWRD reinit_idm_buf_filelist
\ 0407 C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 040A ?0064:
\ 040A ?0062:
\ 040A ?0010:
213 } //switch()
214 }// while(1)
215 }
\ 040A draw_del_dir:
216
217 /********************************************************************************
218 /* Description : draw the selector directory.
219 *
220 * Arguments : location :keep the file selector parament
221 string_id :display language type
222 * Returns :
223 *
224 * Notes :
225 *
226 ********************************************************************************/
227 void draw_del_dir(file_location_t *location, BYTE string_id)
228 {
\ 040A FDE5 PUSH IY
\ 040C DDE5 PUSH IX
\ 040E DD210000 LD IX,0
\ 0412 DD39 ADD IX,SP
\ 0414 C5 PUSH BC
\ 0415 21D6FF LD HL,65494
\ 0418 39 ADD HL,SP
\ 0419 F9 LD SP,HL
\ 041A D5 PUSH DE
\ 041B FDE1 POP IY
229 char Longnamebuf_del[31];
230 char buf[5];
231 BYTE NameNum,Cardflag=0;
232
233 DC oldDC_sav;
234 GetDCStatus(&oldDC_sav);
\ 041D EB EX DE,HL
\ 041E CD0000 CALL LWRD GetDCStatus
235
236
237 ResShowPic(SSBCK,0,0);
\ 0421 1E00 LD E,0
\ 0423 D5 PUSH DE
\ 0424 4B LD C,E
\ 0425 11FE00 LD DE,254
\ 0428 3E00 LD A,BYTE3 ResShowPic
\ 042A 210000 LD HL,LWRD ResShowPic
\ 042D CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0430 F1 POP AF
238 SetPenColor(Color_BLACK_def);
\ 0431 010000 LD BC,0
\ 0434 59 LD E,C
\ 0435 50 LD D,B
\ 0436 CD0000 CALL LWRD SetPenColor
239 ///-SetTextOutMode(1); //设字体透明
240 SetBackgdColor(0x0000df1c);
\ 0439 010000 LD BC,0
\ 043C 111CDF LD DE,57116
\ 043F CD0000 CALL LWRD SetBackgdColor
241 ResShowMultiString(CDELALL,string_id, 255, 100);
\ 0442 0E64 LD C,100
\ 0444 C5 PUSH BC
\ 0445 0EFF LD C,255
\ 0447 C5 PUSH BC
\ 0448 DD4EFE LD C,(IX-2)
\ 044B 113F02 LD DE,575
\ 044E 3E00 LD A,BYTE3 ResShowMultiString
\ 0450 210000 LD HL,LWRD ResShowMultiString
\ 0453 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0456 F1 POP AF
\ 0457 F1 POP AF
242 SetBackgdColor(Color_MENU_def);
\ 0458 010000 LD BC,0
\ 045B 11FFFF LD DE,65535
\ 045E CD0000 CALL LWRD SetBackgdColor
243 ///-SetTextOutMode(0);
244 ResShowPic(DELNO,56,32);
\ 0461 0E20 LD C,32
\ 0463 C5 PUSH BC
\ 0464 0E38 LD C,56
\ 0466 110100 LD DE,1
\ 0469 3E00 LD A,BYTE3 ResShowPic
\ 046B 210000 LD HL,LWRD ResShowPic
\ 046E CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0471 F1 POP AF
245
246
247 if(location->disk == 'H');//Cardflag=DIRROOT-DIRCARD;
\ 0472 ?0066:
\ 0472 ?0067:
248 else if(location->disk != 'C')ASSERT(FALSE);
\ 0472 ?0069:
\ 0472 ?0070:
\ 0472 ?0068:
249 if(location->path[0] == ':') //根目录显示
\ 0472 FD7E0E LD A,(IY+14)
\ 0475 FE3A CP 58
\ 0477 283F JR Z,?0076
\ 0479 ?0071:
250 {
251 }
252 else //子目录显示,会获取子目录的长名
\ 0479 ?0072:
253 {
254
255 memset(Longnamebuf_del,0x00,31);
\ 0479 011F00 LD BC,31
\ 047C 210A00 LD HL,10
\ 047F 39 ADD HL,SP
\ 0480 EB EX DE,HL
\ 0481 68 LD L,B
\ 0482 CD0000 CALL LWRD ?MEMSET_L11
256 memcpy(Longnamebuf_del,location->path,11);
\ 0485 210A00 LD HL,10
\ 0488 39 ADD HL,SP
\ 0489 EB EX DE,HL
\ 048A 210E00 LD HL,14
\ 048D FDE5 PUSH IY
\ 048F C1 POP BC
\ 0490 09 ADD HL,BC
\ 0491 010B00 LD BC,11
\ 0494 EDB0 LDIR
257 NameNum=FS_GetName(Longnamebuf_del,14);
\ 0496 0E0E LD C,14
\ 0498 210A00 LD HL,10
\ 049B 39 ADD HL,SP
\ 049C EB EX DE,HL
\ 049D CD0000 CALL LWRD FS_GetName
258 if(NameNum!=0)
\ 04A0 B7 OR A
\ 04A1 2015 JR NZ,?0076
\ 04A3 ?0074:
259 {
260 }
261 else
\ 04A3 ?0075:
262 {
263 FS_CD("\\");
\ 04A3 110000 LD DE,?0077
\ 04A6 CD0000 CALL LWRD FS_CD
264 FS_SetCurDir(location->ClusterNo);
\ 04A9 FD4E0B LD C,(IY+11)
\ 04AC FD460C LD B,(IY+12)
\ 04AF FD5E09 LD E,(IY+9)
\ 04B2 FD560A LD D,(IY+10)
\ 04B5 CD0000 CALL LWRD FS_SetCurDir
\ 04B8 ?0076:
\ 04B8 ?0073:
265 }
266 }
267 FS_CD(location->path); //CD到删除所在目录
\ 04B8 210E00 LD HL,14
\ 04BB FDE5 PUSH IY
\ 04BD C1 POP BC
\ 04BE 09 ADD HL,BC
\ 04BF EB EX DE,HL
\ 04C0 CD0000 CALL LWRD FS_CD
268
269
270 // SetAsciiFont(FONT_TYPE_SMALL);
271 SetPenColor(oldDC_sav.PenColor);
\ 04C3 DD4ED6 LD C,(IX-42)
\ 04C6 DD46D7 LD B,(IX-41)
\ 04C9 DD5ED4 LD E,(IX-44)
\ 04CC DD56D5 LD D,(IX-43)
\ 04CF CD0000 CALL LWRD SetPenColor
272 SetBackgdColor(oldDC_sav.BackgdColor);
\ 04D2 210400 LD HL,4
\ 04D5 39 ADD HL,SP
\ 04D6 5E LD E,(HL)
\ 04D7 23 INC HL
\ 04D8 56 LD D,(HL)
\ 04D9 23 INC HL
\ 04DA 4E LD C,(HL)
\ 04DB 23 INC HL
\ 04DC 46 LD B,(HL)
\ 04DD CD0000 CALL LWRD SetBackgdColor
273 }
\ 04E0 C39803 JP LWRD ?0065
\ 0000 RSEG CSTR
\ 0000 ?0077:
\ 0000 5C00 DEFB 92,0
\ 0002 END
Errors: none
Warnings: none
Code size: 1251
Constant size: 2
Static variable size: Data(0) Iram(0)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -