Rev 7863 | Rev 9461 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 7863 | Rev 7996 | ||
---|---|---|---|
1 | ;------------------------------------------------------------------------------ |
1 | ;------------------------------------------------------------------------------ |
2 | draw_buttons_panel: |
2 | draw_buttons_panel: |
3 | mov ecx,[skin_high] |
3 | mov ecx,[skin_high] |
4 | add ecx,19 |
4 | add ecx,19 |
5 | shl ecx,16 |
5 | shl ecx,16 |
6 | mov cx,18 |
6 | mov cx,18 |
7 | mov ebx,[window_width] |
7 | mov ebx,[window_width] |
8 | sub ebx,9 |
8 | sub ebx,9 |
9 | add ebx,5 shl 16 |
9 | add ebx,5 shl 16 |
10 | mcall 13,,,0xffffff |
10 | mcall 13,,,0xffffff |
11 | 11 | ||
12 | mov edx,15 shl 16+20 |
12 | mov edx,15 shl 16+20 |
13 | add edx,[skin_high] |
13 | add edx,[skin_high] |
14 | mcall 7,buttons_file_data,<198,16> |
14 | mcall 7,buttons_file_data,<198,16> |
15 | 15 | ||
16 | mov ecx, 20 |
16 | mov ecx, 20 |
17 | add ecx, [skin_high] |
17 | add ecx, [skin_high] |
18 | shl ecx, 16 |
18 | shl ecx, 16 |
19 | add ecx, 16 |
19 | add ecx, 16 |
20 | mcall 8,<15,16>,,150+0x40000000 |
20 | mcall 8,<15,16>,,150+0x40000000 |
21 | 21 | ||
22 | _new_but: |
22 | _new_but: |
23 | add ebx,26 shl 16 |
23 | add ebx,26 shl 16 |
24 | inc edx |
24 | inc edx |
25 | mcall |
25 | mcall |
26 | cmp edx, 157+0x40000000 |
26 | cmp edx, 157+0x40000000 |
27 | jl _new_but |
27 | jl _new_but |
28 | 28 | ||
29 | ret |
29 | ret |
30 | ;-------------------------------------- |
30 | ;-------------------------------------- |
31 | .calculate_button: |
31 | .calculate_button: |
32 | mov ebx,edx |
32 | mov ebx,edx |
33 | mov bx,15 |
33 | mov bx,15 |
34 | mov ecx,edx |
34 | mov ecx,edx |
35 | shl ecx,16 |
35 | shl ecx,16 |
36 | mov cx,bx |
36 | mov cx,bx |
37 | ret |
37 | ret |
38 | ;------------------------------------------------------------------------------ |
38 | ;------------------------------------------------------------------------------ |
39 | draw_left_sort_button: |
39 | draw_left_sort_button: |
40 | mov bx,[left_panel_x.start_x] |
40 | mov bx,[left_panel_x.start_x] |
41 | add bx,[left_panel_x.size_x] |
41 | add bx,[left_panel_x.size_x] |
42 | sub ebx,50+15 |
42 | sub ebx,50+15 |
43 | mov cx,[left_panel_y.start_y] |
43 | mov cx,[left_panel_y.start_y] |
44 | call calclulate_sort_button_1 |
44 | call calclulate_sort_button_1 |
45 | mov edx,145 |
45 | mov edx,145 |
46 | ;-------------------------------------- |
46 | ;-------------------------------------- |
47 | .start: |
47 | .start: |
48 | mov esi,0xffffff |
48 | mov esi,0xffffff |
49 | dec ebp |
49 | dec ebp |
50 | cmp [left_sort_flag],ebp |
50 | cmp [left_sort_flag],ebp |
51 | jne @f |
51 | jne @f |
52 | 52 | ||
53 | mov esi,0xccccff |
53 | mov esi,0xccccff |
54 | ;-------------------------------------- |
54 | ;-------------------------------------- |
55 | @@: |
55 | @@: |
56 | call calclulate_sort_button_2 |
56 | call calclulate_sort_button_2 |
57 | jnz .start |
57 | jnz .start |
58 | 58 | ||
59 | ret |
59 | ret |
60 | ;------------------------------------------------------------------------------ |
60 | ;------------------------------------------------------------------------------ |
61 | calclulate_sort_button_1: |
61 | calclulate_sort_button_1: |
62 | shl ebx,16 |
62 | shl ebx,16 |
63 | mov bx,50 |
63 | mov bx,50 |
64 | sub cx,14 |
64 | sub cx,14 |
65 | shl ecx,16 |
65 | shl ecx,16 |
66 | mov cx,12 |
66 | mov cx,12 |
67 | mov eax,8 |
67 | mov eax,8 |
68 | mov ebp,4 |
68 | mov ebp,4 |
69 | ret |
69 | ret |
70 | ;------------------------------------------------------------------------------ |
70 | ;------------------------------------------------------------------------------ |
71 | calclulate_sort_button_2: |
71 | calclulate_sort_button_2: |
72 | inc ebp |
72 | inc ebp |
73 | mcall |
73 | mcall |
74 | pusha |
74 | pusha |
75 | push ebx |
75 | push ebx |
76 | mov eax,ebx |
76 | mov eax,ebx |
77 | inc eax |
77 | inc eax |
78 | shl eax,16 |
78 | shl eax,16 |
79 | add ebx,eax |
79 | add ebx,eax |
80 | cmp ebp,4 |
80 | cmp ebp,4 |
81 | jne @f |
81 | jne @f |
82 | 82 | ||
83 | mov bx,15 |
83 | mov bx,15 |
84 | jmp .continue |
84 | jmp .continue |
85 | ;-------------------------------------- |
85 | ;-------------------------------------- |
86 | @@: |
86 | @@: |
87 | mov bx,1 |
87 | mov bx,1 |
88 | ;-------------------------------------- |
88 | ;-------------------------------------- |
89 | .continue: |
89 | .continue: |
90 | inc ecx |
90 | inc ecx |
91 | mcall 13,,,0xcccccc |
91 | mcall 13,,,0xcccccc |
92 | pop ebx |
92 | pop ebx |
93 | cmp ebp,1 |
93 | cmp ebp,1 |
94 | jne @f |
94 | jne @f |
95 | 95 | ||
96 | mov eax,[temp_panel_end] |
96 | mov eax,[temp_panel_end] |
97 | shl eax,16 |
97 | shl eax,16 |
98 | add eax,[temp_panel_end] |
98 | add eax,[temp_panel_end] |
99 | shr eax,16 |
99 | shr eax,16 |
100 | shr ebx,16 |
100 | shr ebx,16 |
101 | sub ebx,eax |
101 | sub ebx,eax |
102 | shl ebx,16 |
102 | shl ebx,16 |
103 | mov bx,ax |
103 | mov bx,ax |
104 | rol ebx,16 |
104 | rol ebx,16 |
105 | mcall 13 |
105 | mcall 13 |
106 | mov [temp_panel_end],ebx |
106 | mov [temp_panel_end],ebx |
107 | ;-------------------------------------- |
107 | ;-------------------------------------- |
108 | @@: |
108 | @@: |
109 | popa |
109 | popa |
110 | pusha |
110 | pusha |
111 | shr ecx,16 |
111 | shr ecx,16 |
112 | mov bx,cx |
112 | mov bx,cx |
113 | add ebx,3 shl 16+2 |
113 | add ebx,3 shl 16+2 |
114 | mov edx,ebp |
114 | mov edx,ebp |
115 | dec edx |
115 | dec edx |
116 | shl edx,2 |
116 | shl edx,2 |
117 | add edx,sort_button_name |
117 | add edx,sort_button_name |
118 | mov eax,4 |
118 | mov eax,4 |
119 | xor ecx,ecx |
119 | xor ecx,ecx |
120 | mov esi,eax |
120 | mov esi,eax |
121 | mcall |
121 | mcall |
122 | popa |
122 | popa |
123 | dec edx |
123 | dec edx |
124 | sub ebx,38 shl 16 |
124 | sub ebx,38 shl 16 |
125 | mov bx,36 |
125 | mov bx,36 |
126 | dec ebp |
126 | dec ebp |
127 | ret |
127 | ret |
128 | ;------------------------------------------------------------------------------ |
128 | ;------------------------------------------------------------------------------ |
129 | draw_right_sort_button: |
129 | draw_right_sort_button: |
130 | mov bx,[right_panel_x.start_x] |
130 | mov bx,[right_panel_x.start_x] |
131 | add bx,[right_panel_x.size_x] |
131 | add bx,[right_panel_x.size_x] |
132 | sub ebx,50+15 |
132 | sub ebx,50+15 |
133 | mov cx,[right_panel_y.start_y] |
133 | mov cx,[right_panel_y.start_y] |
134 | call calclulate_sort_button_1 |
134 | call calclulate_sort_button_1 |
135 | mov edx,149 |
135 | mov edx,149 |
136 | ;-------------------------------------- |
136 | ;-------------------------------------- |
137 | .start: |
137 | .start: |
138 | mov esi,0xffffff |
138 | mov esi,0xffffff |
139 | dec ebp |
139 | dec ebp |
140 | cmp [right_sort_flag],ebp |
140 | cmp [right_sort_flag],ebp |
141 | jne @f |
141 | jne @f |
142 | 142 | ||
143 | mov esi,0xccccff |
143 | mov esi,0xccccff |
144 | ;-------------------------------------- |
144 | ;-------------------------------------- |
145 | @@: |
145 | @@: |
146 | call calclulate_sort_button_2 |
146 | call calclulate_sort_button_2 |
147 | jnz .start |
147 | jnz .start |
148 | 148 | ||
149 | ret |
149 | ret |
150 | ;------------------------------------------------------------------------------ |
150 | ;------------------------------------------------------------------------------ |
151 | draw_left_select_disk_button: |
151 | draw_left_select_disk_button: |
152 | mov bx,[left_panel_x.start_x] |
152 | mov bx,[left_panel_x.start_x] |
153 | mov cx,[left_panel_y.start_y] |
153 | mov cx,[left_panel_y.start_y] |
154 | mov ebp,read_folder_name ;read_folder.name |
154 | mov ebp,read_folder_name ;read_folder.name |
155 | mov edx,0x40000000+140 |
155 | mov edx,0x40000000+140 |
156 | ;-------------------------------------- |
156 | ;-------------------------------------- |
157 | .1: |
157 | .1: |
158 | shl ebx,16 |
158 | shl ebx,16 |
159 | mov bx,60 |
159 | mov bx,60 |
160 | sub cx,14 |
160 | sub cx,14 |
161 | shl ecx,16 |
161 | shl ecx,16 |
162 | mov cx,13 |
162 | mov cx,13 |
163 | mcall 8,,,,0xffffff |
163 | mcall 8,,,,0xffffff |
164 | mcall 13,,,0xffffff |
164 | mcall 13,,,0xffffff |
165 | pusha |
165 | pusha |
166 | mov esi,ebp |
166 | mov esi,ebp |
167 | add esi,2 |
167 | add esi,2 |
168 | ;-------------------------------------- |
168 | ;-------------------------------------- |
169 | @@: |
169 | @@: |
170 | inc esi |
170 | inc esi |
171 | cmp [esi],byte 0 |
171 | cmp [esi],byte 0 |
172 | je @f |
172 | je @f |
173 | 173 | ||
174 | cmp [esi],byte '/' |
174 | cmp [esi],byte '/' |
175 | jne @r |
175 | jne @r |
176 | 176 | ||
177 | add esi,2 |
177 | add esi,2 |
178 | ;-------------------------------------- |
178 | ;-------------------------------------- |
179 | @@: |
179 | @@: |
180 | sub esi,ebp ;read_folder.name |
180 | sub esi,ebp ;read_folder.name |
181 | add ebx,1 shl 16 |
181 | add ebx,1 shl 16 |
182 | shr ecx,16 |
182 | shr ecx,16 |
183 | mov bx,cx |
183 | mov bx,cx |
184 | add ebx,3 |
184 | add ebx,3 |
185 | mov edx,ebp |
185 | mov edx,ebp |
186 | mcall 4,,0 ;,read_folder.name |
186 | mcall 4,,0 ;,read_folder.name |
187 | popa |
187 | popa |
188 | add ebx,50 shl 16 |
188 | add ebx,50 shl 16 |
189 | mov bx,10 |
189 | mov bx,10 |
190 | mcall ,,,0x6060ff |
190 | mcall ,,,0x6060ff |
191 | mov [temp_panel_end],ebx |
191 | mov [temp_panel_end],ebx |
192 | add ebx,1 shl 16 |
192 | add ebx,1 shl 16 |
193 | shr ecx,16 |
193 | shr ecx,16 |
194 | mov bx,cx |
194 | mov bx,cx |
195 | add ebx,3 |
195 | add ebx,3 |
196 | mcall 4, ,0x80ffffff,select_disk_char |
196 | mcall 4, ,0x80ffffff,select_disk_char |
197 | add ebx,1 shl 16 |
197 | add ebx,1 shl 16 |
198 | mcall |
198 | mcall |
199 | ret |
199 | ret |
200 | ;------------------------------------------------------------------------------ |
200 | ;------------------------------------------------------------------------------ |
201 | draw_right_select_disk_button: |
201 | draw_right_select_disk_button: |
202 | mov bx,[right_panel_x.start_x] |
202 | mov bx,[right_panel_x.start_x] |
203 | mov cx,[right_panel_y.start_y] |
203 | mov cx,[right_panel_y.start_y] |
204 | mov ebp,read_folder_1_name ;read_folder_1.name |
204 | mov ebp,read_folder_1_name ;read_folder_1.name |
205 | mov edx,0x40000000+141 |
205 | mov edx,0x40000000+141 |
206 | jmp draw_left_select_disk_button.1 |
206 | jmp draw_left_select_disk_button.1 |
207 | ;------------------------------------------------------------------------------ |
207 | ;------------------------------------------------------------------------------ |
208 | ;draw_ATAPI_tray_control: |
208 | ;draw_ATAPI_tray_control: |
209 | ; ret |
209 | ; ret |
210 | ;------------------------------------------------------------------------------ |
210 | ;------------------------------------------------------------------------------ |
211 | calc_max_panel_line: |
211 | calc_max_panel_line: |
212 | xor eax,eax |
212 | xor eax,eax |
213 | mov ax,[left_panel_y.size_y] |
213 | mov ax,[left_panel_y.size_y] |
214 | mov ebx,10 |
214 | mov ebx,10 |
215 | xor edx,edx |
215 | xor edx,edx |
216 | div ebx |
216 | div ebx |
217 | mov [max_panel_line],eax |
217 | mov [max_panel_line],eax |
218 | ret |
218 | ret |
219 | ;------------------------------------------------------------------------------ |
219 | ;------------------------------------------------------------------------------ |
220 | draw_icon: |
220 | draw_icon: |
221 | pusha |
221 | pusha |
222 | test [edx-40],byte 0x10 |
222 | test [edx-40],byte 0x10 |
223 | jnz .draw_dir_pic |
223 | jnz .draw_dir_pic |
224 | 224 | ||
225 | call get_icon_number |
225 | call get_icon_number |
226 | imul ebx,270 |
226 | imul ebx,270 |
227 | add ebx,mem |
227 | add ebx,icons_file_data |
228 | jmp .draw |
228 | jmp .draw |
229 | ;-------------------------------------- |
229 | ;-------------------------------------- |
230 | .draw_dir_pic: |
230 | .draw_dir_pic: |
231 | mov ebx,mem |
231 | mov ebx,icons_file_data |
232 | cmp [edx],word '..' |
232 | cmp [edx],word '..' |
233 | jne .draw |
233 | jne .draw |
234 | 234 | ||
235 | add ebx,270 ;*17 |
235 | add ebx,270 ;*17 |
236 | ;-------------------------------------- |
236 | ;-------------------------------------- |
237 | .draw: |
237 | .draw: |
238 | mov edx,[esp+16] ;ebx |
238 | mov edx,[esp+16] ;ebx |
239 | ror edx,16 |
239 | ror edx,16 |
240 | sub edx,12 |
240 | sub edx,12 |
241 | rol edx,16 |
241 | rol edx,16 |
242 | mcall 7, ,<10,9> |
242 | mcall 7, ,<10,9> |
243 | popa |
243 | popa |
244 | ret |
244 | ret |
245 | ;------------------------------------------------------------------------------ |
245 | ;------------------------------------------------------------------------------ |
246 | ; ÏÅÐÅÂÎÄ 10-ÍÛÕ ×ÈÑÅË ÑÎ ÇÍÀÊÎÌ Â ÑÒÐÎÊÎÂÛÉ ÂÈÄ |
246 | ; ÏÅÐÅÂÎÄ 10-ÍÛÕ ×ÈÑÅË ÑÎ ÇÍÀÊÎÌ Â ÑÒÐÎÊÎÂÛÉ ÂÈÄ |
247 | ; Âõîä: |
247 | ; Âõîä: |
248 | ; AX - ÷èñëî |
248 | ; AX - ÷èñëî |
249 | ; EBX - àäðåñ ñòðîêè |
249 | ; EBX - àäðåñ ñòðîêè |
250 | ; Âûõîä: |
250 | ; Âûõîä: |
251 | ; ñòðîêà ñîäåðæèò ÷èñëî, êîíåö îòìå÷åí êîäîì 0 |
251 | ; ñòðîêà ñîäåðæèò ÷èñëî, êîíåö îòìå÷åí êîäîì 0 |
252 | ;------------------------------------------------------------------------------ |
252 | ;------------------------------------------------------------------------------ |
253 | decimal_string_2: |
253 | decimal_string_2: |
254 | push eax ebx ecx edx |
254 | push eax ebx ecx edx |
255 | xor ecx,ecx |
255 | xor ecx,ecx |
256 | mov [ebx],byte '0' |
256 | mov [ebx],byte '0' |
257 | inc ebx |
257 | inc ebx |
258 | ;-------------------------------------- |
258 | ;-------------------------------------- |
259 | .p3: |
259 | .p3: |
260 | xor edx,edx |
260 | xor edx,edx |
261 | push ebx |
261 | push ebx |
262 | mov ebx,10 |
262 | mov ebx,10 |
263 | div ebx |
263 | div ebx |
264 | pop ebx |
264 | pop ebx |
265 | add edx,48 |
265 | add edx,48 |
266 | push edx |
266 | push edx |
267 | inc ecx |
267 | inc ecx |
268 | cmp ax,0 |
268 | cmp ax,0 |
269 | jne .p3 |
269 | jne .p3 |
270 | 270 | ||
271 | cmp ecx,1 |
271 | cmp ecx,1 |
272 | jbe .p4 |
272 | jbe .p4 |
273 | 273 | ||
274 | mov ecx,2 |
274 | mov ecx,2 |
275 | dec ebx |
275 | dec ebx |
276 | ;-------------------------------------- |
276 | ;-------------------------------------- |
277 | .p4: |
277 | .p4: |
278 | pop edx |
278 | pop edx |
279 | mov [ebx],dl |
279 | mov [ebx],dl |
280 | inc ebx |
280 | inc ebx |
281 | loop .p4 |
281 | loop .p4 |
282 | pop edx ecx ebx eax |
282 | pop edx ecx ebx eax |
283 | ret |
283 | ret |
284 | ;------------------------------------------------------------------------------ |
284 | ;------------------------------------------------------------------------------ |
285 | decimal_string_4: |
285 | decimal_string_4: |
286 | push eax ecx edx |
286 | push eax ecx edx |
287 | xor ecx,ecx |
287 | xor ecx,ecx |
288 | mov [ebx],byte '0' |
288 | mov [ebx],byte '0' |
289 | inc ebx |
289 | inc ebx |
290 | ;-------------------------------------- |
290 | ;-------------------------------------- |
291 | .p3: |
291 | .p3: |
292 | xor edx,edx |
292 | xor edx,edx |
293 | push ebx |
293 | push ebx |
294 | mov ebx,10 |
294 | mov ebx,10 |
295 | div ebx |
295 | div ebx |
296 | pop ebx |
296 | pop ebx |
297 | add edx,48 |
297 | add edx,48 |
298 | push edx |
298 | push edx |
299 | inc ecx |
299 | inc ecx |
300 | cmp eax,0 |
300 | cmp eax,0 |
301 | jne .p3 |
301 | jne .p3 |
302 | 302 | ||
303 | cmp ecx,3 |
303 | cmp ecx,3 |
304 | jbe .p4 |
304 | jbe .p4 |
305 | 305 | ||
306 | mov ecx,4 |
306 | mov ecx,4 |
307 | dec ebx |
307 | dec ebx |
308 | ;-------------------------------------- |
308 | ;-------------------------------------- |
309 | .p4: |
309 | .p4: |
310 | pop edx |
310 | pop edx |
311 | mov [ebx],dl |
311 | mov [ebx],dl |
312 | inc ebx |
312 | inc ebx |
313 | loop .p4 |
313 | loop .p4 |
314 | 314 | ||
315 | pop edx ecx eax |
315 | pop edx ecx eax |
316 | ret |
316 | ret |
317 | ;------------------------------------------------------------------------------ |
317 | ;------------------------------------------------------------------------------ |
318 | draw_type_size_date: |
318 | draw_type_size_date: |
319 | pusha |
319 | pusha |
320 | test [edx-40],byte 0x10 |
320 | test [edx-40],byte 0x10 |
321 | jz .copy_type |
321 | jz .copy_type |
322 | 322 | ||
323 | mov [type_table],dword ' |
323 | mov [type_table],dword ' |
324 | mov [type_table+4],word '> ' |
324 | mov [type_table+4],word '> ' |
325 | mov [file_name_length],0 |
325 | mov [file_name_length],0 |
326 | mov [extension_size],0 |
326 | mov [extension_size],0 |
327 | jmp .start ;.size |
327 | jmp .start ;.size |
328 | ;-------------------------------------- |
328 | ;-------------------------------------- |
329 | .copy_type: |
329 | .copy_type: |
330 | mov [type_table],dword ' ' |
330 | mov [type_table],dword ' ' |
331 | mov [type_table+4],word ' ' |
331 | mov [type_table+4],word ' ' |
332 | ;-------------------------------------- |
332 | ;-------------------------------------- |
333 | .start: |
333 | .start: |
334 | mov esi,edx |
334 | mov esi,edx |
335 | xor eax,eax |
335 | xor eax,eax |
336 | ;-------------------------------------- |
336 | ;-------------------------------------- |
337 | @@: |
337 | @@: |
338 | cld |
338 | cld |
339 | lodsb |
339 | lodsb |
340 | test eax,eax |
340 | test eax,eax |
341 | jnz @b |
341 | jnz @b |
342 | 342 | ||
343 | mov [file_name_length],esi |
343 | mov [file_name_length],esi |
344 | sub [file_name_length],edx |
344 | sub [file_name_length],edx |
345 | mov [temp_counter_1],esi |
345 | mov [temp_counter_1],esi |
346 | test [edx-40],byte 0x10 |
346 | test [edx-40],byte 0x10 |
347 | jnz .size |
347 | jnz .size |
348 | 348 | ||
349 | dec esi |
349 | dec esi |
350 | dec edx |
350 | dec edx |
351 | ;-------------------------------------- |
351 | ;-------------------------------------- |
352 | @@: |
352 | @@: |
353 | std |
353 | std |
354 | lodsb |
354 | lodsb |
355 | cmp esi,edx |
355 | cmp esi,edx |
356 | je .extension_size_0 |
356 | je .extension_size_0 |
357 | 357 | ||
358 | cmp al,'.' |
358 | cmp al,'.' |
359 | jnz @b |
359 | jnz @b |
360 | 360 | ||
361 | add esi,2 |
361 | add esi,2 |
362 | mov [extension_start],esi |
362 | mov [extension_start],esi |
363 | mov ecx,[temp_counter_1] |
363 | mov ecx,[temp_counter_1] |
364 | sub ecx,esi |
364 | sub ecx,esi |
365 | inc ecx |
365 | inc ecx |
366 | mov [extension_size],ecx |
366 | mov [extension_size],ecx |
367 | sub [file_name_length],ecx |
367 | sub [file_name_length],ecx |
368 | cmp ecx,2 |
368 | cmp ecx,2 |
369 | ja @f |
369 | ja @f |
370 | 370 | ||
371 | inc [file_name_length] |
371 | inc [file_name_length] |
372 | ;-------------------------------------- |
372 | ;-------------------------------------- |
373 | @@: |
373 | @@: |
374 | sub ecx,2 |
374 | sub ecx,2 |
375 | cmp ecx,4 |
375 | cmp ecx,4 |
376 | jbe @f |
376 | jbe @f |
377 | 377 | ||
378 | mov ecx,4 |
378 | mov ecx,4 |
379 | mov [type_table+4],word '..' |
379 | mov [type_table+4],word '..' |
380 | ;-------------------------------------- |
380 | ;-------------------------------------- |
381 | @@: |
381 | @@: |
382 | mov edi,type_table ;+1 |
382 | mov edi,type_table ;+1 |
383 | cld |
383 | cld |
384 | rep movsb |
384 | rep movsb |
385 | mov [edi],byte ' ' |
385 | mov [edi],byte ' ' |
386 | inc edx |
386 | inc edx |
387 | jmp .size |
387 | jmp .size |
388 | ;-------------------------------------- |
388 | ;-------------------------------------- |
389 | .extension_size_0: |
389 | .extension_size_0: |
390 | inc edx |
390 | inc edx |
391 | mov [extension_size],0 |
391 | mov [extension_size],0 |
392 | ;-------------------------------------- |
392 | ;-------------------------------------- |
393 | .size: |
393 | .size: |
394 | test [edx-40],byte 0x10 |
394 | test [edx-40],byte 0x10 |
395 | jz .copy_size |
395 | jz .copy_size |
396 | 396 | ||
397 | mov [size_table],dword '----' |
397 | mov [size_table],dword '----' |
398 | mov [size_table+4],word '- ' |
398 | mov [size_table+4],word '- ' |
399 | jmp .date |
399 | jmp .date |
400 | ;-------------------------------------- |
400 | ;-------------------------------------- |
401 | .copy_size: |
401 | .copy_size: |
402 | ;/0x40000000 - Gb |
402 | ;/0x40000000 - Gb |
403 | ;/0x100000 - Mb |
403 | ;/0x100000 - Mb |
404 | ;/0x400 Kb |
404 | ;/0x400 Kb |
405 | mov [size_table],dword ' ' |
405 | mov [size_table],dword ' ' |
406 | mov [size_table+4],word ' ' |
406 | mov [size_table+4],word ' ' |
407 | push ebx |
407 | push ebx |
408 | push edx |
408 | push edx |
409 | mov eax,[edx-40+32] |
409 | mov eax,[edx-40+32] |
410 | mov ebx,0x40000000 |
410 | mov ebx,0x40000000 |
411 | xor edx,edx |
411 | xor edx,edx |
412 | div ebx |
412 | div ebx |
413 | cmp eax,0 |
413 | cmp eax,0 |
414 | je @f |
414 | je @f |
415 | 415 | ||
416 | mov ebx,size_table |
416 | mov ebx,size_table |
417 | call decimal_string_4 |
417 | call decimal_string_4 |
418 | mov [ebx],byte 'G' |
418 | mov [ebx],byte 'G' |
419 | jmp .size_convert_end |
419 | jmp .size_convert_end |
420 | ;-------------------------------------- |
420 | ;-------------------------------------- |
421 | @@: |
421 | @@: |
422 | mov edx,[esp] |
422 | mov edx,[esp] |
423 | mov eax,[edx-40+32] |
423 | mov eax,[edx-40+32] |
424 | mov ebx,0x100000 |
424 | mov ebx,0x100000 |
425 | xor edx,edx |
425 | xor edx,edx |
426 | div ebx |
426 | div ebx |
427 | cmp eax,0 |
427 | cmp eax,0 |
428 | je @f |
428 | je @f |
429 | 429 | ||
430 | mov ebx,size_table |
430 | mov ebx,size_table |
431 | call decimal_string_4 |
431 | call decimal_string_4 |
432 | mov [ebx],byte 'M' |
432 | mov [ebx],byte 'M' |
433 | jmp .size_convert_end |
433 | jmp .size_convert_end |
434 | ;-------------------------------------- |
434 | ;-------------------------------------- |
435 | @@: |
435 | @@: |
436 | mov edx,[esp] |
436 | mov edx,[esp] |
437 | mov eax,[edx-40+32] |
437 | mov eax,[edx-40+32] |
438 | mov ebx,0x400 |
438 | mov ebx,0x400 |
439 | xor edx,edx |
439 | xor edx,edx |
440 | div ebx |
440 | div ebx |
441 | cmp eax,0 |
441 | cmp eax,0 |
442 | je @f |
442 | je @f |
443 | 443 | ||
444 | mov ebx,size_table |
444 | mov ebx,size_table |
445 | call decimal_string_4 |
445 | call decimal_string_4 |
446 | mov [ebx],byte 'K' |
446 | mov [ebx],byte 'K' |
447 | jmp .size_convert_end |
447 | jmp .size_convert_end |
448 | ;-------------------------------------- |
448 | ;-------------------------------------- |
449 | @@: |
449 | @@: |
450 | mov edx,[esp] |
450 | mov edx,[esp] |
451 | mov eax,[edx-40+32] |
451 | mov eax,[edx-40+32] |
452 | ;.size_convert: |
452 | ;.size_convert: |
453 | mov ebx,size_table |
453 | mov ebx,size_table |
454 | call decimal_string_4 |
454 | call decimal_string_4 |
455 | ;-------------------------------------- |
455 | ;-------------------------------------- |
456 | .size_convert_end: |
456 | .size_convert_end: |
457 | cmp [size_table],byte '0' |
457 | cmp [size_table],byte '0' |
458 | jne @f |
458 | jne @f |
459 | 459 | ||
460 | mov [size_table],byte ' ' |
460 | mov [size_table],byte ' ' |
461 | ;-------------------------------------- |
461 | ;-------------------------------------- |
462 | @@: |
462 | @@: |
463 | cmp [size_table+4],byte ' ' |
463 | cmp [size_table+4],byte ' ' |
464 | jne @f |
464 | jne @f |
465 | 465 | ||
466 | mov esi,size_table+3 |
466 | mov esi,size_table+3 |
467 | mov edi,esi |
467 | mov edi,esi |
468 | inc edi |
468 | inc edi |
469 | mov ecx,5 |
469 | mov ecx,5 |
470 | std |
470 | std |
471 | rep movsb |
471 | rep movsb |
472 | jmp @r |
472 | jmp @r |
473 | ;-------------------------------------- |
473 | ;-------------------------------------- |
474 | @@: |
474 | @@: |
475 | pop edx |
475 | pop edx |
476 | pop ebx |
476 | pop ebx |
477 | ;-------------------------------------- |
477 | ;-------------------------------------- |
478 | .date: |
478 | .date: |
479 | xor eax,eax |
479 | xor eax,eax |
480 | mov al,[edx-40+28] |
480 | mov al,[edx-40+28] |
481 | push ebx |
481 | push ebx |
482 | mov ebx,date_table |
482 | mov ebx,date_table |
483 | call decimal_string_2 |
483 | call decimal_string_2 |
484 | mov al,[edx-40+29] |
484 | mov al,[edx-40+29] |
485 | mov ebx,date_table+3 |
485 | mov ebx,date_table+3 |
486 | call decimal_string_2 |
486 | call decimal_string_2 |
487 | mov ax,[edx-40+30] |
487 | mov ax,[edx-40+30] |
488 | mov ebx,year_table |
488 | mov ebx,year_table |
489 | call decimal_string_4 |
489 | call decimal_string_4 |
490 | mov ax,[year_table+2] |
490 | mov ax,[year_table+2] |
491 | mov [date_table+6],ax |
491 | mov [date_table+6],ax |
492 | pop ebx |
492 | pop ebx |
493 | ror ebx,16 |
493 | ror ebx,16 |
494 | add bx,[left_panel_x.size_x] |
494 | add bx,[left_panel_x.size_x] |
495 | sub ebx,122+12+15 |
495 | sub ebx,122+12+15 |
496 | rol ebx,16 |
496 | rol ebx,16 |
497 | mov ecx,0 |
497 | mov ecx,0 |
498 | cmp [marked_file],byte 0 |
498 | cmp [marked_file],byte 0 |
499 | je @f |
499 | je @f |
500 | 500 | ||
501 | mov ecx,0xff0000 |
501 | mov ecx,0xff0000 |
502 | ;-------------------------------------- |
502 | ;-------------------------------------- |
503 | @@: |
503 | @@: |
504 | mcall 4,,,type_table,20 |
504 | mcall 4,,,type_table,20 |
505 | popa |
505 | popa |
506 | ret |
506 | ret |
507 | ;------------------------------------------------------------------------------ |
507 | ;------------------------------------------------------------------------------ |
508 | draw_folder_data: |
508 | draw_folder_data: |
509 | cmp [drawing_panel_folder],1 |
509 | cmp [drawing_panel_folder],1 |
510 | jne .right_panel |
510 | jne .right_panel |
511 | 511 | ||
512 | mov eax,[left_folder_block] |
512 | mov eax,[left_folder_block] |
513 | sub eax,[max_panel_line] |
513 | sub eax,[max_panel_line] |
514 | test eax,0x8000000 |
514 | test eax,0x8000000 |
515 | jz .ok_left |
515 | jz .ok_left |
516 | 516 | ||
517 | mov [left_start_draw_line],0 |
517 | mov [left_start_draw_line],0 |
518 | jmp @f |
518 | jmp @f |
519 | ;-------------------------------------- |
519 | ;-------------------------------------- |
520 | .ok_left: |
520 | .ok_left: |
521 | cmp eax,[left_start_draw_line] |
521 | cmp eax,[left_start_draw_line] |
522 | jae @f |
522 | jae @f |
523 | 523 | ||
524 | mov [left_start_draw_line],eax |
524 | mov [left_start_draw_line],eax |
525 | ;-------------------------------------- |
525 | ;-------------------------------------- |
526 | @@: |
526 | @@: |
527 | mov bx,[left_panel_x.start_x] |
527 | mov bx,[left_panel_x.start_x] |
528 | add bx,12 |
528 | add bx,12 |
529 | shl ebx,16 |
529 | shl ebx,16 |
530 | mov bx,[left_panel_y.start_y] |
530 | mov bx,[left_panel_y.start_y] |
531 | inc bx |
531 | inc bx |
532 | mov edx,[left_start_draw_line] |
532 | mov edx,[left_start_draw_line] |
533 | imul edx,304 |
533 | imul edx,304 |
534 | add edx,[left_folder_data] |
534 | add edx,[left_folder_data] |
535 | add edx,32+40 |
535 | add edx,32+40 |
536 | mov [temp_counter],0 |
536 | mov [temp_counter],0 |
537 | jmp .type_folder |
537 | jmp .type_folder |
538 | ;-------------------------------------- |
538 | ;-------------------------------------- |
539 | .right_panel: |
539 | .right_panel: |
540 | mov eax,[right_folder_block] |
540 | mov eax,[right_folder_block] |
541 | sub eax,[max_panel_line] |
541 | sub eax,[max_panel_line] |
542 | test eax,0x8000000 |
542 | test eax,0x8000000 |
543 | jz .ok_right |
543 | jz .ok_right |
544 | 544 | ||
545 | mov [right_start_draw_line],0 |
545 | mov [right_start_draw_line],0 |
546 | jmp @f |
546 | jmp @f |
547 | ;-------------------------------------- |
547 | ;-------------------------------------- |
548 | .ok_right: |
548 | .ok_right: |
549 | cmp eax,[right_start_draw_line] |
549 | cmp eax,[right_start_draw_line] |
550 | jae @f |
550 | jae @f |
551 | 551 | ||
552 | mov [right_start_draw_line],eax |
552 | mov [right_start_draw_line],eax |
553 | ;-------------------------------------- |
553 | ;-------------------------------------- |
554 | @@: |
554 | @@: |
555 | mov bx,[right_panel_x.start_x] |
555 | mov bx,[right_panel_x.start_x] |
556 | add bx,12 |
556 | add bx,12 |
557 | shl ebx,16 |
557 | shl ebx,16 |
558 | mov bx,[right_panel_y.start_y] |
558 | mov bx,[right_panel_y.start_y] |
559 | inc bx |
559 | inc bx |
560 | mov edx,[right_start_draw_line] |
560 | mov edx,[right_start_draw_line] |
561 | imul edx,304 |
561 | imul edx,304 |
562 | add edx,[right_folder_data] |
562 | add edx,[right_folder_data] |
563 | add edx,32+40 |
563 | add edx,32+40 |
564 | mov [temp_counter],1 |
564 | mov [temp_counter],1 |
565 | ;-------------------------------------- |
565 | ;-------------------------------------- |
566 | .type_folder: |
566 | .type_folder: |
567 | xor eax,eax |
567 | xor eax,eax |
568 | ;-------------------------------------- |
568 | ;-------------------------------------- |
569 | .start: |
569 | .start: |
570 | pusha |
570 | pusha |
571 | mov eax,edx |
571 | mov eax,edx |
572 | cmp [temp_counter],1 |
572 | cmp [temp_counter],1 |
573 | je @f |
573 | je @f |
574 | 574 | ||
575 | sub eax,[left_folder_data] |
575 | sub eax,[left_folder_data] |
576 | sub eax,32+40 |
576 | sub eax,32+40 |
577 | xor edx,edx |
577 | xor edx,edx |
578 | mov ebx,304 |
578 | mov ebx,304 |
579 | div ebx |
579 | div ebx |
580 | cmp eax,[left_folder_block] |
580 | cmp eax,[left_folder_block] |
581 | je .end_1 |
581 | je .end_1 |
582 | 582 | ||
583 | jmp .continue_1 |
583 | jmp .continue_1 |
584 | ;-------------------------------------- |
584 | ;-------------------------------------- |
585 | @@: |
585 | @@: |
586 | sub eax,[right_folder_data] |
586 | sub eax,[right_folder_data] |
587 | sub eax,32+40 |
587 | sub eax,32+40 |
588 | xor edx,edx |
588 | xor edx,edx |
589 | mov ebx,304 |
589 | mov ebx,304 |
590 | div ebx |
590 | div ebx |
591 | cmp eax,[right_folder_block] |
591 | cmp eax,[right_folder_block] |
592 | je .end_1 |
592 | je .end_1 |
593 | ;-------------------------------------- |
593 | ;-------------------------------------- |
594 | .continue_1: |
594 | .continue_1: |
595 | popa |
595 | popa |
596 | cmp eax,[max_panel_line] ; 20 |
596 | cmp eax,[max_panel_line] ; 20 |
597 | je .end_2 |
597 | je .end_2 |
598 | 598 | ||
599 | mov [marked_file],0 |
599 | mov [marked_file],0 |
600 | cmp [edx+299-40],byte 0 |
600 | cmp [edx+299-40],byte 0 |
601 | je @f |
601 | je @f |
602 | 602 | ||
603 | mov [marked_file],1 |
603 | mov [marked_file],1 |
604 | ;-------------------------------------- |
604 | ;-------------------------------------- |
605 | @@: |
605 | @@: |
606 | call clear_line |
606 | call clear_line |
607 | call draw_type_size_date |
607 | call draw_type_size_date |
608 | call draw_icon |
608 | call draw_icon |
609 | push eax |
609 | push eax |
610 | xor eax,eax |
610 | xor eax,eax |
611 | mov ax,[left_panel_x.size_x] |
611 | mov ax,[left_panel_x.size_x] |
612 | push ebx edx |
612 | push ebx edx |
613 | mov ebx,6 |
613 | mov ebx,6 |
614 | xor edx,edx |
614 | xor edx,edx |
615 | div ebx |
615 | div ebx |
616 | pop edx ebx |
616 | pop edx ebx |
617 | sub eax,23+2+2 |
617 | sub eax,23+2+2 |
618 | mov esi,[file_name_length] |
618 | mov esi,[file_name_length] |
619 | mov [temp_counter_1],0 |
619 | mov [temp_counter_1],0 |
620 | cmp esi,eax |
620 | cmp esi,eax |
621 | jbe @f |
621 | jbe @f |
622 | 622 | ||
623 | mov esi,eax |
623 | mov esi,eax |
624 | mov [temp_counter_1],1 |
624 | mov [temp_counter_1],1 |
625 | ;-------------------------------------- |
625 | ;-------------------------------------- |
626 | @@: |
626 | @@: |
627 | mov ecx,0 |
627 | mov ecx,0 |
628 | cmp [marked_file],byte 0 |
628 | cmp [marked_file],byte 0 |
629 | je @f |
629 | je @f |
630 | 630 | ||
631 | mov ecx,0xff0000 |
631 | mov ecx,0xff0000 |
632 | ;-------------------------------------- |
632 | ;-------------------------------------- |
633 | @@: |
633 | @@: |
634 | mcall 4 |
634 | mcall 4 |
635 | cmp [temp_counter_1],0 |
635 | cmp [temp_counter_1],0 |
636 | je .continue |
636 | je .continue |
637 | 637 | ||
638 | mov eax,esi ;[file_name_length] |
638 | mov eax,esi ;[file_name_length] |
639 | imul eax,6 |
639 | imul eax,6 |
640 | shl eax,16 |
640 | shl eax,16 |
641 | push ebx edx |
641 | push ebx edx |
642 | add ebx,eax |
642 | add ebx,eax |
643 | mcall 4,,0xff0000,truncated_filename_char,2 |
643 | mcall 4,,0xff0000,truncated_filename_char,2 |
644 | add ebx,1 shl 16 |
644 | add ebx,1 shl 16 |
645 | mcall |
645 | mcall |
646 | pop edx ebx |
646 | pop edx ebx |
647 | ;-------------------------------------- |
647 | ;-------------------------------------- |
648 | .continue: |
648 | .continue: |
649 | add ebx,10 |
649 | add ebx,10 |
650 | add edx,304 ;10 |
650 | add edx,304 ;10 |
651 | pop eax |
651 | pop eax |
652 | inc eax |
652 | inc eax |
653 | jmp .start |
653 | jmp .start |
654 | ;-------------------------------------- |
654 | ;-------------------------------------- |
655 | .end_1: |
655 | .end_1: |
656 | popa |
656 | popa |
657 | ;-------------------------------------- |
657 | ;-------------------------------------- |
658 | .end_2: |
658 | .end_2: |
659 | mov ax,[left_panel_y.start_y] |
659 | mov ax,[left_panel_y.start_y] |
660 | add ax,[left_panel_y.size_y] |
660 | add ax,[left_panel_y.size_y] |
661 | mov cx,bx |
661 | mov cx,bx |
662 | dec cx |
662 | dec cx |
663 | rol ecx,16 |
663 | rol ecx,16 |
664 | mov cx,ax |
664 | mov cx,ax |
665 | mov eax,ecx |
665 | mov eax,ecx |
666 | shr eax,16 |
666 | shr eax,16 |
667 | sub cx,ax |
667 | sub cx,ax |
668 | cmp cx,0 |
668 | cmp cx,0 |
669 | jbe @f |
669 | jbe @f |
670 | 670 | ||
671 | mov bx,[left_panel_x.size_x] |
671 | mov bx,[left_panel_x.size_x] |
672 | sub ebx,12 shl 16 |
672 | sub ebx,12 shl 16 |
673 | mcall 13,,,0xffffff |
673 | mcall 13,,,0xffffff |
674 | ;-------------------------------------- |
674 | ;-------------------------------------- |
675 | @@: |
675 | @@: |
676 | .end: |
676 | .end: |
677 | cmp [drawing_panel_folder],1 |
677 | cmp [drawing_panel_folder],1 |
678 | jne @f |
678 | jne @f |
679 | 679 | ||
680 | call draw_scroll_bar_left |
680 | call draw_scroll_bar_left |
681 | ret |
681 | ret |
682 | ;-------------------------------------- |
682 | ;-------------------------------------- |
683 | @@: |
683 | @@: |
684 | call draw_scroll_bar_right |
684 | call draw_scroll_bar_right |
685 | ret |
685 | ret |
686 | ;------------------------------------------------------------------------------ |
686 | ;------------------------------------------------------------------------------ |
687 | clear_line: |
687 | clear_line: |
688 | cmp [not_clear_lines],0 |
688 | cmp [not_clear_lines],0 |
689 | jne .end_1 |
689 | jne .end_1 |
690 | 690 | ||
691 | pusha |
691 | pusha |
692 | shl ebx,16 |
692 | shl ebx,16 |
693 | shr ebx,16 |
693 | shr ebx,16 |
694 | dec ebx |
694 | dec ebx |
695 | cmp [drawing_panel_folder],1 |
695 | cmp [drawing_panel_folder],1 |
696 | jne .right |
696 | jne .right |
697 | 697 | ||
698 | cmp [select_panel_counter],0 |
698 | cmp [select_panel_counter],0 |
699 | jne .continue |
699 | jne .continue |
700 | 700 | ||
701 | mov ax,[left_start_draw_cursor_line] |
701 | mov ax,[left_start_draw_cursor_line] |
702 | add ax,[left_panel_y.start_y] |
702 | add ax,[left_panel_y.start_y] |
703 | cmp bx,ax |
703 | cmp bx,ax |
704 | je .end |
704 | je .end |
705 | 705 | ||
706 | jmp .continue |
706 | jmp .continue |
707 | ;-------------------------------------- |
707 | ;-------------------------------------- |
708 | .right: |
708 | .right: |
709 | cmp [select_panel_counter],0 |
709 | cmp [select_panel_counter],0 |
710 | je .continue |
710 | je .continue |
711 | 711 | ||
712 | mov ax,[right_start_draw_cursor_line] |
712 | mov ax,[right_start_draw_cursor_line] |
713 | add ax,[right_panel_y.start_y] |
713 | add ax,[right_panel_y.start_y] |
714 | cmp bx,ax |
714 | cmp bx,ax |
715 | je .end |
715 | je .end |
716 | ;-------------------------------------- |
716 | ;-------------------------------------- |
717 | .continue: |
717 | .continue: |
718 | mov ebx,[esp+16] |
718 | mov ebx,[esp+16] |
719 | mov cx,bx |
719 | mov cx,bx |
720 | dec cx |
720 | dec cx |
721 | rol ecx,16 |
721 | rol ecx,16 |
722 | mov cx,10 |
722 | mov cx,10 |
723 | mov bx,[left_panel_x.size_x] |
723 | mov bx,[left_panel_x.size_x] |
724 | cmp [drawing_panel_folder],1 |
724 | cmp [drawing_panel_folder],1 |
725 | je @f |
725 | je @f |
726 | 726 | ||
727 | dec ebx |
727 | dec ebx |
728 | ;-------------------------------------- |
728 | ;-------------------------------------- |
729 | @@: |
729 | @@: |
730 | sub ebx,12 shl 16+15 |
730 | sub ebx,12 shl 16+15 |
731 | mcall 13,,,0xffffff |
731 | mcall 13,,,0xffffff |
732 | ;-------------------------------------- |
732 | ;-------------------------------------- |
733 | .end: |
733 | .end: |
734 | popa |
734 | popa |
735 | ;-------------------------------------- |
735 | ;-------------------------------------- |
736 | .end_1: |
736 | .end_1: |
737 | ret |
737 | ret |
738 | ;------------------------------------------------------------------------------ |
738 | ;------------------------------------------------------------------------------ |
739 | draw_left_panel: |
739 | draw_left_panel: |
740 | call clear_left_panel |
740 | call clear_left_panel |
741 | call calc_max_panel_line |
741 | call calc_max_panel_line |
742 | call draw_left_panel_selection |
742 | call draw_left_panel_selection |
743 | mov [drawing_panel_folder],1 |
743 | mov [drawing_panel_folder],1 |
744 | call draw_folder_data |
744 | call draw_folder_data |
745 | call draw_left_panel_patch |
745 | call draw_left_panel_patch |
746 | ret |
746 | ret |
747 | ;------------------------------------------------------------------------------ |
747 | ;------------------------------------------------------------------------------ |
748 | draw_right_panel: |
748 | draw_right_panel: |
749 | call clear_right_panel |
749 | call clear_right_panel |
750 | call calc_max_panel_line |
750 | call calc_max_panel_line |
751 | call draw_right_panel_selection |
751 | call draw_right_panel_selection |
752 | mov [drawing_panel_folder],2 |
752 | mov [drawing_panel_folder],2 |
753 | call draw_folder_data |
753 | call draw_folder_data |
754 | call draw_right_panel_patch |
754 | call draw_right_panel_patch |
755 | ret |
755 | ret |
756 | ;------------------------------------------------------------------------------ |
756 | ;------------------------------------------------------------------------------ |
757 | draw_left_panel_patch: |
757 | draw_left_panel_patch: |
758 | cmp [select_panel_counter],0 |
758 | cmp [select_panel_counter],0 |
759 | jne .end |
759 | jne .end |
760 | 760 | ||
761 | mov edx,read_folder_name ;read_folder.name |
761 | mov edx,read_folder_name ;read_folder.name |
762 | ;-------------------------------------- |
762 | ;-------------------------------------- |
763 | .1: |
763 | .1: |
764 | call clear_patch_area |
764 | call clear_patch_area |
765 | mov ebx,[window_high] |
765 | mov ebx,[window_high] |
766 | sub ebx,33 |
766 | sub ebx,33 |
767 | add ebx,8 shl 16 |
767 | add ebx,8 shl 16 |
768 | mcall 4,,0x80000000 ; ,read_folder.name |
768 | mcall 4,,0x80000000 ; ,read_folder.name |
769 | ;-------------------------------------- |
769 | ;-------------------------------------- |
770 | .end: |
770 | .end: |
771 | ret |
771 | ret |
772 | ;------------------------------------------------------------------------------ |
772 | ;------------------------------------------------------------------------------ |
773 | draw_right_panel_patch: |
773 | draw_right_panel_patch: |
774 | cmp [select_panel_counter],1 |
774 | cmp [select_panel_counter],1 |
775 | jne draw_left_panel_patch.end |
775 | jne draw_left_panel_patch.end |
776 | 776 | ||
777 | mov edx,read_folder_1_name ;read_folder_1.name |
777 | mov edx,read_folder_1_name ;read_folder_1.name |
778 | jmp draw_left_panel_patch.1 |
778 | jmp draw_left_panel_patch.1 |
779 | ;------------------------------------------------------------------------------ |
779 | ;------------------------------------------------------------------------------ |
780 | clear_patch_area: |
780 | clear_patch_area: |
781 | push edx |
781 | push edx |
782 | mov ebx,[window_width] |
782 | mov ebx,[window_width] |
783 | sub ebx,9 |
783 | sub ebx,9 |
784 | add ebx,5 shl 16 |
784 | add ebx,5 shl 16 |
785 | mov ecx,[window_high] |
785 | mov ecx,[window_high] |
786 | sub ecx,35 |
786 | sub ecx,35 |
787 | shl ecx,16 |
787 | shl ecx,16 |
788 | mov cx,12 |
788 | mov cx,12 |
789 | mcall 13,,,0xffffcc |
789 | mcall 13,,,0xffffcc |
790 | pop edx |
790 | pop edx |
791 | ret |
791 | ret |
792 | ;------------------------------------------------------------------------------ |
792 | ;------------------------------------------------------------------------------ |
793 | draw_left_panel_selection: |
793 | draw_left_panel_selection: |
794 | cmp [select_panel_counter],0 |
794 | cmp [select_panel_counter],0 |
795 | jne .end |
795 | jne .end |
796 | 796 | ||
797 | mov eax,[left_folder_block] |
797 | mov eax,[left_folder_block] |
798 | sub eax,[left_start_draw_line] |
798 | sub eax,[left_start_draw_line] |
799 | mov edx,left_start_draw_cursor_line |
799 | mov edx,left_start_draw_cursor_line |
800 | mov cx,[edx] |
800 | mov cx,[edx] |
801 | call for_all_panel_selection |
801 | call for_all_panel_selection |
802 | mov eax,[left_folder_block] |
802 | mov eax,[left_folder_block] |
803 | dec eax |
803 | dec eax |
804 | imul eax,10 |
804 | imul eax,10 |
805 | cmp ax,cx |
805 | cmp ax,cx |
806 | jae @f |
806 | jae @f |
807 | 807 | ||
808 | mov cx,ax |
808 | mov cx,ax |
809 | ;-------------------------------------- |
809 | ;-------------------------------------- |
810 | @@: |
810 | @@: |
811 | mov [edx],cx |
811 | mov [edx],cx |
812 | mov ebx,[left_panel_x] |
812 | mov ebx,[left_panel_x] |
813 | add cx,[left_panel_y.start_y] |
813 | add cx,[left_panel_y.start_y] |
814 | ;-------------------------------------- |
814 | ;-------------------------------------- |
815 | .1: |
815 | .1: |
816 | shl ecx,16 |
816 | shl ecx,16 |
817 | mov cx,10 |
817 | mov cx,10 |
818 | sub ebx,15 |
818 | sub ebx,15 |
819 | mcall 13,,,0xbbddff |
819 | mcall 13,,,0xbbddff |
820 | ;-------------------------------------- |
820 | ;-------------------------------------- |
821 | .end: |
821 | .end: |
822 | ret |
822 | ret |
823 | ;------------------------------------------------------------------------------ |
823 | ;------------------------------------------------------------------------------ |
824 | draw_right_panel_selection: |
824 | draw_right_panel_selection: |
825 | cmp [select_panel_counter],1 |
825 | cmp [select_panel_counter],1 |
826 | jne draw_left_panel_selection.end |
826 | jne draw_left_panel_selection.end |
827 | 827 | ||
828 | mov eax,[right_folder_block] |
828 | mov eax,[right_folder_block] |
829 | sub eax,[right_start_draw_line] |
829 | sub eax,[right_start_draw_line] |
830 | mov edx,right_start_draw_cursor_line |
830 | mov edx,right_start_draw_cursor_line |
831 | mov cx,[edx] |
831 | mov cx,[edx] |
832 | call for_all_panel_selection |
832 | call for_all_panel_selection |
833 | mov eax,[right_folder_block] |
833 | mov eax,[right_folder_block] |
834 | dec eax |
834 | dec eax |
835 | imul eax,10 |
835 | imul eax,10 |
836 | cmp ax,cx |
836 | cmp ax,cx |
837 | jae @f |
837 | jae @f |
838 | 838 | ||
839 | mov cx,ax |
839 | mov cx,ax |
840 | ;-------------------------------------- |
840 | ;-------------------------------------- |
841 | @@: |
841 | @@: |
842 | mov [edx],cx |
842 | mov [edx],cx |
843 | mov ebx,[right_panel_x] |
843 | mov ebx,[right_panel_x] |
844 | add cx,[right_panel_y.start_y] |
844 | add cx,[right_panel_y.start_y] |
845 | jmp draw_left_panel_selection.1 |
845 | jmp draw_left_panel_selection.1 |
846 | ;------------------------------------------------------------------------------ |
846 | ;------------------------------------------------------------------------------ |
847 | for_all_panel_selection: |
847 | for_all_panel_selection: |
848 | imul eax,10 |
848 | imul eax,10 |
849 | cmp ax,cx |
849 | cmp ax,cx |
850 | jae @f |
850 | jae @f |
851 | 851 | ||
852 | mov cx,ax |
852 | mov cx,ax |
853 | ;-------------------------------------- |
853 | ;-------------------------------------- |
854 | @@: |
854 | @@: |
855 | mov eax,[max_panel_line] |
855 | mov eax,[max_panel_line] |
856 | dec eax |
856 | dec eax |
857 | imul eax,10 |
857 | imul eax,10 |
858 | cmp ax,cx |
858 | cmp ax,cx |
859 | jae @f |
859 | jae @f |
860 | 860 | ||
861 | mov cx,ax |
861 | mov cx,ax |
862 | ;-------------------------------------- |
862 | ;-------------------------------------- |
863 | @@: |
863 | @@: |
864 | ret |
864 | ret |
865 | ;------------------------------------------------------------------------------ |
865 | ;------------------------------------------------------------------------------ |
866 | clear_left_panel: |
866 | clear_left_panel: |
867 | mov ebx,7 shl 16 |
867 | mov ebx,7 shl 16 |
868 | add ebx,[window_width] |
868 | add ebx,[window_width] |
869 | shr bx,1 |
869 | shr bx,1 |
870 | sub ebx,6+1 |
870 | sub ebx,6+1 |
871 | mov [left_panel_x],ebx |
871 | mov [left_panel_x],ebx |
872 | call calculate_panel_1 |
872 | call calculate_panel_1 |
873 | mov [left_panel_y],ecx |
873 | mov [left_panel_y],ecx |
874 | xor eax,eax |
874 | xor eax,eax |
875 | mov ax,cx |
875 | mov ax,cx |
876 | xor edx,edx |
876 | xor edx,edx |
877 | mov ebx,10 |
877 | mov ebx,10 |
878 | div ebx |
878 | div ebx |
879 | ; óìíîæåíèå íà 10 |
879 | ; óìíîæåíèå íà 10 |
880 | shl eax,1 ; óìíîæåíèå íà 2 |
880 | shl eax,1 ; óìíîæåíèå íà 2 |
881 | lea eax,[eax+eax*4] ; óìíîæåíèå íà 5 |
881 | lea eax,[eax+eax*4] ; óìíîæåíèå íà 5 |
882 | mov [left_panel_y_correct_size_y],ax |
882 | mov [left_panel_y_correct_size_y],ax |
883 | ret |
883 | ret |
884 | ;------------------------------------------------------------------------------ |
884 | ;------------------------------------------------------------------------------ |
885 | calculate_panel_1: |
885 | calculate_panel_1: |
886 | mov ecx,[skin_high] |
886 | mov ecx,[skin_high] |
887 | add ecx,70 |
887 | add ecx,70 |
888 | shl ecx,16 |
888 | shl ecx,16 |
889 | add ecx,[window_high] |
889 | add ecx,[window_high] |
890 | sub ecx,129 |
890 | sub ecx,129 |
891 | ret |
891 | ret |
892 | ;------------------------------------------------------------------------------ |
892 | ;------------------------------------------------------------------------------ |
893 | clear_right_panel: |
893 | clear_right_panel: |
894 | mov ebx,[window_width] |
894 | mov ebx,[window_width] |
895 | shr ebx,1 |
895 | shr ebx,1 |
896 | add ebx,3 |
896 | add ebx,3 |
897 | shl ebx,16 |
897 | shl ebx,16 |
898 | add ebx,[window_width] |
898 | add ebx,[window_width] |
899 | shr bx,1 |
899 | shr bx,1 |
900 | sub bx,2+6 |
900 | sub bx,2+6 |
901 | mov [right_panel_x],ebx |
901 | mov [right_panel_x],ebx |
902 | call calculate_panel_1 |
902 | call calculate_panel_1 |
903 | mov [right_panel_y],ecx |
903 | mov [right_panel_y],ecx |
904 | xor eax,eax |
904 | xor eax,eax |
905 | mov ax,cx |
905 | mov ax,cx |
906 | xor edx,edx |
906 | xor edx,edx |
907 | mov ebx,10 |
907 | mov ebx,10 |
908 | div ebx |
908 | div ebx |
909 | ; óìíîæåíèå íà 10 |
909 | ; óìíîæåíèå íà 10 |
910 | shl eax,1 ; óìíîæåíèå íà 2 |
910 | shl eax,1 ; óìíîæåíèå íà 2 |
911 | lea eax,[eax+eax*4] ; óìíîæåíèå íà 5 |
911 | lea eax,[eax+eax*4] ; óìíîæåíèå íà 5 |
912 | mov [right_panel_y_correct_size_y],ax |
912 | mov [right_panel_y_correct_size_y],ax |
913 | ret |
913 | ret |
914 | ;------------------------------------------------------------------------------ |
914 | ;------------------------------------------------------------------------------ |
915 | erase_fbutton: |
915 | erase_fbutton: |
916 | mov edx,0x80000065 |
916 | mov edx,0x80000065 |
917 | mov eax,8 |
917 | mov eax,8 |
918 | mov ebp,12 |
918 | mov ebp,12 |
919 | ;-------------------------------------- |
919 | ;-------------------------------------- |
920 | .start: |
920 | .start: |
921 | mcall |
921 | mcall |
922 | dec ebp |
922 | dec ebp |
923 | jnz .start |
923 | jnz .start |
924 | 924 | ||
925 | ret |
925 | ret |
926 | ;------------------------------------------------------------------------------ |
926 | ;------------------------------------------------------------------------------ |
927 | draw_fbutton: |
927 | draw_fbutton: |
928 | test [window_status],100b ; window is rolled up |
928 | test [window_status],100b ; window is rolled up |
929 | jnz .exit |
929 | jnz .exit |
930 | 930 | ||
931 | test [window_status],10b ; window is minimized to panel |
931 | test [window_status],10b ; window is minimized to panel |
932 | jnz .exit |
932 | jnz .exit |
933 | 933 | ||
934 | mov ecx,[window_high] |
934 | mov ecx,[window_high] |
935 | sub ecx,20 |
935 | sub ecx,20 |
936 | shl ecx,16 |
936 | shl ecx,16 |
937 | add ecx,15 |
937 | add ecx,15 |
938 | mov eax,[window_width] |
938 | mov eax,[window_width] |
939 | mov ebx,12 |
939 | mov ebx,12 |
940 | xor edx,edx |
940 | xor edx,edx |
941 | div ebx |
941 | div ebx |
942 | mov [fbutton_width],eax |
942 | mov [fbutton_width],eax |
943 | mov ebx,5 shl 16 |
943 | mov ebx,5 shl 16 |
944 | add ebx,eax |
944 | add ebx,eax |
945 | sub ebx,2 |
945 | sub ebx,2 |
946 | mov esi,0xaa00 |
946 | mov esi,0xaa00 |
947 | mov edx,101 |
947 | mov edx,101 |
948 | mov eax,8 |
948 | mov eax,8 |
949 | mov ebp,12 |
949 | mov ebp,12 |
950 | ;-------------------------------------- |
950 | ;-------------------------------------- |
951 | .start: |
951 | .start: |
952 | cmp ebp,1 |
952 | cmp ebp,1 |
953 | jne @f |
953 | jne @f |
954 | 954 | ||
955 | mov eax,ebx |
955 | mov eax,ebx |
956 | shr eax,16 |
956 | shr eax,16 |
957 | mov bx,ax |
957 | mov bx,ax |
958 | mov eax,[window_width] |
958 | mov eax,[window_width] |
959 | sub ax,bx |
959 | sub ax,bx |
960 | sub ax,5 |
960 | sub ax,5 |
961 | mov bx,ax |
961 | mov bx,ax |
962 | mov eax,8 |
962 | mov eax,8 |
963 | ;-------------------------------------- |
963 | ;-------------------------------------- |
964 | @@: |
964 | @@: |
965 | mcall |
965 | mcall |
966 | push eax ebx edx |
966 | push eax ebx edx |
967 | mov edx,0x6060ff |
967 | mov edx,0x6060ff |
968 | mov bx,10 |
968 | mov bx,10 |
969 | cmp ebp,4 |
969 | cmp ebp,4 |
970 | jae @f |
970 | jae @f |
971 | 971 | ||
972 | mov bx,18 |
972 | mov bx,18 |
973 | ;-------------------------------------- |
973 | ;-------------------------------------- |
974 | @@: |
974 | @@: |
975 | mcall 13 |
975 | mcall 13 |
976 | cmp ebp,1 |
976 | cmp ebp,1 |
977 | je @f |
977 | je @f |
978 | 978 | ||
979 | ror ebx,16 |
979 | ror ebx,16 |
980 | add ebx,[fbutton_width] |
980 | add ebx,[fbutton_width] |
981 | dec ebx |
981 | dec ebx |
982 | rol ebx,16 |
982 | rol ebx,16 |
983 | mov bx,1 |
983 | mov bx,1 |
984 | inc ecx |
984 | inc ecx |
985 | mcall ,,,0xcccccc |
985 | mcall ,,,0xcccccc |
986 | dec ecx |
986 | dec ecx |
987 | ;-------------------------------------- |
987 | ;-------------------------------------- |
988 | @@: |
988 | @@: |
989 | pop edx ebx eax |
989 | pop edx ebx eax |
990 | call .rol_ror |
990 | call .rol_ror |
991 | inc edx |
991 | inc edx |
992 | dec ebp |
992 | dec ebp |
993 | jnz .start |
993 | jnz .start |
994 | 994 | ||
995 | call draw_fbutton_name |
995 | call draw_fbutton_name |
996 | ret |
996 | ret |
997 | ;-------------------------------------- |
997 | ;-------------------------------------- |
998 | .rol_ror: |
998 | .rol_ror: |
999 | rol ebx,16 |
999 | rol ebx,16 |
1000 | add ebx,[fbutton_width] |
1000 | add ebx,[fbutton_width] |
1001 | ror ebx,16 |
1001 | ror ebx,16 |
1002 | ;-------------------------------------- |
1002 | ;-------------------------------------- |
1003 | .exit: |
1003 | .exit: |
1004 | ret |
1004 | ret |
1005 | ;------------------------------------------------------------------------------ |
1005 | ;------------------------------------------------------------------------------ |
1006 | draw_fbutton_name: |
1006 | draw_fbutton_name: |
1007 | mov ebx, 7 shl 16 |
1007 | mov ebx, 7 shl 16 |
1008 | add ebx,[window_high] |
1008 | add ebx,[window_high] |
1009 | sub ebx,19 |
1009 | sub ebx,19 |
1010 | mov eax,4 |
1010 | mov eax,4 |
1011 | mov ecx,0x90000000 |
1011 | mov ecx,0x90000000 |
1012 | push ebx |
1012 | push ebx |
1013 | call .type_1 |
1013 | call .type_1 |
1014 | pop ebx |
1014 | pop ebx |
1015 | mov ecx,0x90ffffff |
1015 | mov ecx,0x90ffffff |
1016 | sub ebx,1 shl 16 + 1 |
1016 | sub ebx,1 shl 16 + 1 |
1017 | ;-------------------------------------- |
1017 | ;-------------------------------------- |
1018 | .type_1: |
1018 | .type_1: |
1019 | cmp [shift_flag],1 |
1019 | cmp [shift_flag],1 |
1020 | je .type_shift |
1020 | je .type_shift |
1021 | 1021 | ||
1022 | cmp [ctrl_flag],1 |
1022 | cmp [ctrl_flag],1 |
1023 | je .type_ctrl |
1023 | je .type_ctrl |
1024 | 1024 | ||
1025 | cmp [alt_flag],1 |
1025 | cmp [alt_flag],1 |
1026 | je .type_alt |
1026 | je .type_alt |
1027 | ;-------------------------------------- |
1027 | ;-------------------------------------- |
1028 | .type: |
1028 | .type: |
1029 | mov edx,fbutton_name.f1 |
1029 | mov edx,fbutton_name.f1 |
1030 | call .type_all |
1030 | call .type_all |
1031 | mov edx,fbutton_name.f2 |
1031 | mov edx,fbutton_name.f2 |
1032 | call .type_all |
1032 | call .type_all |
1033 | mov edx,fbutton_name.f3 |
1033 | mov edx,fbutton_name.f3 |
1034 | call .type_all |
1034 | call .type_all |
1035 | mov edx,fbutton_name.f4 |
1035 | mov edx,fbutton_name.f4 |
1036 | call .type_all |
1036 | call .type_all |
1037 | mov edx,fbutton_name.f5 |
1037 | mov edx,fbutton_name.f5 |
1038 | call .type_all |
1038 | call .type_all |
1039 | mov edx,fbutton_name.f6 |
1039 | mov edx,fbutton_name.f6 |
1040 | call .type_all |
1040 | call .type_all |
1041 | mov edx,fbutton_name.f7 |
1041 | mov edx,fbutton_name.f7 |
1042 | call .type_all |
1042 | call .type_all |
1043 | mov edx,fbutton_name.f8 |
1043 | mov edx,fbutton_name.f8 |
1044 | call .type_all |
1044 | call .type_all |
1045 | mov edx,fbutton_name.f9 |
1045 | mov edx,fbutton_name.f9 |
1046 | call .type_all |
1046 | call .type_all |
1047 | mov edx,fbutton_name.f10 |
1047 | mov edx,fbutton_name.f10 |
1048 | call .type_all |
1048 | call .type_all |
1049 | mov edx,fbutton_name.f11 |
1049 | mov edx,fbutton_name.f11 |
1050 | call .type_all |
1050 | call .type_all |
1051 | mov edx,fbutton_name.f12 |
1051 | mov edx,fbutton_name.f12 |
1052 | mcall |
1052 | mcall |
1053 | ret |
1053 | ret |
1054 | ;-------------------------------------- |
1054 | ;-------------------------------------- |
1055 | .type_shift: |
1055 | .type_shift: |
1056 | mov edx,fbutton_name_shift.f1 |
1056 | mov edx,fbutton_name_shift.f1 |
1057 | call .type_all |
1057 | call .type_all |
1058 | mov edx,fbutton_name_shift.f2 |
1058 | mov edx,fbutton_name_shift.f2 |
1059 | call .type_all |
1059 | call .type_all |
1060 | mov edx,fbutton_name_shift.f3 |
1060 | mov edx,fbutton_name_shift.f3 |
1061 | call .type_all |
1061 | call .type_all |
1062 | mov edx,fbutton_name_shift.f4 |
1062 | mov edx,fbutton_name_shift.f4 |
1063 | call .type_all |
1063 | call .type_all |
1064 | mov edx,fbutton_name_shift.f5 |
1064 | mov edx,fbutton_name_shift.f5 |
1065 | call .type_all |
1065 | call .type_all |
1066 | mov edx,fbutton_name_shift.f6 |
1066 | mov edx,fbutton_name_shift.f6 |
1067 | call .type_all |
1067 | call .type_all |
1068 | mov edx,fbutton_name_shift.f7 |
1068 | mov edx,fbutton_name_shift.f7 |
1069 | call .type_all |
1069 | call .type_all |
1070 | mov edx,fbutton_name_shift.f8 |
1070 | mov edx,fbutton_name_shift.f8 |
1071 | call .type_all |
1071 | call .type_all |
1072 | mov edx,fbutton_name_shift.f9 |
1072 | mov edx,fbutton_name_shift.f9 |
1073 | call .type_all |
1073 | call .type_all |
1074 | mov edx,fbutton_name_shift.f10 |
1074 | mov edx,fbutton_name_shift.f10 |
1075 | call .type_all |
1075 | call .type_all |
1076 | mov edx,fbutton_name_shift.f11 |
1076 | mov edx,fbutton_name_shift.f11 |
1077 | call .type_all |
1077 | call .type_all |
1078 | mov edx,fbutton_name_shift.f12 |
1078 | mov edx,fbutton_name_shift.f12 |
1079 | mcall |
1079 | mcall |
1080 | ret |
1080 | ret |
1081 | ;-------------------------------------- |
1081 | ;-------------------------------------- |
1082 | .type_ctrl: |
1082 | .type_ctrl: |
1083 | mov edx,fbutton_name_ctrl.f1 |
1083 | mov edx,fbutton_name_ctrl.f1 |
1084 | call .type_all |
1084 | call .type_all |
1085 | mov edx,fbutton_name_ctrl.f2 |
1085 | mov edx,fbutton_name_ctrl.f2 |
1086 | call .type_all |
1086 | call .type_all |
1087 | mov edx,fbutton_name_ctrl.f3 |
1087 | mov edx,fbutton_name_ctrl.f3 |
1088 | call .type_all |
1088 | call .type_all |
1089 | mov edx,fbutton_name_ctrl.f4 |
1089 | mov edx,fbutton_name_ctrl.f4 |
1090 | call .type_all |
1090 | call .type_all |
1091 | mov edx,fbutton_name_ctrl.f5 |
1091 | mov edx,fbutton_name_ctrl.f5 |
1092 | call .type_all |
1092 | call .type_all |
1093 | mov edx,fbutton_name_ctrl.f6 |
1093 | mov edx,fbutton_name_ctrl.f6 |
1094 | call .type_all |
1094 | call .type_all |
1095 | mov edx,fbutton_name_ctrl.f7 |
1095 | mov edx,fbutton_name_ctrl.f7 |
1096 | call .type_all |
1096 | call .type_all |
1097 | mov edx,fbutton_name_ctrl.f8 |
1097 | mov edx,fbutton_name_ctrl.f8 |
1098 | call .type_all |
1098 | call .type_all |
1099 | mov edx,fbutton_name_ctrl.f9 |
1099 | mov edx,fbutton_name_ctrl.f9 |
1100 | call .type_all |
1100 | call .type_all |
1101 | mov edx,fbutton_name_ctrl.f10 |
1101 | mov edx,fbutton_name_ctrl.f10 |
1102 | call .type_all |
1102 | call .type_all |
1103 | mov edx,fbutton_name_ctrl.f11 |
1103 | mov edx,fbutton_name_ctrl.f11 |
1104 | call .type_all |
1104 | call .type_all |
1105 | mov edx,fbutton_name_ctrl.f12 |
1105 | mov edx,fbutton_name_ctrl.f12 |
1106 | mcall |
1106 | mcall |
1107 | ret |
1107 | ret |
1108 | ;-------------------------------------- |
1108 | ;-------------------------------------- |
1109 | .type_alt: |
1109 | .type_alt: |
1110 | mov edx,fbutton_name_alt.f1 |
1110 | mov edx,fbutton_name_alt.f1 |
1111 | call .type_all |
1111 | call .type_all |
1112 | mov edx,fbutton_name_alt.f2 |
1112 | mov edx,fbutton_name_alt.f2 |
1113 | call .type_all |
1113 | call .type_all |
1114 | mov edx,fbutton_name_alt.f3 |
1114 | mov edx,fbutton_name_alt.f3 |
1115 | call .type_all |
1115 | call .type_all |
1116 | mov edx,fbutton_name_alt.f4 |
1116 | mov edx,fbutton_name_alt.f4 |
1117 | call .type_all |
1117 | call .type_all |
1118 | mov edx,fbutton_name_alt.f5 |
1118 | mov edx,fbutton_name_alt.f5 |
1119 | call .type_all |
1119 | call .type_all |
1120 | mov edx,fbutton_name_alt.f6 |
1120 | mov edx,fbutton_name_alt.f6 |
1121 | call .type_all |
1121 | call .type_all |
1122 | mov edx,fbutton_name_alt.f7 |
1122 | mov edx,fbutton_name_alt.f7 |
1123 | call .type_all |
1123 | call .type_all |
1124 | mov edx,fbutton_name_alt.f8 |
1124 | mov edx,fbutton_name_alt.f8 |
1125 | call .type_all |
1125 | call .type_all |
1126 | mov edx,fbutton_name_alt.f9 |
1126 | mov edx,fbutton_name_alt.f9 |
1127 | call .type_all |
1127 | call .type_all |
1128 | mov edx,fbutton_name_alt.f10 |
1128 | mov edx,fbutton_name_alt.f10 |
1129 | call .type_all |
1129 | call .type_all |
1130 | mov edx,fbutton_name_alt.f11 |
1130 | mov edx,fbutton_name_alt.f11 |
1131 | call .type_all |
1131 | call .type_all |
1132 | mov edx,fbutton_name_alt.f12 |
1132 | mov edx,fbutton_name_alt.f12 |
1133 | ;-------------------------------------- |
1133 | ;-------------------------------------- |
1134 | .type_all: |
1134 | .type_all: |
1135 | mcall |
1135 | mcall |
1136 | call draw_fbutton.rol_ror |
1136 | call draw_fbutton.rol_ror |
1137 | ret |
1137 | ret |
1138 | ;------------------------------------------------------------------------------ |
1138 | ;------------------------------------------------------------------------------ |
1139 | >10,9>15,16>198,16> |
1139 | >10,9>15,16>198,16> |