Subversion Repositories Kolibri OS

Rev

Rev 431 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 431 Rev 465
Line 1... Line 1...
1
$Revision: 431 $
1
$Revision: 465 $
2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3
;;                                                              ;;
3
;;                                                                      ;;
4
;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;;
4
;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;;
5
;; Distributed under terms of the GNU General Public License    ;;
5
;; Distributed under terms of the GNU General Public License    ;;
6
;;                                                              ;;
6
;;                                                              ;;
Line 1123... Line 1123...
1123
fd_prev_sector          dd      ?
1123
fd_prev_sector          dd      ?
1124
fd_prev_prev_sector     dd      ?
1124
fd_prev_prev_sector     dd      ?
1125
endg
1125
endg
Line 1126... Line 1126...
1126
 
1126
 
1127
flp_root_next:
1127
flp_root_next:
1128
        cmp     edi, 0xD200-0x20
1128
        cmp     edi, OS_BASE+0xD200-0x20
1129
        jae     @f
1129
        jae     @f
1130
        add     edi, 0x20
1130
        add     edi, 0x20
1131
        ret     ; CF=0
1131
        ret     ; CF=0
1132
@@:
1132
@@:
Line 1170... Line 1170...
1170
flp_rootmem_extend_dir:
1170
flp_rootmem_extend_dir:
1171
        stc
1171
        stc
1172
        ret
1172
        ret
Line 1173... Line 1173...
1173
 
1173
 
1174
flp_notroot_next:
1174
flp_notroot_next:
1175
        cmp     edi, 0xD200-0x20
1175
        cmp     edi, OS_BASE+0xD200-0x20
1176
        jae     flp_notroot_next_sector
1176
        jae     flp_notroot_next_sector
1177
        add     edi, 0x20
1177
        add     edi, 0x20
1178
        ret     ; CF=0
1178
        ret     ; CF=0
1179
flp_notroot_next_sector:
1179
flp_notroot_next_sector:
Line 1221... Line 1221...
1221
        add     eax, 31
1221
        add     eax, 31
1222
        call    save_chs_sector
1222
        call    save_chs_sector
1223
        popa
1223
        popa
1224
        ret
1224
        ret
1225
flp_notroot_next_write:
1225
flp_notroot_next_write:
1226
        cmp     edi, 0xD200
1226
        cmp     edi, OS_BASE+0xD200
1227
        jae     @f
1227
        jae     @f
1228
        ret
1228
        ret
1229
@@:
1229
@@:
1230
        call    flp_notroot_end_write
1230
        call    flp_notroot_end_write
1231
        jmp     flp_notroot_next_sector
1231
        jmp     flp_notroot_next_sector
Line 1462... Line 1462...
1462
        call    fat_get_name
1462
        call    fat_get_name
1463
        jc      .l2
1463
        jc      .l2
1464
        cmp     byte [edi+11], 0xF
1464
        cmp     byte [edi+11], 0xF
1465
        jnz     .do_bdfe
1465
        jnz     .do_bdfe
1466
        add     edi, 0x20
1466
        add     edi, 0x20
1467
        cmp     edi, 0xD200
1467
        cmp     edi, OS_BASE+0xD200
1468
        jb      .do_bdfe
1468
        jb      .do_bdfe
1469
        pop     eax
1469
        pop     eax
1470
        inc     eax
1470
        inc     eax
1471
        dec     byte [esp+262*2+12]
1471
        dec     byte [esp+262*2+12]
1472
        jz      .done
1472
        jz      .done
Line 1494... Line 1494...
1494
        js      .l2
1494
        js      .l2
1495
        inc     dword [edx+4]   ; new file block copied
1495
        inc     dword [edx+4]   ; new file block copied
1496
        call    fat_entry_to_bdfe
1496
        call    fat_entry_to_bdfe
1497
.l2:
1497
.l2:
1498
        add     edi, 0x20
1498
        add     edi, 0x20
1499
        cmp     edi, 0xD200
1499
        cmp     edi, OS_BASE+0xD200
1500
        jb      .l1
1500
        jb      .l1
1501
        pop     eax
1501
        pop     eax
1502
        inc     eax
1502
        inc     eax
1503
        dec     byte [esp+262*2+12]
1503
        dec     byte [esp+262*2+12]
1504
        jz      .done
1504
        jz      .done
Line 1893... Line 1893...
1893
        repnz   scasw
1893
        repnz   scasw
1894
        mov     al, ERROR_DISK_FULL
1894
        mov     al, ERROR_DISK_FULL
1895
        jnz     .ret
1895
        jnz     .ret
1896
        dec     edi
1896
        dec     edi
1897
        dec     edi
1897
        dec     edi
-
 
1898
 
-
 
1899
        mov eax, edi
1898
        lea     eax, [edi-(FLOPPY_FAT)]
1900
        sub eax, FLOPPY_FAT
-
 
1901
 
1899
        shr     eax, 1                  ; eax = cluster
1902
        shr     eax, 1                  ; eax = cluster
1900
        mov     word [edi], 0xFFF       ; mark as last cluster
1903
        mov     word [edi], 0xFFF       ; mark as last cluster
1901
        xchg    edi, [esp+4]
1904
        xchg    edi, [esp+4]
1902
        cmp     dword [esp], 0
1905
        cmp     dword [esp], 0
1903
        jz      .first
1906
        jz      .first
Line 2574... Line 2577...
2574
fs_FloppyExecute:
2577
fs_FloppyExecute:
2575
        mov     edx, [ebx]
2578
        mov     edx, [ebx]
2576
        mov     ebx, [ebx+4]
2579
        mov     ebx, [ebx+4]
2577
        test    ebx, ebx
2580
        test    ebx, ebx
2578
        jz      @f
2581
        jz      @f
2579
        add     ebx, std_application_base_address
2582
    ;    add     ebx, std_application_base_address
2580
@@:
2583
@@:
Line 2581... Line 2584...
2581
 
2584
 
2582
;----------------------------------------------------------------
2585
;----------------------------------------------------------------
2583
;
2586
;