Rev 335 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 335 | Rev 379 | ||
---|---|---|---|
Line 14... | Line 14... | ||
14 | ;; 23.06.2006 LFN start application - diamond ;; |
14 | ;; 23.06.2006 LFN start application - diamond ;; |
15 | ;; 15.06.2006 LFN get/set file/folder info - diamond ;; |
15 | ;; 15.06.2006 LFN get/set file/folder info - diamond ;; |
16 | ;; 27.05.2006 LFN create/rewrite file - diamond ;; |
16 | ;; 27.05.2006 LFN create/rewrite file - diamond ;; |
17 | ;; 04.05.2006 LFN read folder - diamond ;; |
17 | ;; 04.05.2006 LFN read folder - diamond ;; |
18 | ;; 29.04.2006 Elimination of hangup after the ;; |
18 | ;; 29.04.2006 Elimination of hangup after the ;; |
19 | ;; expiration hd_wait_timeout - Mario79 ;; |
19 | ;; expiration hd_wait_timeout - Mario79 ;; |
20 | ;; 23.04.2006 LFN read file - diamond ;; |
20 | ;; 23.04.2006 LFN read file - diamond ;; |
21 | ;; 28.01.2006 find all Fat16/32 partition in all input point ;; |
21 | ;; 28.01.2006 find all Fat16/32 partition in all input point ;; |
22 | ;; to MBR, see file part_set.inc - Mario79 ;; |
22 | ;; to MBR, see file part_set.inc - Mario79 ;; |
23 | ;; 15.01.2005 get file size/attr/date, file_append - ATV ;; |
23 | ;; 15.01.2005 get file size/attr/date, file_append - ATV ;; |
24 | ;; 04.12.2004 skip volume label, file delete bug fixed - ATV ;; |
24 | ;; 04.12.2004 skip volume label, file delete bug fixed - ATV ;; |
Line 122... | Line 122... | ||
122 | jmp reserve_hd1 |
122 | jmp reserve_hd1 |
Line 123... | Line 123... | ||
123 | 123 | ||
Line 124... | Line 124... | ||
124 | reserve_ok1: |
124 | reserve_ok1: |
125 | 125 | ||
126 | push eax |
126 | push eax |
127 | mov eax,[0x3000] |
127 | mov eax,[CURRENT_TASK] |
128 | shl eax,5 |
128 | shl eax,5 |
129 | mov eax,[eax+0x3000+TASKDATA.pid] |
129 | mov eax,[eax+CURRENT_TASK+TASKDATA.pid] |
130 | mov [hd1_status],eax |
130 | mov [hd1_status],eax |
131 | pop eax |
131 | pop eax |
132 | sti |
132 | sti |
Line 182... | Line 182... | ||
182 | ret |
182 | ret |
183 | .IDE_Channel_2: |
183 | .IDE_Channel_2: |
184 | mov [IDE_Channel_2],0 |
184 | mov [IDE_Channel_2],0 |
185 | ret |
185 | ret |
186 | ;******************************************** |
186 | ;******************************************** |
187 | problem_partition db 0 ; used for partitions search |
187 | problem_partition db 0 ; used for partitions search |
Line 188... | Line 188... | ||
188 | 188 | ||
Line 189... | Line 189... | ||
189 | include 'part_set.inc' |
189 | include 'part_set.inc' |
190 | 190 | ||
Line 223... | Line 223... | ||
223 | sfc_no_change: |
223 | sfc_no_change: |
224 | mov [fat_in_cache],eax ; save fat sector |
224 | mov [fat_in_cache],eax ; save fat sector |
225 | call hd_read |
225 | call hd_read |
226 | cmp [hd_error],0 |
226 | cmp [hd_error],0 |
227 | jne sfc_error |
227 | jne sfc_error |
228 | 228 | ||
Line 229... | Line 229... | ||
229 | 229 | ||
230 | sfc_in_cache: |
230 | sfc_in_cache: |
231 | cmp [fs_type],16 |
231 | cmp [fs_type],16 |
Line 630... | Line 630... | ||
630 | jmp gdcl2 |
630 | jmp gdcl2 |
Line 631... | Line 631... | ||
631 | 631 | ||
632 | gdcl1: |
632 | gdcl1: |
633 | call hd_read |
633 | call hd_read |
634 | cmp [hd_error],0 |
634 | cmp [hd_error],0 |
Line 635... | Line 635... | ||
635 | jne gdc_error |
635 | jne gdc_error |
636 | 636 | ||
Line 637... | Line 637... | ||
637 | add ebx,512 ; update pointer |
637 | add ebx,512 ; update pointer |
Line 1327... | Line 1327... | ||
1327 | jz delete_name_end ; no |
1327 | jz delete_name_end ; no |
Line 1328... | Line 1328... | ||
1328 | 1328 | ||
1329 | mov ebx,buffer |
1329 | mov ebx,buffer |
1330 | call hd_read ; read previous sector |
1330 | call hd_read ; read previous sector |
1331 | cmp [hd_error],0 |
1331 | cmp [hd_error],0 |
Line 1332... | Line 1332... | ||
1332 | jne delete_name_end |
1332 | jne delete_name_end |
Line 1333... | Line 1333... | ||
1333 | 1333 | ||
1334 | mov ebx,buffer+0x1e0 ; start from last entry |
1334 | mov ebx,buffer+0x1e0 ; start from last entry |
Line 1398... | Line 1398... | ||
1398 | mov [hd1_status],0 |
1398 | mov [hd1_status],0 |
1399 | xor eax,eax |
1399 | xor eax,eax |
1400 | ret |
1400 | ret |
Line 1401... | Line 1401... | ||
1401 | 1401 | ||
1402 | info_access_denied: |
1402 | info_access_denied: |
1403 | add esp,4 |
1403 | add esp,4 |
1404 | xor edx,edx |
1404 | xor edx,edx |
1405 | xor ebx,ebx |
1405 | xor ebx,ebx |
1406 | xor ecx,ecx |
1406 | xor ecx,ecx |
1407 | mov eax,ERROR_ACCESS_DENIED |
1407 | mov eax,ERROR_ACCESS_DENIED |
Line 1554... | Line 1554... | ||
1554 | pop edi |
1554 | pop edi |
1555 | .noaccess_2: |
1555 | .noaccess_2: |
1556 | or ebx, -1 |
1556 | or ebx, -1 |
1557 | mov eax, ERROR_ACCESS_DENIED |
1557 | mov eax, ERROR_ACCESS_DENIED |
1558 | ret |
1558 | ret |
1559 | 1559 | ||
1560 | .noaccess_3: |
1560 | .noaccess_3: |
1561 | add esp,4 |
1561 | add esp,4 |
1562 | .noaccess_1: |
1562 | .noaccess_1: |
1563 | add esp,4 |
1563 | add esp,4 |
1564 | .noaccess_4: |
1564 | .noaccess_4: |
Line 1627... | Line 1627... | ||
1627 | ; we may read directly to given buffer |
1627 | ; we may read directly to given buffer |
1628 | push ebx |
1628 | push ebx |
1629 | mov ebx, edx |
1629 | mov ebx, edx |
1630 | call hd_read |
1630 | call hd_read |
1631 | cmp [hd_error],0 |
1631 | cmp [hd_error],0 |
1632 | jne .noaccess_1 |
1632 | jne .noaccess_1 |
1633 | pop ebx |
1633 | pop ebx |
1634 | add edx, 512 |
1634 | add edx, 512 |
1635 | sub ecx, 512 |
1635 | sub ecx, 512 |
1636 | jmp .skip |
1636 | jmp .skip |
1637 | .force_buf: |
1637 | .force_buf: |