ui_playlist2.lst
来自「炬力方案176*132软件源码,适用于AK1025」· LST 代码 · 共 728 行 · 第 1/3 页
LST
728 行
\ 00E7 C32100 JP LWRD ?0040
67 output8(0x05, status);
68 }
\ 00EA ShowPlaylist:
69
70
71 /********************************************************************************
72 * Description : show the directory.
73 *
74 * Arguments :
75 * location: get thedisk type
76 * Invpath: the "\" or name
77 * Namebuf:the string you will display
78 * type : show file kind
79 * string_id: language type
80 * Returns :
81 * other: Successful
82 * 0: Fail, detail information in fselError
83 * Notes : only display the valid directory
84 *
85 ********************************************************************************/
86 void ShowPlaylist(BYTE top,BYTE bottom,BYTE Old_active,BYTE active,char *Longnamebuf,BYTE string_id,BYTE ScrollMode)
87 {
\ 00EA CD0000 CALL LWRD ?ENT_AUTO_DIRECT_L09
\ 00ED FEFF DEFW -2
\ 00EF FDE5 PUSH IY
88
89 int i,tmp;
90 SetAsciiFont(FONT_TYPE_LARGE);
\ 00F1 1E04 LD E,4
\ 00F3 CD0000 CALL LWRD SetAsciiFont
91 ///-SetTextOutMode(1);
92 region_scroll.x=30;
\ 00F6 3E1E LD A,30
\ 00F8 320000 LD (region_scroll),A
93 region_scroll.width=162;
\ 00FB 3EA2 LD A,162
\ 00FD 320200 LD (region_scroll+2),A
94 region_scroll.height=16;
\ 0100 3E10 LD A,16
\ 0102 320300 LD (region_scroll+3),A
95 if(!ScrollMode) //只需要滚动活动的项目
\ 0105 AF XOR A
\ 0106 DDB612 OR (IX+18)
\ 0109 2014 JR NZ,?0015
\ 010B ?0014:
96 {
97 ///-SetTextOutMode(0);
98 SetBackgdColor(Color_BULE_Scroll_def);
\ 010B 4F LD C,A
\ 010C 47 LD B,A
\ 010D CD2303 CALL LWRD ?0041
99 Scroll_PlayList(Longnamebuf, FALSE,string_id,®ion_scroll);
\ 0110 E5 PUSH HL
\ 0111 DD6E10 LD L,(IX+16)
\ 0114 E5 PUSH HL
\ 0115 0E00 LD C,0
\ 0117 CD2F03 CALL LWRD ?0043
\ 011A E1 POP HL
\ 011B E1 POP HL
100 ///-SetTextOutMode(1);
101 }
102 else //需要初始化活动项,判断是否需要滚动
\ 011C C31403 JP LWRD ?0031
\ 011F ?0015:
103 {
104 if(Old_active!=active)
\ 011F DD7E0A LD A,(IX+10)
\ 0122 DDBE0C CP (IX+12)
\ 0125 CAC901 JP Z,?0018
\ 0128 ?0017:
105
106 {
107 //清除旧的活动列表项
108 tmp=Old_active%5;
\ 0128 0605 LD B,5
\ 012A CD3D03 CALL LWRD ?0045
109 ResShowPic(MENUBCK1-tmp ,menu_bck_x_def, menu_pos_list[tmp+1]-4); //分段刷新背景
\ 012D C6FC ADD A,252
\ 012F 5F LD E,A
\ 0130 D5 PUSH DE
\ 0131 0E09 LD C,9
\ 0133 FDE5 PUSH IY
\ 0135 D1 POP DE
\ 0136 21B500 LD HL,181
\ 0139 A7 AND A
\ 013A ED52 SBC HL,DE
\ 013C EB EX DE,HL
\ 013D CD5103 CALL LWRD ?0046
\ 0140 F1 POP AF
110 ResShowPic(DHT,194,8);
\ 0141 0E08 LD C,8
\ 0143 C5 PUSH BC
\ 0144 0EC2 LD C,194
\ 0146 112600 LD DE,38
\ 0149 CD5103 CALL LWRD ?0046
\ 014C F1 POP AF
111 ResShowPic(MFILE, explorer_pic_x_def, menu_pos_list[tmp+1]-1);
\ 014D 210100 LD HL,menu_pos_list+1
\ 0150 FDE5 PUSH IY
\ 0152 C1 POP BC
\ 0153 09 ADD HL,BC
\ 0154 7E LD A,(HL)
\ 0155 C6FF ADD A,255
\ 0157 5F LD E,A
\ 0158 D5 PUSH DE
\ 0159 CD4C03 CALL LWRD ?0047
\ 015C F1 POP AF
112 SetTextPos(explorer_str_x_def, menu_pos_list[tmp+1]-2);
\ 015D 210100 LD HL,menu_pos_list+1
\ 0160 FDE5 PUSH IY
\ 0162 C1 POP BC
\ 0163 CD5903 CALL LWRD ?0048
113 read_idm_data_playlist(Longnamebuf,tmp);
\ 0166 CD6303 CALL LWRD ?0050
114 SetPenColor(Color_WHITE_def); //取列表名
115 PutS(Longnamebuf, -1);
\ 0169 CD7E03 CALL LWRD ?0051
116
117 //显示当前活动项
118 tmp=active%5;
\ 016C 0605 LD B,5
\ 016E DD7E0C LD A,(IX+12)
\ 0171 CD3D03 CALL LWRD ?0045
119 ResShowPic(MFILE, explorer_pic_x_def, menu_pos_list[tmp+1]-1);
\ 0174 C6FF ADD A,255
\ 0176 5F LD E,A
\ 0177 D5 PUSH DE
\ 0178 CD4C03 CALL LWRD ?0047
\ 017B F1 POP AF
120 ResShowPic(FILEBCK, explorer_str_x_def-2, menu_pos_list[tmp+1]-4);
\ 017C 210100 LD HL,menu_pos_list+1
\ 017F FDE5 PUSH IY
\ 0181 C1 POP BC
\ 0182 09 ADD HL,BC
\ 0183 7E LD A,(HL)
\ 0184 C6FC ADD A,252
\ 0186 5F LD E,A
\ 0187 D5 PUSH DE
\ 0188 0E1E LD C,30
\ 018A 112C00 LD DE,44
\ 018D CD5103 CALL LWRD ?0046
\ 0190 F1 POP AF
121 ResShowPic(DHTHK,194,menu_pos_list[tmp+1]+6);
\ 0191 210100 LD HL,menu_pos_list+1
\ 0194 FDE5 PUSH IY
\ 0196 C1 POP BC
\ 0197 09 ADD HL,BC
\ 0198 7E LD A,(HL)
\ 0199 C606 ADD A,6
\ 019B 5F LD E,A
\ 019C D5 PUSH DE
\ 019D 0EC2 LD C,194
\ 019F 112700 LD DE,39
\ 01A2 CD5103 CALL LWRD ?0046
\ 01A5 F1 POP AF
122 read_idm_data_playlist(Longnamebuf,tmp);
\ 01A6 CD6303 CALL LWRD ?0050
123 SetPenColor(Color_WHITE_def); //取列表名
124 region_scroll.y= menu_pos_list[tmp+1]-2;
\ 01A9 210100 LD HL,menu_pos_list+1
\ 01AC FDE5 PUSH IY
\ 01AE C1 POP BC
125
126 SetBackgdColor(Color_BULE_Scroll_def);
\ 01AF CD1903 CALL LWRD ?0042
127 Scroll_PlayList(Longnamebuf, TRUE,string_id,®ion_scroll);
\ 01B2 E5 PUSH HL
\ 01B3 DD6E10 LD L,(IX+16)
\ 01B6 E5 PUSH HL
\ 01B7 CD2D03 CALL LWRD ?0044
\ 01BA E1 POP HL
\ 01BB E1 POP HL
128 if(strlen(Longnamebuf)<20)
\ 01BC CD8903 CALL LWRD ?0052
\ 01BF 3003 JR NC,?0020
\ 01C1 ?0019:
129 ScrollFlag=0;
\ 01C1 AF XOR A
\ 01C2 1802 JR ?0037
130 else
\ 01C4 ?0020:
131 ScrollFlag=1;
\ 01C4 3E01 LD A,1
\ 01C6 ?0037:
\ 01C6 C31103 JP LWRD ?0038
\ 01C9 ?0021:
132 }
133
134
135 else //if(Old_active==active) 刷新一页屏
\ 01C9 ?0018:
136
137 {
138 ResShowPic(MENUTWO,0,0);
\ 01C9 0E00 LD C,0
\ 01CB C5 PUSH BC
\ 01CC 11C300 LD DE,195
\ 01CF CD5103 CALL LWRD ?0046
\ 01D2 F1 POP AF
139 ResShowPic(DHT,194,8);
\ 01D3 0E08 LD C,8
\ 01D5 C5 PUSH BC
\ 01D6 0EC2 LD C,194
\ 01D8 112600 LD DE,38
\ 01DB CD5103 CALL LWRD ?0046
\ 01DE F1 POP AF
140 SetPenColor(Color_WHITE_def);
\ 01DF CD9903 CALL LWRD ?0053
141 //ResShowMultiString( VSTOPM1,string_id, 3, 110);
142 ResShowPic(MDIR, 10, POSITION_MENU6-4);
\ 01E2 0E73 LD C,115
\ 01E4 C5 PUSH BC
\ 01E5 0E0A LD C,10
\ 01E7 11AF00 LD DE,175
\ 01EA CD5103 CALL LWRD ?0046
\ 01ED F1 POP AF
143 SetTextPos(menu_str_x_def, POSITION_MENU6-2);
\ 01EE 0E75 LD C,117
\ 01F0 CD5E03 CALL LWRD ?0049
144 SetPenColor(Color_WHITE_def);
\ 01F3 CD9903 CALL LWRD ?0053
145 PutS(PlayListFileName, 8); //显示列表名
\ 01F6 0E08 LD C,8
\ 01F8 110000 LD DE,PlayListFileName
\ 01FB CD0000 CALL LWRD PutS
146 for(i=top;i<=bottom;i++)
\ 01FE DD4E02 LD C,(IX+2)
\ 0201 DD71FE LD (IX-2),C
\ 0204 DD36FF00 LD (IX-1),0
\ 0208 ?0024:
\ 0208 DD6E04 LD L,(IX+4)
\ 020B 2600 LD H,0
\ 020D DD4EFE LD C,(IX-2)
\ 0210 DD46FF LD B,(IX-1)
\ 0213 CD0000 CALL LWRD ?SS_CMP_L02
\ 0216 DD4E02 LD C,(IX+2)
\ 0219 44 LD B,H
\ 021A DAD502 JP C,?0023
\ 021D ?0025:
147 {
148 ResShowPic(MFILE,explorer_pic_x_def,menu_pos_list[i-top+1]-1);
\ 021D DD6EFE LD L,(IX-2)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?