📄 ui_director_rec2.lst
字号:
208 //ClearScreen(NULL);
209 ///-SetTextOutMode(1);
210 SetBackgdColor(0x0000df1c);
\ 021C 010000 LD BC,0
\ 021F 111CDF LD DE,57116
\ 0222 CD0000 CALL LWRD SetBackgdColor
211 ResShowPic(MENUTWO1,0,0);
\ 0225 0E00 LD C,0
\ 0227 C5 PUSH BC
\ 0228 11C400 LD DE,196
\ 022B CD6003 CALL LWRD ?0068
\ 022E F1 POP AF
212 SetPenColor(Color_BLACK_def);
\ 022F 010000 LD BC,0
\ 0232 59 LD E,C
\ 0233 50 LD D,B
\ 0234 CD0000 CALL LWRD SetPenColor
213 if(!Disk) //主盘目录
\ 0237 AF XOR A
\ 0238 DDB60C OR (IX+12)
\ 023B 0E01 LD C,1
\ 023D C5 PUSH BC
\ 023E 0EFF LD C,255
\ 0240 C5 PUSH BC
\ 0241 DD4E0A LD C,(IX+10)
\ 0244 2005 JR NZ,?0024
\ 0246 ?0023:
214 ResShowMultiString(VSTOPM1,string_id, 255, 1);
\ 0246 117902 LD DE,633
\ 0249 1803 JR ?0060
215 else
\ 024B ?0024:
216 ResShowMultiString(VSTOPM2,string_id, 255, 1);
\ 024B 117A02 LD DE,634
\ 024E ?0060:
\ 024E 3E00 LD A,BYTE3 ResShowMultiString
\ 0250 210000 LD HL,LWRD ResShowMultiString
\ 0253 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0256 F1 POP AF
\ 0257 F1 POP AF
\ 0258 ?0025:
217 SetBackgdColor(Color_MENU_def);
\ 0258 010000 LD BC,0
\ 025B 11FFFF LD DE,65535
\ 025E CD0000 CALL LWRD SetBackgdColor
218 ///-SetTextOutMode(0);
219
220 for(i=top;i<=bottom;i++)
\ 0261 DD46FC LD B,(IX-4)
\ 0264 DD70FB LD (IX-5),B
\ 0267 ?0027:
\ 0267 DD7EFE LD A,(IX-2)
\ 026A DDBEFB CP (IX-5)
\ 026D DA2703 JP C,?0026
\ 0270 ?0028:
221 {
222 if(i==active)
\ 0270 DD7EFB LD A,(IX-5)
\ 0273 DDBE08 CP (IX+8)
\ 0276 201C JR NZ,?0031
\ 0278 ?0030:
223 {
224 ResShowPic(FILEBCK, 12, menu_pos[i-top]-1);
\ 0278 DD4EFC LD C,(IX-4)
\ 027B 0600 LD B,0
\ 027D 60 LD H,B
\ 027E 6F LD L,A
\ 027F A7 AND A
\ 0280 ED42 SBC HL,BC
\ 0282 010000 LD BC,menu_pos
\ 0285 09 ADD HL,BC
\ 0286 7E LD A,(HL)
\ 0287 C6FF ADD A,255
\ 0289 4F LD C,A
\ 028A C5 PUSH BC
\ 028B CD5B03 CALL LWRD ?0069
\ 028E F1 POP AF
225 SetPenColor(Color_WHITE_def);
\ 028F CD6803 CALL LWRD ?0070
226 SetBackgdColor(0x00003358);
\ 0292 180E JR ?0061
227 }
228 else
\ 0294 ?0031:
229 {
230 SetPenColor(Color_BLACK_def);
\ 0294 010000 LD BC,0
\ 0297 59 LD E,C
\ 0298 50 LD D,B
\ 0299 CD0000 CALL LWRD SetPenColor
231 SetBackgdColor(Color_MENU_def);
\ 029C 010000 LD BC,0
\ 029F 11FFFF LD DE,65535
\ 02A2 ?0061:
\ 02A2 CD0000 CALL LWRD SetBackgdColor
\ 02A5 ?0032:
232 }
233
234 output8(0x4e,input8(0x4e) | 0x08);
\ 02A5 DB4E IN A,(78)
\ 02A7 CBDF SET 3,A
\ 02A9 D34E OUT (78),A
235 TransOneRecord(&temp_record,&OnePageRecord[i-top]); //将idm中记录数据读取到temp_record中
\ 02AB DD4EFC LD C,(IX-4)
\ 02AE 0600 LD B,0
\ 02B0 60 LD H,B
\ 02B1 DD6EFB LD L,(IX-5)
\ 02B4 A7 AND A
\ 02B5 ED42 SBC HL,BC
\ 02B7 4D LD C,L
\ 02B8 44 LD B,H
\ 02B9 114B00 LD DE,75
\ 02BC CD0000 CALL LWRD ?S_MUL_L02
\ 02BF 210000 LD HL,OnePageRecord
\ 02C2 19 ADD HL,DE
\ 02C3 4D LD C,L
\ 02C4 44 LD B,H
\ 02C5 110000 LD DE,temp_record
\ 02C8 3E00 LD A,BYTE3 TransOneRecord
\ 02CA 21CC00 LD HL,LWRD TransOneRecord
\ 02CD CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
236 if(temp_record.filetype==TYPE_FILE)
\ 02D0 3A0000 LD A,(temp_record)
\ 02D3 3D DEC A
\ 02D4 201B JR NZ,?0034
\ 02D6 ?0033:
237 ResShowPic(MFILE,0,menu_pos[i-top]+2);
\ 02D6 DD4EFC LD C,(IX-4)
\ 02D9 47 LD B,A
\ 02DA 60 LD H,B
\ 02DB DD6EFB LD L,(IX-5)
\ 02DE A7 AND A
\ 02DF ED42 SBC HL,BC
\ 02E1 010000 LD BC,menu_pos
\ 02E4 09 ADD HL,BC
\ 02E5 7E LD A,(HL)
\ 02E6 C602 ADD A,2
\ 02E8 4F LD C,A
\ 02E9 C5 PUSH BC
\ 02EA 0E00 LD C,0
\ 02EC 11C600 LD DE,198
\ 02EF 181A JR ?0062
\ 02F1 ?0034:
238 else if(temp_record.filetype==TYPE_DIR)
\ 02F1 3A0000 LD A,(temp_record)
\ 02F4 B7 OR A
\ 02F5 2018 JR NZ,?0037
\ 02F7 ?0036:
239 {
240 ResShowPic(MDIR,0,menu_pos[i-top]);
\ 02F7 DD4EFC LD C,(IX-4)
\ 02FA 47 LD B,A
\ 02FB 60 LD H,B
\ 02FC DD6EFB LD L,(IX-5)
\ 02FF ED42 SBC HL,BC
\ 0301 010000 LD BC,menu_pos
\ 0304 09 ADD HL,BC
\ 0305 4E LD C,(HL)
\ 0306 C5 PUSH BC
\ 0307 4F LD C,A
\ 0308 11AF00 LD DE,175
\ 030B ?0062:
\ 030B CD6003 CALL LWRD ?0068
\ 030E F1 POP AF
\ 030F ?0037:
\ 030F ?0035:
241 }
242 SetTextPos(12, menu_pos[i-top]);
\ 030F DD4EFC LD C,(IX-4)
\ 0312 0600 LD B,0
\ 0314 60 LD H,B
\ 0315 DD6EFB LD L,(IX-5)
\ 0318 A7 AND A
\ 0319 ED42 SBC HL,BC
\ 031B 010000 LD BC,menu_pos
243 PutS(temp_record.longname,-1);
\ 031E CD7803 CALL LWRD ?0072
\ 0321 DD34FB INC (IX-5)
244 }
245
246 }
\ 0324 C36702 JP LWRD ?0027
\ 0327 ?0026:
\ 0327 ?0022:
247
248 SetPenColor(Color_BLACK_def); //Jerry Xie Add for test
\ 0327 010000 LD BC,0
\ 032A 59 LD E,C
\ 032B 50 LD D,B
\ 032C CD0000 CALL LWRD SetPenColor
249 }
\ 032F DDF9 LD SP,IX
\ 0331 DDE1 POP IX
\ 0333 C30000 JP LWRD ?BANK_FAST_LEAVE_L08
\ 0336 ?0067:
\ 0336 CD0000 CALL LWRD ?UC_MOD_L01
\ 0339 DD77FA LD (IX-6),A
\ 033C 4F LD C,A
\ 033D 0600 LD B,0
\ 033F 114B00 LD DE,75
\ 0342 CD0000 CALL LWRD ?S_MUL_L02
\ 0345 210000 LD HL,OnePageRecord
\ 0348 19 ADD HL,DE
\ 0349 4D LD C,L
\ 034A 44 LD B,H
\ 034B 110000 LD DE,temp_record
\ 034E 3E00 LD A,BYTE3 TransOneRecord
\ 0350 21CC00 LD HL,LWRD TransOneRecord
\ 0353 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 0356 3A0000 LD A,(temp_record)
\ 0359 3D DEC A
\ 035A C9 RET
\ 035B ?0069:
\ 035B 0E0C LD C,12
\ 035D 112C00 LD DE,44
\ 0360 ?0068:
\ 0360 3E00 LD A,BYTE3 ResShowPic
\ 0362 210000 LD HL,LWRD ResShowPic
\ 0365 C30000 JP LWRD ?BANK_CALL_DIRECT_L08
\ 0368 ?0070:
\ 0368 010000 LD BC,0
\ 036B 11FFFF LD DE,65535
\ 036E CD0000 CALL LWRD SetPenColor
\ 0371 010000 LD BC,0
\ 0374 115833 LD DE,13144
\ 0377 C9 RET
\ 0378 ?0072:
\ 0378 09 ADD HL,BC
\ 0379 4E LD C,(HL)
\ 037A 1E0C LD E,12
\ 037C CD0000 CALL LWRD SetTextPos
\ 037F ?0071:
\ 037F 0EFF LD C,255
\ 0381 111900 LD DE,temp_record+25
\ 0384 C30000 JP LWRD PutS
\ 0387 init_dir_buf:
250
251 //********************************************************************************
252 //* Description :建立快速查询表,目录更新时需要重新调用此函数
253 //*
254 //** Arguments :
255 //*
256 //* Returns :
257 //*
258 //* Notes :
259 //*
260 //********************************************************************************
261 void init_dir_buf(void)
262 {
\ 0387 C5 PUSH BC
\ 0388 D5 PUSH DE
\ 0389 21E0FF LD HL,65504
\ 038C 39 ADD HL,SP
\ 038D F9 LD SP,HL
263 WORD i, tmp, total, wtemp, total_dir;
264 byte dir;
265 char Backbuf[32];
266 BOOL status;
267
268 FS_Backup(Backbuf,FS_BACKUP_DIRINFO,0);//目录项备份
\ 038E 210000 LD HL,0
\ 0391 E5 PUSH HL
\ 0392 0E02 LD C,2
\ 0394 23 INC HL
\ 0395 23 INC HL
\ 0396 39 ADD HL,SP
\ 0397 EB EX DE,HL
\ 0398 CD0000 CALL LWRD FS_Backup
\ 039B E1 POP HL
269 dir_total_num=count_dir_num();
\ 039C 3E00 LD A,BYTE3 count_dir_num
\ 039E 210000 LD HL,LWRD count_dir_num
\ 03A1 CD0000 CALL LWRD ?BANK_CALL_DIRECT_L08
\ 03A4 224B00 LD (dir_total_num),HL
270 list_total_num=dir_total_num+1;
\ 03A7 23 INC HL
\ 03A8 224F00 LD (list_total_num),HL
271
272 FS_Restore(Backbuf,FS_RESTORE_DIRINFO,0);//目录项恢复
\ 03AB 210000 LD HL,0
\ 03AE E5 PUSH HL
\ 03AF 0E02 LD C,2
\ 03B1 23 INC HL
\ 03B2 23 INC HL
\ 03B3 39 ADD HL,SP
\ 03B4 EB EX DE,HL
\ 03B5 CD0000 CALL LWRD FS_Restore
\ 03B8 E1 POP HL
273 }
\ 03B9 212000 LD HL,32
\ 03BC 39 ADD HL,SP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -