Rev 1417 | Rev 1435 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1417 | Rev 1418 | ||
---|---|---|---|
Line 69... | Line 69... | ||
69 | jnz @r |
69 | jnz @r |
70 | cld |
70 | cld |
Line 71... | Line 71... | ||
71 | 71 | ||
72 | mcall 68,22,od_com_area_name,8192,0x09 |
72 | mcall 68,22,od_com_area_name,8192,0x09 |
- | 73 | mov od_com_area,eax |
|
- | 74 | ||
- | 75 | mov esi,od_openfile_pach |
|
- | 76 | mov edi,od_opendir_pach |
|
- | 77 | call .copy_dir_path |
|
73 | mov od_com_area,eax |
78 | |
74 | OpenDialog_exit |
79 | OpenDialog_exit |
75 | ;***************************************************************************** |
80 | ;***************************************************************************** |
76 | ;***************************************************************************** |
81 | ;***************************************************************************** |
77 | .start: |
82 | .start: |
Line 126... | Line 131... | ||
126 | mov esi,od_com_area |
131 | mov esi,od_com_area |
127 | add esi,4 |
132 | add esi,4 |
128 | mov edi,od_openfile_pach ;string |
133 | mov edi,od_openfile_pach ;string |
129 | call .copy |
134 | call .copy |
130 | mov od_status,1 |
135 | mov od_status,1 |
- | 136 | mov esi,od_openfile_pach |
|
- | 137 | mov edi,od_opendir_pach |
|
- | 138 | call .copy_dir_path |
|
131 | jmp .3 ;kopen_1 |
139 | jmp .3 ;kopen_1 |
132 | .2: |
140 | .2: |
133 | mov od_status,0 |
141 | mov od_status,0 |
134 | jmp .3 ; still |
142 | jmp .3 ; still |
135 | .1: |
143 | .1: |
Line 145... | Line 153... | ||
145 | stosb |
153 | stosb |
146 | test eax,eax |
154 | test eax,eax |
147 | jnz @b |
155 | jnz @b |
148 | ret |
156 | ret |
149 | ;---------------------------------------------- |
157 | ;---------------------------------------------- |
- | 158 | .copy_dir_path: |
|
- | 159 | xor eax,eax |
|
- | 160 | cmp [esi],al |
|
- | 161 | jne @f |
|
- | 162 | mov [edi],al |
|
- | 163 | mov [ebx],al |
|
- | 164 | xor ebx,ebx |
|
- | 165 | inc ebx |
|
- | 166 | ret |
|
- | 167 | @@: |
|
- | 168 | cld |
|
- | 169 | lodsb |
|
- | 170 | stosb |
|
- | 171 | test eax,eax |
|
- | 172 | jnz @b |
|
- | 173 | mov esi,edi |
|
- | 174 | dec esi |
|
- | 175 | @@: |
|
- | 176 | std |
|
- | 177 | lodsb |
|
- | 178 | cmp al,'/' |
|
- | 179 | jnz @b |
|
- | 180 | ||
- | 181 | ; push esi |
|
- | 182 | ; add esi,2 |
|
- | 183 | ;; mov edi,ebx ;file_name |
|
- | 184 | ;; xor ebx,ebx |
|
- | 185 | ;@@: |
|
- | 186 | ; cld |
|
- | 187 | ; lodsb |
|
- | 188 | ;; stosb |
|
- | 189 | ; inc ebx |
|
- | 190 | ; test eax,eax |
|
- | 191 | ; jnz @b |
|
- | 192 | ; pop esi |
|
- | 193 | ||
- | 194 | mov [esi+1], byte 0 |
|
- | 195 | cld |
|
- | 196 | ret |
|
- | 197 | ;---------------------------------------------- |
|
150 | align 4 |
198 | align 4 |
151 | start_open_dialog: |
199 | start_open_dialog: |
152 | .subfunction dd 7 |
200 | .subfunction dd 7 |
153 | .flags dd 0 |
201 | .flags dd 0 |
154 | .parameter dd 0 ;od_com_area_name |
202 | .parameter dd 0 ;od_com_area_name |