Rev 283 | Rev 321 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 283 | Rev 314 | ||
---|---|---|---|
Line 12... | Line 12... | ||
12 | include 'sort.inc' |
12 | include 'sort.inc' |
13 | include 'kglobals.inc' |
13 | include 'kglobals.inc' |
14 | include 'memalloc.inc' |
14 | include 'memalloc.inc' |
15 | include 'dialogs.inc' |
15 | include 'dialogs.inc' |
16 | include 'viewer.inc' |
16 | include 'viewer.inc' |
- | 17 | include 'tools.inc' |
|
Line 17... | Line 18... | ||
17 | 18 | ||
18 | start: |
19 | start: |
19 | mov eax, mem |
20 | mov eax, mem |
20 | call mf_init |
21 | call mf_init |
Line 59... | Line 60... | ||
59 | mov [panel2_sortmode], 0 |
60 | mov [panel2_sortmode], 0 |
60 | mov [num_screens], 1 |
61 | mov [num_screens], 1 |
61 | mov eax, 8 |
62 | mov eax, 8 |
62 | call mf_alloc |
63 | call mf_alloc |
63 | mov [screens], eax |
64 | mov [screens], eax |
- | 65 | test eax, eax |
|
- | 66 | jz exit |
|
64 | mov ecx, panels_vtable |
67 | mov ecx, panels_vtable |
65 | mov [eax], ecx |
68 | mov [eax], ecx |
66 | mov [active_screen_vtable], ecx |
69 | mov [active_screen_vtable], ecx |
67 | call draw_keybar |
70 | call draw_keybar |
68 | call draw_cmdbar |
71 | call draw_cmdbar |
- | 72 | mov [prev_dir], 0 |
|
69 | mov ebp, panel1_data |
73 | mov ebp, panel1_data |
70 | call read_folder |
74 | call read_folder |
71 | call draw_panel |
75 | call draw_panel |
- | 76 | mov [bSilentFolderMode], 1 |
|
72 | mov ebp, panel2_data |
77 | mov ebp, panel2_data |
73 | call read_folder |
78 | call read_folder |
74 | call draw_panel |
79 | call draw_panel |
75 | event: |
80 | event: |
76 | push 10 |
81 | push 10 |
Line 110... | Line 115... | ||
110 | push 1 |
115 | push 1 |
111 | pop ebx |
116 | pop ebx |
112 | int 0x40 |
117 | int 0x40 |
113 | xor eax, eax |
118 | xor eax, eax |
114 | ; ebx, ecx, edi are ignored by function 0 after first redraw |
119 | ; ebx, ecx, edi are ignored by function 0 after first redraw |
115 | mov edx, 0x13000000 |
120 | mov edx, 0x53000000 |
116 | int 0x40 |
121 | int 0x40 |
117 | mov al, 12 |
122 | mov al, 12 |
118 | inc ebx |
123 | inc ebx |
119 | int 0x40 |
124 | int 0x40 |
120 | jmp event |
125 | jmp event |
121 | @@: |
126 | @@: |
122 | xor ecx, ecx |
127 | xor ecx, ecx |
123 | mov eax, [ebx+42] |
128 | mov eax, [ebx+42] |
- | 129 | mov [wnd_width], eax |
|
124 | sub eax, 5*2-1 |
130 | sub eax, 5*2-1 |
125 | jae @f |
131 | jae @f |
126 | xor eax, eax |
132 | xor eax, eax |
127 | @@: |
133 | @@: |
128 | cdq |
134 | cdq |
Line 141... | Line 147... | ||
141 | cmp eax, [cur_width] |
147 | cmp eax, [cur_width] |
142 | mov [cur_width], eax |
148 | mov [cur_width], eax |
143 | setnz cl |
149 | setnz cl |
144 | or cl, ch |
150 | or cl, ch |
145 | test edx, edx |
151 | test edx, edx |
- | 152 | mov [fill_width], edx |
|
146 | setnz ch |
153 | setnz ch |
147 | mov eax, [ebx+46] |
154 | mov eax, [ebx+46] |
- | 155 | mov [wnd_height], eax |
|
148 | sub eax, [skinh] |
156 | sub eax, [skinh] |
149 | sub eax, 5-1 |
157 | sub eax, 5-1 |
150 | jns @f |
158 | jns @f |
151 | xor eax, eax |
159 | xor eax, eax |
152 | @@: |
160 | @@: |
Line 161... | Line 169... | ||
161 | cmp eax, 255 |
169 | cmp eax, 255 |
162 | jbe @f |
170 | jbe @f |
163 | mov eax, 255 |
171 | mov eax, 255 |
164 | mov cl, 1 |
172 | mov cl, 1 |
165 | @@: |
173 | @@: |
- | 174 | mov [fill_height], edx |
|
166 | cmp eax, [cur_height] |
175 | cmp eax, [cur_height] |
167 | mov [cur_height], eax |
176 | mov [cur_height], eax |
168 | jnz .resize |
177 | jnz .resize |
169 | test cl, cl |
178 | test cl, cl |
170 | jnz .resize |
179 | jnz .resize |
Line 403... | Line 412... | ||
403 | ctrlkey_test4: |
412 | ctrlkey_test4: |
404 | cmp al, 2 |
413 | cmp al, 2 |
405 | setz al |
414 | setz al |
406 | ret |
415 | ret |
Line 407... | Line -... | ||
407 | - | ||
408 | ; TODO: add "no memory" error handling |
416 | |
409 | new_screen: |
417 | new_screen: |
410 | call mf_alloc |
418 | call xmalloc |
411 | test eax, eax |
419 | test eax, eax |
412 | jnz @f |
420 | jnz @f |
413 | ret |
421 | ret |
414 | @@: |
422 | @@: |
415 | mov ebp, eax |
423 | mov ebp, eax |
416 | mov ebx, [num_screens] |
424 | mov ebx, [num_screens] |
417 | inc ebx |
425 | inc ebx |
418 | shl ebx, 3 |
426 | shl ebx, 3 |
419 | mov eax, [screens] |
427 | mov eax, [screens] |
420 | call mf_realloc |
428 | call xrealloc |
421 | test eax, eax |
429 | test eax, eax |
422 | jnz @f |
430 | jnz @f |
423 | mov eax, ebp |
431 | mov eax, ebp |
424 | call mf_free |
432 | call mf_free |
Line 459... | Line 467... | ||
459 | rep movsd |
467 | rep movsd |
460 | dec [num_screens] |
468 | dec [num_screens] |
461 | mov ebx, [num_screens] |
469 | mov ebx, [num_screens] |
462 | shl ebx, 3 |
470 | shl ebx, 3 |
463 | mov eax, [screens] |
471 | mov eax, [screens] |
464 | call mf_realloc |
472 | call mf_realloc ; must succeed, because we decrease size |
465 | pop eax |
473 | pop eax |
466 | call mf_free |
474 | call mf_free |
467 | and [active_screen], 0 |
475 | and [active_screen], 0 |
Line 468... | Line 476... | ||
468 | 476 | ||
Line 482... | Line 490... | ||
482 | F12: |
490 | F12: |
483 | mov eax, [cur_width] |
491 | mov eax, [cur_width] |
484 | add eax, 8 |
492 | add eax, 8 |
485 | mov esi, eax |
493 | mov esi, eax |
486 | mul [num_screens] |
494 | mul [num_screens] |
487 | call mf_alloc |
495 | call xmalloc |
488 | test eax, eax |
496 | test eax, eax |
489 | jnz @f |
497 | jnz @f |
490 | ret |
498 | ret |
491 | @@: |
499 | @@: |
492 | mov ebx, eax |
500 | mov ebx, eax |
Line 735... | Line 743... | ||
735 | cmp word [esi], '..' |
743 | cmp word [esi], '..' |
736 | jnz @f |
744 | jnz @f |
737 | cmp byte [esi+2], 0 |
745 | cmp byte [esi+2], 0 |
738 | jz .dotdot |
746 | jz .dotdot |
739 | @@: |
747 | @@: |
- | 748 | push esi |
|
740 | lea edi, [ebp + panel1_dir - panel1_data] |
749 | lea esi, [ebp + panel1_dir - panel1_data] |
741 | mov al, 0 |
750 | mov edi, prev_dir |
- | 751 | @@: |
|
- | 752 | lodsb |
|
- | 753 | stosb |
|
742 | or ecx, -1 |
754 | test al, al |
743 | repnz scasb |
755 | jnz @b |
- | 756 | lea edi, [esi-1] |
|
744 | dec edi |
757 | pop esi |
745 | mov al, '/' |
758 | mov al, '/' |
746 | cmp [edi-1], al |
759 | cmp [edi-1], al |
747 | jz @f |
760 | jz @f |
748 | stosb |
761 | stosb |
749 | @@: |
762 | @@: |
Line 877... | Line 890... | ||
877 | int 40h |
890 | int 40h |
878 | mov ebx, dirinfo |
891 | mov ebx, dirinfo |
879 | test eax, eax |
892 | test eax, eax |
880 | jnz .drive_loop_i_done |
893 | jnz .drive_loop_i_done |
881 | mov eax, 32+8 |
894 | mov eax, 32+8 |
882 | call mf_alloc |
895 | call xmalloc |
883 | test eax, eax |
896 | test eax, eax |
884 | jz .drive_loop_i_done |
897 | jz .drive_loop_i_done |
885 | jecxz @f |
898 | jecxz @f |
886 | mov [ecx], eax |
899 | mov [ecx], eax |
887 | @@: |
900 | @@: |
Line 949... | Line 962... | ||
949 | call menu_centered_in |
962 | call menu_centered_in |
950 | cmp eax, -1 |
963 | cmp eax, -1 |
951 | jz .ret2 |
964 | jz .ret2 |
952 | lea esi, [eax+8] |
965 | lea esi, [eax+8] |
953 | lea edi, [ebp + panel1_dir - panel1_data] |
966 | lea edi, [ebp + panel1_dir - panel1_data] |
- | 967 | push ecx esi edi |
|
- | 968 | mov esi, edi |
|
- | 969 | mov edi, prev_dir |
|
- | 970 | mov ecx, 1024/4 |
|
- | 971 | rep movsd |
|
- | 972 | pop edi esi ecx |
|
954 | @@: |
973 | @@: |
955 | lodsb |
974 | lodsb |
956 | stosb |
975 | stosb |
957 | test al, al |
976 | test al, al |
958 | jnz @b |
977 | jnz @b |
Line 1066... | Line 1085... | ||
1066 | mov [ebx - copy_dlgdata + copy_dlgdata.copy_x1], eax |
1085 | mov [ebx - copy_dlgdata + copy_dlgdata.copy_x1], eax |
1067 | add eax, aCopyLength+3 |
1086 | add eax, aCopyLength+3 |
1068 | mov [ebx - copy_dlgdata + copy_dlgdata.cnl_x1], eax |
1087 | mov [ebx - copy_dlgdata + copy_dlgdata.cnl_x1], eax |
1069 | add eax, aCancelBLength - 1 |
1088 | add eax, aCancelBLength - 1 |
1070 | mov [ebx - copy_dlgdata + copy_dlgdata.cnl_x2], eax |
1089 | mov [ebx - copy_dlgdata + copy_dlgdata.cnl_x2], eax |
1071 | mov al, [dialog_border_color] |
- | |
1072 | mov [ebx + dlgtemplate.border_color], al |
- | |
1073 | mov al, [dialog_header_color] |
- | |
1074 | mov [ebx + dlgtemplate.header_color], al |
- | |
1075 | mov al, [dialog_main_color] |
- | |
1076 | mov [ebx + dlgtemplate.main_color], al |
- | |
1077 | mov byte [ebx - copy_dlgdata + copy_dlgdata.flags0], 0xC |
1090 | mov byte [ebx - copy_dlgdata + copy_dlgdata.flags0], 0xC |
1078 | and byte [ebx - copy_dlgdata + copy_dlgdata.flags1], not 4 |
1091 | and byte [ebx - copy_dlgdata + copy_dlgdata.flags1], not 4 |
1079 | and byte [ebx - copy_dlgdata + copy_dlgdata.flags2], not 4 |
1092 | and byte [ebx - copy_dlgdata + copy_dlgdata.flags2], not 4 |
1080 | push ebx |
1093 | push ebx |
1081 | call DialogBox |
1094 | call DialogBox |
Line 1290... | Line 1303... | ||
1290 | mov [ebx - f8_confirm_dlgdata + f8_confirm_dlgdata.del_x1], eax |
1303 | mov [ebx - f8_confirm_dlgdata + f8_confirm_dlgdata.del_x1], eax |
1291 | add eax, aDeleteLength |
1304 | add eax, aDeleteLength |
1292 | mov [ebx - f8_confirm_dlgdata + f8_confirm_dlgdata.cnl_x1], eax |
1305 | mov [ebx - f8_confirm_dlgdata + f8_confirm_dlgdata.cnl_x1], eax |
1293 | add eax, aCancelLength - 1 |
1306 | add eax, aCancelLength - 1 |
1294 | mov [ebx - f8_confirm_dlgdata + f8_confirm_dlgdata.cnl_x2], eax |
1307 | mov [ebx - f8_confirm_dlgdata + f8_confirm_dlgdata.cnl_x2], eax |
1295 | mov al, [dialog_border_color] |
- | |
1296 | mov [ebx + dlgtemplate.border_color], al |
- | |
1297 | mov al, [dialog_header_color] |
- | |
1298 | mov [ebx + dlgtemplate.header_color], al |
- | |
1299 | mov al, [dialog_main_color] |
- | |
1300 | mov [ebx + dlgtemplate.main_color], al |
- | |
1301 | or byte [ebx - f8_confirm_dlgdata + f8_confirm_dlgdata.flags1], 4 |
1308 | or byte [ebx - f8_confirm_dlgdata + f8_confirm_dlgdata.flags1], 4 |
1302 | and byte [ebx - f8_confirm_dlgdata + f8_confirm_dlgdata.flags2], not 4 |
1309 | and byte [ebx - f8_confirm_dlgdata + f8_confirm_dlgdata.flags2], not 4 |
1303 | push ebx |
1310 | push ebx |
1304 | call DialogBox |
1311 | call DialogBox |
1305 | cmp eax, f8_confirm_dlgdata.del_btn |
1312 | cmp eax, f8_confirm_dlgdata.del_btn |
Line 1426... | Line 1433... | ||
1426 | cmp eax, ecx |
1433 | cmp eax, ecx |
1427 | ja @f |
1434 | ja @f |
1428 | mov eax, ecx |
1435 | mov eax, ecx |
1429 | @@: |
1436 | @@: |
1430 | add eax, 12 |
1437 | add eax, 12 |
1431 | call mf_alloc |
1438 | call xmalloc |
1432 | test eax, eax |
1439 | test eax, eax |
1433 | jz .menucreated |
1440 | jz .menucreated |
1434 | add eax, 4 |
1441 | add eax, 4 |
1435 | test edx, edx |
1442 | test edx, edx |
1436 | jz @f |
1443 | jz @f |
Line 1659... | Line 1666... | ||
1659 | add ebx, 100*65536 + 5*2-1 |
1666 | add ebx, 100*65536 + 5*2-1 |
1660 | mov ecx, [cur_height] |
1667 | mov ecx, [cur_height] |
1661 | imul ecx, font_height |
1668 | imul ecx, font_height |
1662 | lea ecx, [eax+ecx+5-1+100*65536] |
1669 | lea ecx, [eax+ecx+5-1+100*65536] |
1663 | xor eax, eax |
1670 | xor eax, eax |
1664 | mov edx, 0x13000000 |
1671 | mov edx, 0x53000000 |
1665 | mov edi, header |
1672 | mov edi, header |
1666 | int 40h |
1673 | int 40h |
1667 | mov al, 48 |
1674 | mov al, 13 |
1668 | push 3 |
1675 | xor edx, edx |
- | 1676 | cmp [fill_width], 0 |
|
1669 | pop ebx |
1677 | jz @f |
1670 | mov ecx, std_colors |
1678 | mov ebx, [wnd_width] |
- | 1679 | sub ebx, [fill_width] |
|
1671 | push 40 |
1680 | sub ebx, 5-1 |
1672 | pop edx |
1681 | shl ebx, 16 |
- | 1682 | mov bx, word [fill_width] |
|
- | 1683 | mov ecx, [skinh-2] |
|
- | 1684 | mov cx, word [wnd_height] |
|
- | 1685 | sub cx, word [skinh] |
|
- | 1686 | sub cx, 5-1 |
|
1673 | int 40h |
1687 | int 0x40 |
- | 1688 | @@: |
|
1674 | ; mov bl, 7 |
1689 | cmp [fill_height], 0 |
1675 | ; int 40h |
1690 | jz @f |
1676 | ; xor ax, ax |
1691 | mov al, 13 |
1677 | ; shr ebx, 16 |
1692 | xor edx, edx |
1678 | ; or ebx, eax |
1693 | mov ebx, 50000h |
1679 | ; mov ecx, [std_colors+16] |
1694 | mov bx, word [wnd_width] |
1680 | ; mov edx, header |
1695 | sub ebx, 9 |
1681 | ; push header.length |
1696 | mov ecx, [wnd_height] |
1682 | ; pop esi |
1697 | sub ecx, [fill_height] |
1683 | ; push 4 |
1698 | sub ecx, 5-1 |
1684 | ; pop eax |
1699 | shl ecx, 16 |
- | 1700 | mov cx, word [fill_height] |
|
1685 | ; int 40h |
1701 | int 0x40 |
- | 1702 | @@: |
|
1686 | ; xor ecx, ecx |
1703 | ; xor ecx, ecx |
1687 | ; call draw_image |
1704 | ; call draw_image |
1688 | and [min_x], 0 |
1705 | and [min_x], 0 |
1689 | and [min_y], 0 |
1706 | and [min_y], 0 |
1690 | mov eax, [cur_width] |
1707 | mov eax, [cur_width] |
Line 1933... | Line 1950... | ||
1933 | pop eax |
1950 | pop eax |
1934 | mov ebx, [heapend] |
1951 | mov ebx, [heapend] |
1935 | push 8 |
1952 | push 8 |
1936 | pop esi |
1953 | pop esi |
1937 | mov edi, console_colors |
1954 | mov edi, console_colors |
- | 1955 | xor ebp, ebp |
|
1938 | int 0x40 |
1956 | int 0x40 |
1939 | push 64 |
1957 | push 64 |
1940 | pop eax |
1958 | pop eax |
1941 | push 1 |
1959 | push 1 |
1942 | pop ebx |
1960 | pop ebx |
Line 2609... | Line 2627... | ||
2609 | shl eax, 2 |
2627 | shl eax, 2 |
2610 | add eax, [ebp + panel1_files - panel1_data] |
2628 | add eax, [ebp + panel1_files - panel1_data] |
2611 | mov [dirinfo.dirdata], eax |
2629 | mov [dirinfo.dirdata], eax |
2612 | lea eax, [ebp + panel1_dir - panel1_data] |
2630 | lea eax, [ebp + panel1_dir - panel1_data] |
2613 | mov [dirinfo.name], eax |
2631 | mov [dirinfo.name], eax |
- | 2632 | .retry: |
|
2614 | push 70 |
2633 | push 70 |
2615 | pop eax |
2634 | pop eax |
2616 | mov ebx, dirinfo |
2635 | mov ebx, dirinfo |
2617 | int 40h |
2636 | int 40h |
2618 | test eax, eax |
2637 | test eax, eax |
2619 | jz .ok |
2638 | jz .ok |
2620 | cmp eax, 6 |
2639 | cmp eax, 6 |
2621 | jz .ok |
2640 | jz .ok |
2622 | ; TODO: add error handling |
2641 | ; Failed to read folder, notify user |
2623 | mov [ebp + panel1_numfiles - panel1_data], 2 |
2642 | cmp [bSilentFolderMode], 0 |
- | 2643 | jnz .dont_notify |
|
- | 2644 | push aContinue |
|
- | 2645 | push aRetry |
|
2624 | mov eax, [ebp + panel1_nfa - panel1_data] |
2646 | mov edx, esp |
- | 2647 | call get_error_msg |
|
- | 2648 | push [dirinfo.name] |
|
- | 2649 | push aCannotReadFolder |
|
- | 2650 | push eax |
|
2625 | shl eax, 2 |
2651 | mov eax, esp |
- | 2652 | push edx |
|
- | 2653 | push 2 |
|
- | 2654 | push eax |
|
- | 2655 | push 3 |
|
- | 2656 | push -1 |
|
- | 2657 | push -1 |
|
- | 2658 | push aError |
|
- | 2659 | call SayErr |
|
- | 2660 | add esp, 5*4 |
|
- | 2661 | test eax, eax |
|
- | 2662 | jz .retry |
|
- | 2663 | .dont_notify: |
|
- | 2664 | mov esi, prev_dir |
|
- | 2665 | cmp byte [esi], 0 |
|
- | 2666 | jz @f |
|
2626 | add eax, [ebp + panel1_files - panel1_data] |
2667 | lea edi, [ebp + panel1_dir - panel1_data] |
2627 | add eax, 32+40 |
2668 | mov ecx, 1024/4 |
2628 | mov word [eax], '..' |
2669 | rep movsd |
2629 | mov byte [eax+2], 0 |
2670 | mov byte [prev_dir], 0 |
- | 2671 | ret |
|
- | 2672 | @@: |
|
- | 2673 | mov [bSilentFolderMode], 1 ; enter silent mode |
|
- | 2674 | mov esi, [dirinfo.name] |
|
2630 | add eax, 304 |
2675 | xor edx, edx |
- | 2676 | .up1: |
|
- | 2677 | lodsb |
|
- | 2678 | test al, al |
|
- | 2679 | jz .up1done |
|
2631 | mov dword [eax], 'Read' |
2680 | cmp al, '/' |
- | 2681 | jnz .up1 |
|
- | 2682 | inc edx |
|
2632 | mov dword [eax+4], ' err' |
2683 | lea edi, [esi-1] |
- | 2684 | jmp .up1 |
|
- | 2685 | .up1done: |
|
- | 2686 | cmp edx, 2 |
|
- | 2687 | jbe .noup |
|
- | 2688 | stosb |
|
2633 | mov dword [eax+8], 'or' |
2689 | jmp read_folder |
- | 2690 | .noup: |
|
2634 | mov eax, [ebp + panel1_files - panel1_data] |
2691 | mov esi, [dirinfo.name] |
2635 | mov dword [eax], 0 |
2692 | mov edi, esi |
- | 2693 | lodsd |
|
- | 2694 | or eax, 0x00202000 |
|
- | 2695 | cmp eax, '/rd/' |
|
- | 2696 | jnz @f |
|
- | 2697 | lodsw |
|
- | 2698 | cmp ax, '1' |
|
- | 2699 | jz .nosetrd |
|
- | 2700 | @@: |
|
- | 2701 | mov eax, '/rd/' |
|
- | 2702 | stosd |
|
2636 | mov dword [eax+4], 304 |
2703 | mov ax, '1' |
- | 2704 | stosw |
|
- | 2705 | jmp read_folder |
|
- | 2706 | .nosetrd: |
|
- | 2707 | ; ¦¥ à ¬¤¨áª ¥ ¯à®ç¨â «áï. ç¨â, ¥ áã¤ì¡ ... |
|
- | 2708 | and dword [ebp + panel1_numfiles - panel1_data], 0 |
|
2637 | and dword [ebp + panel1_index - panel1_data], 0 |
2709 | and dword [ebp + panel1_index - panel1_data], 0 |
2638 | and dword [ebp + panel1_start - panel1_data], 0 |
2710 | and dword [ebp + panel1_start - panel1_data], 0 |
- | 2711 | mov [bSilentFolderMode], 0 ; leave silent mode |
|
2639 | ret |
2712 | ret |
2640 | .ok: |
2713 | .ok: |
2641 | mov eax, [dirinfo.dirdata] |
2714 | mov eax, [dirinfo.dirdata] |
2642 | cmp [eax+8], ebx |
2715 | cmp [eax+8], ebx |
2643 | jz .readdone |
2716 | jz .readdone |
Line 2649... | Line 2722... | ||
2649 | add eax, 0xF |
2722 | add eax, 0xF |
2650 | and eax, not 0xF |
2723 | and eax, not 0xF |
2651 | push eax |
2724 | push eax |
2652 | imul eax, 4+304 |
2725 | imul eax, 4+304 |
2653 | add eax, 32 |
2726 | add eax, 32 |
2654 | call mf_alloc |
2727 | call xmalloc |
2655 | test eax, eax |
2728 | test eax, eax |
2656 | jnz .succ1 |
2729 | jnz .succ1 |
2657 | pop eax |
2730 | pop eax |
2658 | ; TODO: add error handling |
- | |
2659 | jmp .readdone |
2731 | jmp .readdone |
2660 | .succ1: |
2732 | .succ1: |
2661 | mov [ebp + panel1_files - panel1_data], eax |
2733 | mov [ebp + panel1_files - panel1_data], eax |
2662 | pop [ebp + panel1_nfa - panel1_data] |
2734 | pop [ebp + panel1_nfa - panel1_data] |
2663 | jmp read_folder |
2735 | jmp read_folder |
Line 2744... | Line 2816... | ||
2744 | movzx eax, [ebp + panel1_sortmode - panel1_data] |
2816 | movzx eax, [ebp + panel1_sortmode - panel1_data] |
2745 | mov ebx, [compare_fns + eax*4] |
2817 | mov ebx, [compare_fns + eax*4] |
2746 | mov edx, [ebp + panel1_files - panel1_data] |
2818 | mov edx, [ebp + panel1_files - panel1_data] |
2747 | mov ecx, [ebp + panel1_numfiles - panel1_data] |
2819 | mov ecx, [ebp + panel1_numfiles - panel1_data] |
2748 | call sort |
2820 | call sort |
- | 2821 | mov [bSilentFolderMode], 0 ; leave silent mode |
|
2749 | ret |
2822 | ret |
Line 2750... | Line 2823... | ||
2750 | 2823 | ||
2751 | compare_name: |
2824 | compare_name: |
2752 | push eax |
2825 | push eax |
Line 3932... | Line 4005... | ||
3932 | inc edi |
4005 | inc edi |
3933 | @@: |
4006 | @@: |
3934 | pop esi |
4007 | pop esi |
3935 | ret |
4008 | ret |
Line 3936... | Line 4009... | ||
3936 | 4009 | ||
Line 3937... | Line 4010... | ||
3937 | header db 'Kolibri Far 0.19',0 |
4010 | header db 'Kolibri Far 0.2',0 |
3938 | 4011 | ||
Line 3939... | Line 4012... | ||
3939 | nomem_draw db 'No memory for redraw.',0 |
4012 | nomem_draw db 'No memory for redraw.',0 |
3940 | .size = $ - nomem_draw |
4013 | .size = $ - nomem_draw |
Line -... | Line 4014... | ||
- | 4014 | ||
- | 4015 | def_left_dir db '/rd/1',0 |
|
3941 | 4016 | def_right_dir db '/hd0/1',0 |
|
3942 | def_left_dir db '/rd/1',0 |
4017 | |
3943 | def_right_dir db '/hd0/1',0 |
4018 | bSilentFolderMode db 1 |
3944 | 4019 | ||
3945 | if lang eq ru |
4020 | if lang eq ru |
Line 4308... | Line 4383... | ||
4308 | align 4 |
4383 | align 4 |
4309 | cur_width dd 80 |
4384 | cur_width dd 80 |
4310 | cur_height dd 25 |
4385 | cur_height dd 25 |
4311 | saved_width dd -1 |
4386 | saved_width dd -1 |
4312 | saved_height dd -1 |
4387 | saved_height dd -1 |
- | 4388 | fill_width dd 0 |
|
- | 4389 | fill_height dd 0 |
|
4313 | max_width = 256 |
4390 | max_width = 256 |
4314 | max_height = 256 |
4391 | max_height = 256 |
4315 | console_data_ptr dd 0 |
4392 | console_data_ptr dd 0 |
Line 4316... | Line 4393... | ||
4316 | 4393 | ||
Line 4366... | Line 4443... | ||
4366 | dd viewer_OnRedraw |
4443 | dd viewer_OnRedraw |
4367 | dd viewer_OnKey |
4444 | dd viewer_OnKey |
4368 | dd keybar_viewer |
4445 | dd keybar_viewer |
4369 | dd viewer_getname |
4446 | dd viewer_getname |
Line -... | Line 4447... | ||
- | 4447 | ||
- | 4448 | ; additions to this table require changes in tools.inc::get_error_msg |
|
- | 4449 | errors1: |
|
- | 4450 | dd error0msg |
|
- | 4451 | dd error1msg |
|
- | 4452 | dd error2msg |
|
- | 4453 | dd error3msg |
|
- | 4454 | dd error4msg |
|
- | 4455 | dd error5msg |
|
- | 4456 | dd error6msg |
|
- | 4457 | dd error7msg |
|
- | 4458 | dd error8msg |
|
- | 4459 | dd error9msg |
|
- | 4460 | dd error10msg |
|
- | 4461 | dd error11msg |
|
- | 4462 | errors2: |
|
- | 4463 | dd error30msg |
|
- | 4464 | dd error31msg |
|
- | 4465 | dd error32msg |
|
4370 | 4466 | ||
4371 | encodings: |
4467 | encodings: |
4372 | .cp866 = 0 |
4468 | .cp866 = 0 |
Line 4373... | Line 4469... | ||
4373 | .cp1251 = 1 |
4469 | .cp1251 = 1 |
Line 4563... | Line 4659... | ||
4563 | panel_header_color db 1Bh |
4659 | panel_header_color db 1Bh |
4564 | panel_active_header_color db 30h |
4660 | panel_active_header_color db 30h |
4565 | column_header_color db 1Eh |
4661 | column_header_color db 1Eh |
4566 | panel_nscreens_color db 0Bh |
4662 | panel_nscreens_color db 0Bh |
4567 | ; ¨ «®£¨ |
4663 | ; ¨ «®£¨ |
- | 4664 | dialog_colors: |
|
4568 | dialog_main_color db 70h |
4665 | dialog_main_color db 70h |
4569 | dialog_border_color db 70h |
4666 | dialog_border_color db 70h |
4570 | dialog_header_color db 70h |
4667 | dialog_header_color db 70h |
4571 | dialog_normal_btn_color db 70h |
- | |
4572 | dialog_selected_btn_color db 30h |
- | |
4573 | dialog_edit_color db 30h |
4668 | dialog_edit_color db 30h |
4574 | dialog_unmodified_edit_color db 38h |
4669 | dialog_unmodified_edit_color db 38h |
- | 4670 | dialog_normal_btn_color db 70h |
|
- | 4671 | dialog_selected_btn_color db 30h |
|
- | 4672 | ; ।ã¯à¥¦¤¥¨ï ¨ ®è¨¡ª¨ |
|
- | 4673 | warning_colors: |
|
- | 4674 | ; !!! ¤®«¦ë ¡ëâì ⥠¦¥ ¯®«ï ¨ ¢ ⮬ ¦¥ ¯®à浪¥, çâ® ¨ ¤«ï ®¡ëçëå ¤¨ «®£®¢ !!! |
|
- | 4675 | warning_main_color db 4Fh |
|
- | 4676 | warning_border_color db 4Fh |
|
- | 4677 | warning_header_color db 4Fh |
|
- | 4678 | warning_edit_color db 30h |
|
- | 4679 | warning_unmodified_edit_color db 38h |
|
- | 4680 | warning_normal_btn_color db 4Fh |
|
- | 4681 | warning_selected_btn_color db 70h |
|
4575 | ; ¥î |
4682 | ; ¥î |
4576 | menu_normal_color db 3Fh |
4683 | menu_normal_color db 3Fh |
4577 | menu_selected_color db 0Fh |
4684 | menu_selected_color db 0Fh |
4578 | menu_highlight_color db 3Eh |
4685 | menu_highlight_color db 3Eh |
4579 | menu_selected_highlight_color db 0Eh |
4686 | menu_selected_highlight_color db 0Eh |
Line 4752... | Line 4859... | ||
4752 | 4859 | ||
4753 | bWasE0 db 0 |
4860 | bWasE0 db 0 |
Line 4754... | Line 4861... | ||
4754 | ctrlstate db 0 |
4861 | ctrlstate db 0 |
- | 4862 | ||
4755 | 4863 | align 4 |
|
- | 4864 | ; ®®¡é¥¨¥ ® ®¡«®¬¥ ¯à¨ ¢ë¤¥«¥¨¨ ¯ ¬ï⨠|
|
- | 4865 | nomem_dlgdata: |
|
- | 4866 | dd 2 |
|
- | 4867 | dd -1 |
|
- | 4868 | dd -1 |
|
- | 4869 | dd 12 |
|
- | 4870 | dd 2 |
|
- | 4871 | dd 1 |
|
- | 4872 | dd 1 |
|
- | 4873 | dd aError |
|
4756 | align 4 |
4874 | rb 4 |
- | 4875 | dd 0 |
|
- | 4876 | dd 0 |
|
- | 4877 | dd 2 |
|
- | 4878 | ; áâப "No memory" |
|
- | 4879 | dd 1 |
|
- | 4880 | dd 1,0,10,0 |
|
- | 4881 | dd aNoMemory |
|
- | 4882 | dd 1 |
|
- | 4883 | ; ª®¯ª "Ok" |
|
- | 4884 | dd 2 |
|
- | 4885 | dd 4,1,7,1 |
|
- | 4886 | dd aOk |
|
- | 4887 | dd 0xD |
|
- | 4888 | ||
4757 | f8_confirm_dlgdata: |
4889 | f8_confirm_dlgdata: |
4758 | dd 0 |
4890 | dd 1 |
4759 | .x dd -1 |
4891 | .x dd -1 |
4760 | .y dd -1 |
4892 | .y dd -1 |
4761 | .width dd ? |
4893 | .width dd ? |
Line 4802... | Line 4934... | ||
4802 | dd aCancel |
4934 | dd aCancel |
4803 | .flags2 dd 0 |
4935 | .flags2 dd 0 |
Line 4804... | Line 4936... | ||
4804 | 4936 | ||
4805 | ; ¤¨ «®£ ª®¯¨à®¢ ¨ï |
4937 | ; ¤¨ «®£ ª®¯¨à®¢ ¨ï |
4806 | copy_dlgdata: |
4938 | copy_dlgdata: |
4807 | dd 0 |
4939 | dd 1 |
4808 | .x dd -1 |
4940 | .x dd -1 |
4809 | .y dd -1 |
4941 | .y dd -1 |
4810 | .width dd ? |
4942 | .width dd ? |
4811 | .height dd 4 |
4943 | .height dd 4 |
Line 4867... | Line 4999... | ||
4867 | aCopyCaption db '®¯¨à®¢ ¨¥',0 |
4999 | aCopyCaption db '®¯¨à®¢ ¨¥',0 |
4868 | aCopy db '[ ®¯¨à®¢ âì ]',0 |
5000 | aCopy db '[ ®¯¨à®¢ âì ]',0 |
4869 | aCopyLength = $ - aCopy - 1 |
5001 | aCopyLength = $ - aCopy - 1 |
4870 | aCopy1 db '®¯¨à®¢ âì "',0 |
5002 | aCopy1 db '®¯¨à®¢ âì "',0 |
4871 | aCopy2 db '" ¢:',0 |
5003 | aCopy2 db '" ¢:',0 |
- | 5004 | aError db '訡ª ',0 |
|
- | 5005 | aContinue db 'த®«¦¨âì',0 |
|
- | 5006 | aRetry db '®¢â®à¨âì',0 |
|
- | 5007 | error0msg db 'âà ®... ¥â ®è¨¡ª¨',0 |
|
- | 5008 | error1msg db 'âà ®... ¥ ®¯à¥¤¥«¥ ¡ § ¨/¨«¨ à §¤¥« ¦ñá⪮£® ¤¨áª ',0 |
|
- | 5009 | error2msg db 'ãªæ¨ï ¥ ¯®¤¤¥à¦¨¢ ¥âáï ¤«ï ¤ ®© ä ©«®¢®© á¨á⥬ë',0 |
|
- | 5010 | error3msg db '¥¨§¢¥áâ ï ä ©«®¢ ï á¨á⥬ ',0 |
|
- | 5011 | error4msg db 'âà ®... 訡ª 4',0 |
|
- | 5012 | error5msg db ' ©« ¥ ©¤¥',0 |
|
- | 5013 | error6msg db ' ©« § ª®ç¨«áï',0 |
|
- | 5014 | error7msg db 'âà ®... ª § â¥«ì ¢¥ ¯ ¬ï⨠¯à¨«®¦¥¨ï',0 |
|
- | 5015 | error8msg db '¨áª § ¯®«¥',0 |
|
- | 5016 | error9msg db ' ©«®¢ ï áâàãªâãà à §àãè¥ ',0 |
|
- | 5017 | error10msg db '®áâ㯠§ ¯à¥éñ',0 |
|
- | 5018 | error11msg db '訡ª ãáâனá⢠',0 |
|
- | 5019 | error30msg db '¥¤®áâ â®ç® ¯ ¬ïâ¨',0 |
|
- | 5020 | error31msg db ' ©« ¥ ï¥âáï ¨á¯®«ï¥¬ë¬',0 |
|
- | 5021 | error32msg db '«¨èª®¬ ¬®£® ¯à®æ¥áᮢ',0 |
|
- | 5022 | aUnknownError db '¥¨§¢¥áâë© ª®¤ ®è¨¡ª¨: ',0 |
|
- | 5023 | aCannotReadFolder db '¥ ¬®£ã ¯à®ç¨â âì ¯ ¯ªã',0 |
|
4872 | else |
5024 | else |
4873 | aDeleteCaption db 'Delete',0 |
5025 | aDeleteCaption db 'Delete',0 |
4874 | aConfirmDeleteText db 'Do you wish to delete ',0 |
5026 | aConfirmDeleteText db 'Do you wish to delete ',0 |
4875 | aDeleteFolder db 'the folder',0 |
5027 | aDeleteFolder db 'the folder',0 |
4876 | aConfirmDeleteTextMax = $ - aConfirmDeleteText - 2 |
5028 | aConfirmDeleteTextMax = $ - aConfirmDeleteText - 2 |
Line 4884... | Line 5036... | ||
4884 | aCopyCaption db 'Copy',0 |
5036 | aCopyCaption db 'Copy',0 |
4885 | aCopy db '[ Copy ]',0 |
5037 | aCopy db '[ Copy ]',0 |
4886 | aCopyLength = $ - aCopy - 1 |
5038 | aCopyLength = $ - aCopy - 1 |
4887 | aCopy1 db 'Copy "',0 |
5039 | aCopy1 db 'Copy "',0 |
4888 | aCopy2 db '" to:',0 |
5040 | aCopy2 db '" to:',0 |
- | 5041 | aError db 'Error',0 |
|
- | 5042 | aContinue db 'Continue',0 |
|
- | 5043 | aRetry db 'Retry',0 |
|
- | 5044 | error0msg db 'Strange... No error',0 |
|
- | 5045 | error1msg db 'Strange... Hard disk base and/or partition not defined',0 |
|
- | 5046 | error2msg db 'The file system does not support this function',0 |
|
- | 5047 | error3msg db 'Unknown file system',0 |
|
- | 5048 | error4msg db 'Strange... Error 4',0 |
|
- | 5049 | error5msg db 'File not found',0 |
|
- | 5050 | error6msg db 'End of file',0 |
|
- | 5051 | error7msg db 'Strange... Pointer lies outside of application memory',0 |
|
- | 5052 | error8msg db 'Disk is full',0 |
|
- | 5053 | error9msg db 'File structure is destroyed',0 |
|
- | 5054 | error10msg db 'Access denied',0 |
|
- | 5055 | error11msg db 'Device error',0 |
|
- | 5056 | error30msg db 'Not enough memory',0 |
|
- | 5057 | error31msg db 'File is not executable',0 |
|
- | 5058 | error32msg db 'Too many processes',0 |
|
- | 5059 | aUnknownError db 'Unknown error code: ',0 |
|
- | 5060 | aCannotReadFolder db 'Cannot read folder',0 |
|
4889 | end if |
5061 | end if |
- | 5062 | aOk db 'OK',0 |
|
- | 5063 | aNoMemory db 'No memory!',0 |
|
Line 4890... | Line 5064... | ||
4890 | 5064 | ||
4891 | execinfo: |
5065 | execinfo: |
4892 | dd 7 |
5066 | dd 7 |
4893 | dd 0 |
5067 | dd 0 |
Line 4939... | Line 5113... | ||
4939 | panel2_files dd ? |
5113 | panel2_files dd ? |
4940 | panel2_dir rb 1024 |
5114 | panel2_dir rb 1024 |
Line 4941... | Line 5115... | ||
4941 | 5115 | ||
Line -... | Line 5116... | ||
- | 5116 | ;console_data rb max_width*max_height*2 |
|
- | 5117 | ||
4942 | ;console_data rb max_width*max_height*2 |
5118 | nomem_dlgsavearea rb (12+4)*(3+3)*2 |
4943 | 5119 | ||
Line 4944... | Line 5120... | ||
4944 | cur_header rb max_width |
5120 | cur_header rb max_width |
4945 | tmp dd ? |
5121 | tmp dd ? |
Line 4952... | Line 5128... | ||
4952 | min_x dd ? |
5128 | min_x dd ? |
4953 | max_x dd ? |
5129 | max_x dd ? |
4954 | used_width dd ? |
5130 | used_width dd ? |
4955 | used_height dd ? |
5131 | used_height dd ? |
Line -... | Line 5132... | ||
- | 5132 | ||
- | 5133 | wnd_width dd ? |
|
- | 5134 | wnd_height dd ? |
|
4956 | 5135 | ||
4957 | column_left dd ? |
5136 | column_left dd ? |
4958 | column_top dd ? |
5137 | column_top dd ? |
4959 | column_width dd ? |
5138 | column_width dd ? |
4960 | column_height dd ? |
5139 | column_height dd ? |
Line 4965... | Line 5144... | ||
4965 | 5144 | ||
4966 | saved_file_name: |
5145 | saved_file_name: |
4967 | procinfo rb 1024 |
5146 | procinfo rb 1024 |
Line -... | Line 5147... | ||
- | 5147 | lower_file_name = procinfo + 512 |
|
- | 5148 | ||
- | 5149 | error_msg rb 128 |
|
- | 5150 | ||
4968 | lower_file_name = procinfo + 512 |
5151 | prev_dir rb 1024 |
4969 | 5152 | ||
Line 4970... | Line 5153... | ||
4970 | driveinfo rb 32+304 |
5153 | driveinfo rb 32+304 |
4971 | tmpname rb 32 |
5154 | tmpname rb 32 |