Rev 3840 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3840 | Rev 5951 | ||
---|---|---|---|
1 | ;------------------------------------------------------------- |
1 | ;------------------------------------------------------------- |
2 | create_directory: |
2 | create_directory: |
3 | call clear_file_buffer |
3 | call clear_file_buffer |
4 | mov edi, edit1 |
4 | mov edi, edit1 |
5 | mov ed_size, dword 0 |
5 | mov ed_size, dword 0 |
6 | mov ed_pos, dword 0 |
6 | mov ed_pos, dword 0 |
7 | default_box |
7 | default_box |
8 | mov [create_dir_name],byte 0 |
8 | mov [create_dir_name],byte 0 |
9 | mcall 66, 1, 0 |
9 | mcall 66, 1, 0 |
10 | jmp .red |
10 | jmp .red |
11 | .red_1: |
11 | .red_1: |
12 | call draw_window |
12 | call draw_window |
13 | .red: |
13 | .red: |
14 | call draw_create_dir |
14 | call draw_create_dir |
15 | .still: |
15 | .still: |
16 | mcall 10 |
16 | mcall 10 |
17 | cmp eax,1 |
17 | cmp eax,1 |
18 | je .red_1 |
18 | je .red_1 |
19 | cmp eax,2 |
19 | cmp eax,2 |
20 | je .key_create |
20 | je .key_create |
21 | cmp eax,3 |
21 | cmp eax,3 |
22 | je .button_create |
22 | je .button_create |
23 | mouse_edit_box create_editboxes |
23 | mouse_edit_box create_editboxes |
24 | jmp .still |
24 | jmp .still |
25 | ;------------------------------------------------------------- |
25 | ;------------------------------------------------------------- |
26 | .button_create: |
26 | .button_create: |
27 | mov eax,17 |
27 | mov eax,17 |
28 | mcall |
28 | mcall |
29 | test ah,ah |
29 | test ah,ah |
30 | jz .still |
30 | jz .still |
31 | cmp ah,160 |
31 | cmp ah,160 |
32 | je .exit_with_create |
32 | je .exit_with_create |
33 | cmp ah,161 |
33 | cmp ah,161 |
34 | je .exit_without_create |
34 | je .exit_without_create |
35 | cmp ah,1 |
35 | cmp ah,1 |
36 | jne .still |
36 | jne .still |
37 | mcall -1 |
37 | mcall -1 |
38 | .exit_with_create: |
38 | .exit_with_create: |
39 | call create_directory_1 |
39 | call create_directory_1 |
40 | cmp [select_panel_counter],0 |
40 | cmp [select_panel_counter],0 |
41 | jne @f |
41 | jne @f |
42 | call proc_read_left_folder |
42 | call proc_read_left_folder |
43 | jmp .exit_without_create |
43 | jmp .exit_without_create |
44 | @@: |
44 | @@: |
45 | call proc_read_right_folder |
45 | call proc_read_right_folder |
46 | .exit_without_create: |
46 | .exit_without_create: |
47 | mcall 66, 1, 1 |
47 | mcall 66, 1, 1 |
48 | jmp red |
48 | jmp red |
49 | ;------------------------------------------------------------- |
49 | ;------------------------------------------------------------- |
50 | .key_create: |
50 | .key_create: |
51 | mov eax,2 |
51 | mov eax,2 |
52 | mcall |
52 | mcall |
53 | cmp ah,13 |
53 | cmp ah,13 |
54 | je .exit_with_create |
54 | je .exit_with_create |
55 | cmp ah,27 |
55 | cmp ah,27 |
56 | je .exit_without_create |
56 | je .exit_without_create |
57 | key_edit_box create_editboxes |
57 | key_edit_box create_editboxes |
58 | jmp .still |
58 | jmp .still |
59 | ;------------------------------------------------------------- |
59 | ;------------------------------------------------------------- |
60 | draw_create_dir: |
60 | draw_create_dir: |
61 | mov ecx,[window_high] |
61 | mov ecx,[window_high] |
62 | mov ebx,[window_width] |
62 | mov ebx,[window_width] |
63 | shr ecx,1 |
63 | shr ecx,1 |
64 | shr ebx,1 |
64 | shr ebx,1 |
65 | sub ecx,30 |
65 | sub ecx,30 |
66 | sub ebx,87 |
66 | sub ebx,87 |
67 | shl ecx,16 |
67 | shl ecx,16 |
68 | shl ebx,16 |
68 | shl ebx,16 |
69 | mov cx,60 |
69 | mov cx,60 |
70 | mov bx,174 |
70 | mov bx,174 |
71 | mcall 13, , ,0x6060ff ;0xff |
71 | mcall 13, , ,0x6060ff ;0xff |
72 | pusha |
72 | pusha |
73 | shr ebx,16 |
73 | shr ebx,16 |
74 | add ebx,10 |
74 | add ebx,10 |
75 | shr ecx,16 |
75 | shr ecx,16 |
76 | add ecx,17 |
76 | add ecx,17 |
77 | mov eax,create_editboxes |
77 | mov eax,create_editboxes |
78 | mov dword [eax+4],ebx |
78 | mov dword [eax+4],ebx |
79 | mov dword [eax+8],ecx |
79 | mov dword [eax+8],ecx |
80 | draw_edit_box create_editboxes |
80 | draw_edit_box create_editboxes |
81 | popa |
81 | popa |
82 | pusha |
82 | pusha |
83 | add ebx,70 shl 16 |
83 | add ebx,70 shl 16 |
84 | add ecx,37 shl 16 |
84 | add ecx,37 shl 16 |
85 | mov cx,15 |
85 | mov cx,15 |
86 | mov bx,40 |
86 | mov bx,40 |
87 | mov esi,0xffffff |
87 | mov esi,0xffffff |
88 | mov edx,0x40000000+160 |
88 | mov edx,0x40000000+160 |
89 | mov eax,8 |
89 | mov eax,8 |
90 | mcall |
90 | mcall |
91 | add ebx,50 shl 16 |
91 | add ebx,50 shl 16 |
92 | inc edx |
92 | inc edx |
93 | mcall |
93 | mcall |
94 | popa |
94 | popa |
95 | 95 | ||
96 | push ebx ecx |
96 | push ebx ecx |
97 | add ebx,70 shl 16 |
97 | add ebx,70 shl 16 |
98 | add ecx,37 shl 16 |
98 | add ecx,37 shl 16 |
99 | mov bx,40 |
99 | mov bx,40 |
100 | mov cx,15 |
100 | mov cx,15 |
101 | mov edx,0 |
101 | mov edx,0 |
102 | push ebx ecx |
102 | push ebx ecx |
103 | sub ecx,1 shl 16 |
103 | sub ecx,1 shl 16 |
104 | sub ebx,1 shl 16 |
104 | sub ebx,1 shl 16 |
105 | mov bx,42 |
105 | mov bx,42 |
106 | mov cx,17 |
106 | mov cx,17 |
107 | mcall |
107 | mcall |
108 | add ebx,50 shl 16 |
108 | add ebx,50 shl 16 |
109 | mcall |
109 | mcall |
110 | pop ecx ebx |
110 | pop ecx ebx |
111 | mov edx,0xff7700 |
111 | mov edx,0xff7700 |
112 | mcall |
112 | mcall |
113 | mov edx,0xaa00 |
113 | mov edx,0xaa00 |
114 | add ebx,50 shl 16 |
114 | add ebx,50 shl 16 |
115 | mcall |
115 | mcall |
116 | pop ecx ebx |
116 | pop ecx ebx |
117 | 117 | ||
118 | shr ecx,16 |
118 | shr ecx,16 |
119 | mov bx,cx |
119 | mov bx,cx |
120 | add ebx,30 shl 16+5 |
120 | add ebx,30 shl 16+1 |
121 | mcall 4, ,0x90ffffff,create_dir ;[confirmation_type] |
121 | mcall 4, ,0x90ffffff,create_dir ;[confirmation_type] |
122 | add ebx,48 shl 16+36 |
122 | add ebx,48 shl 16+36 |
123 | mov edx,type_yes |
123 | mov edx,type_yes |
124 | mcall |
124 | mcall |
125 | add ebx,56 shl 16 |
125 | add ebx,56 shl 16 |
126 | mov edx,type_no |
126 | mov edx,type_no |
127 | mcall |
127 | mcall |
128 | ret |
128 | ret |
129 | ;------------------------------------------------------------- |
129 | ;------------------------------------------------------------- |
130 | create_directory_1: |
130 | create_directory_1: |
131 | mov edx,create_dir_name |
131 | mov edx,create_dir_name |
132 | cmp [select_panel_counter],0 |
132 | cmp [select_panel_counter],0 |
133 | jne @f |
133 | jne @f |
134 | mov esi,read_folder_name |
134 | mov esi,read_folder_name |
135 | jmp .start |
135 | jmp .start |
136 | @@: |
136 | @@: |
137 | mov esi,read_folder_1_name |
137 | mov esi,read_folder_1_name |
138 | .start: |
138 | .start: |
139 | mov edi,file_name |
139 | mov edi,file_name |
140 | xor eax,eax |
140 | xor eax,eax |
141 | @@: |
141 | @@: |
142 | cld |
142 | cld |
143 | lodsb |
143 | lodsb |
144 | stosb |
144 | stosb |
145 | test eax,eax |
145 | test eax,eax |
146 | jnz @b |
146 | jnz @b |
147 | mov [edi-1], byte '/' |
147 | mov [edi-1], byte '/' |
148 | mov esi,edx |
148 | mov esi,edx |
149 | mov [error_pointer], edx ;start_file_data.name |
149 | mov [error_pointer], edx ;start_file_data.name |
150 | @@: |
150 | @@: |
151 | cld |
151 | cld |
152 | lodsb |
152 | lodsb |
153 | stosb |
153 | stosb |
154 | test eax,eax |
154 | test eax,eax |
155 | jnz @b |
155 | jnz @b |
156 | call create_directory_f70 |
156 | call create_directory_f70 |
157 | cmp eax,0 |
157 | cmp eax,0 |
158 | je @f |
158 | je @f |
159 | ; mov ebx,0 |
159 | ; mov ebx,0 |
160 | ; sub ebx,eax |
160 | ; sub ebx,eax |
161 | ; mov eax,ebx |
161 | ; mov eax,ebx |
162 | call start_error_window_thread |
162 | call start_error_window_thread |
163 | @@: |
163 | @@: |
164 | ; call create_directory_f70 |
164 | ; call create_directory_f70 |
165 | ret |
165 | ret |
166 | ;------------------------------------------------------------- |
166 | ;------------------------------------------------------------- |
167 | clear_file_buffer: |
167 | clear_file_buffer: |
168 | xor eax,eax |
168 | xor eax,eax |
169 | mov edi,create_dir_name |
169 | mov edi,create_dir_name |
170 | mov ecx,256/4 |
170 | mov ecx,256/4 |
171 | cld |
171 | cld |
172 | rep stosd |
172 | rep stosd |
173 | ret |
173 | ret |
174 | ;------------------------------------------------------------- |
174 | ;------------------------------------------------------------- |