Rev 593 | Rev 709 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 593 | Rev 597 | ||
---|---|---|---|
Line 3... | Line 3... | ||
3 | ;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;; |
3 | ;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;; |
4 | ;; Distributed under terms of the GNU General Public License ;; |
4 | ;; Distributed under terms of the GNU General Public License ;; |
5 | ;; ;; |
5 | ;; ;; |
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 7... | Line 7... | ||
7 | 7 | ||
Line 8... | Line 8... | ||
8 | $Revision: 593 $ |
8 | $Revision: 597 $ |
9 | 9 | ||
Line 475... | Line 475... | ||
475 | dd IDE_DMA |
475 | dd IDE_DMA |
476 | dw 0x2000 |
476 | dw 0x2000 |
477 | dw 0x8000 |
477 | dw 0x8000 |
Line 478... | Line 478... | ||
478 | 478 | ||
- | 479 | dma_cur_sector dd not 40h |
|
479 | dma_cur_sector dd not 40h |
480 | dma_hdpos dd 0 |
480 | irq14_func dd hdd_irq_null |
481 | irq14_func dd hdd_irq_null |
481 | irq15_func dd hdd_irq_null |
482 | irq15_func dd hdd_irq_null |
Line 482... | Line 483... | ||
482 | endg |
483 | endg |
Line 555... | Line 556... | ||
555 | 556 | ||
556 | align 4 |
557 | align 4 |
557 | hd_read_dma: |
558 | hd_read_dma: |
558 | push eax |
559 | push eax |
- | 560 | push edx |
|
- | 561 | mov edx,[dma_hdpos] |
|
- | 562 | cmp edx,[hdpos] |
|
559 | push edx |
563 | jne .notread |
560 | mov edx, [dma_cur_sector] |
564 | mov edx, [dma_cur_sector] |
561 | cmp eax, edx |
565 | cmp eax, edx |
562 | jb .notread |
566 | jb .notread |
563 | add edx, 15 |
567 | add edx, 15 |
Line 657... | Line 661... | ||
657 | .wait_ide1: |
661 | .wait_ide1: |
658 | call wait_for_sector_dma_ide1 |
662 | call wait_for_sector_dma_ide1 |
659 | @@: |
663 | @@: |
660 | cmp [hd_error], 0 |
664 | cmp [hd_error], 0 |
661 | jnz hd_read_error |
665 | jnz hd_read_error |
- | 666 | mov eax,[hdpos] |
|
- | 667 | mov [dma_hdpos],eax |
|
662 | pop edx |
668 | pop edx |
663 | pop eax |
669 | pop eax |
664 | mov [dma_cur_sector], eax |
670 | mov [dma_cur_sector], eax |
665 | jmp hd_read_dma |
671 | jmp hd_read_dma |