Subversion Repositories Kolibri OS

Rev

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

Rev 472 Rev 514
Line 1... Line 1...
1
$Revision: 472 $
1
$Revision: 514 $
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 52... Line 52...
52
    jnz   hdreadcache
52
    jnz   hdreadcache
Line 53... Line 53...
53
 
53
 
54
    call  find_empty_slot       ; ret in edi
54
    call  find_empty_slot       ; ret in edi
55
    cmp   [hd_error],0
55
    cmp   [hd_error],0
-
 
56
    jne   return_01
-
 
57
; DMA read is permitted if [allow_dma_access]=1 or 2
-
 
58
        cmp     [allow_dma_access], 2
56
    jne   return_01
59
        ja      .nodma
57
        cmp     [dma_hdd], 1
60
        cmp     [dma_hdd], 1
58
        jnz     .nodma
61
        jnz     .nodma
59
        call    hd_read_dma
62
        call    hd_read_dma
60
        jmp     @f
63
        jmp     @f
Line 227... Line 230...
227
    cmp   eax,[PARTITION_START]
230
    cmp   eax,[PARTITION_START]
228
    jb    danger
231
    jb    danger
229
    cmp   eax,[PARTITION_END]
232
    cmp   eax,[PARTITION_END]
230
    ja    danger
233
    ja    danger
Line -... Line 234...
-
 
234
 
231
 
235
; DMA write is permitted only if [allow_dma_access]=1
232
        cmp     [allow_dma_write], 1
236
        cmp     [allow_dma_access], 2
233
        jnz     .nodma
237
        jae     .nodma
234
        cmp     [dma_hdd], 1
238
        cmp     [dma_hdd], 1
235
        jnz     .nodma
239
        jnz     .nodma
236
; Ž¡ê¥¤¨­ï¥¬ § ¯¨áì 楯®çª¨ ¯®á«¥¤®¢ â¥«ì­ëå ᥪâ®à®¢ ¢ ®¤­® ®¡à é¥­¨¥ ª ¤¨áªã
240
; Ž¡ê¥¤¨­ï¥¬ § ¯¨áì 楯®çª¨ ¯®á«¥¤®¢ â¥«ì­ëå ᥪâ®à®¢ ¢ ®¤­® ®¡à é¥­¨¥ ª ¤¨áªã
237
        cmp     ecx, 1
241
        cmp     ecx, 1
Line 599... Line 603...
599
cache_chain_ptr dd      0
603
cache_chain_ptr dd      0
600
cache_chain_size        db      0
604
cache_chain_size        db      0
601
cache_chain_started     db      0
605
cache_chain_started     db      0
602
dma_task_switched       db      0
606
dma_task_switched       db      0
603
dma_hdd         db      0
607
dma_hdd         db      0
604
allow_dma_write db      0
608
allow_dma_access db      0
605
endg
609
endg
Line 606... Line 610...
606
 
610
 
607
align 4
611
align 4
608
hdd_irq14:
612
hdd_irq14: