Rev 1949 | Rev 2455 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1949 | Rev 2288 | ||
---|---|---|---|
Line 19... | Line 19... | ||
19 | ;; ;; |
19 | ;; ;; |
20 | ;; See file COPYING for details ;; |
20 | ;; See file COPYING for details ;; |
21 | ;; ;; |
21 | ;; ;; |
22 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
22 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 23... | Line 23... | ||
23 | 23 | ||
Line 24... | Line 24... | ||
24 | $Revision: 1949 $ |
24 | $Revision: 2288 $ |
25 | 25 | ||
26 | ;*************************************************************************** |
26 | ;*************************************************************************** |
27 | ; Function |
27 | ; Function |
Line 543... | Line 543... | ||
543 | 543 | ||
544 | ;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= |
544 | ;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= |
545 | uglobal |
545 | uglobal |
546 | align 4 |
546 | align 4 |
- | 547 | ; VendID (2), DevID (2), Revision = 0 (1), Class Code (3), FNum (1), Bus (1) |
|
547 | ; VendID (2), DevID (2), Revision = 0 (1), Class Code (3), FNum (1), Bus (1) |
548 | pci_emu_dat: |
548 | pci_emu_dat: times 30*10 db 0 |
549 | times 30*10 db 0 |
549 | endg |
550 | endg |
550 | ;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= |
551 | ;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= |
551 | align 4 |
552 | align 4 |
552 | sys_pcibios: |
553 | sys_pcibios: |
Line 577... | Line 578... | ||
577 | 578 | ||
578 | .not_PCI_BIOS_PRESENT: |
579 | .not_PCI_BIOS_PRESENT: |
579 | cmp ebp, 2 ; FIND_PCI_DEVICE |
580 | cmp ebp, 2 ; FIND_PCI_DEVICE |
580 | jne .not_FIND_PCI_DEVICE |
581 | jne .not_FIND_PCI_DEVICE |
- | 582 | mov ebx, pci_emu_dat |
|
581 | mov ebx, pci_emu_dat |
583 | ..nxt: |
582 | ..nxt: cmp [ebx], dx |
584 | cmp [ebx], dx |
583 | jne ..no |
585 | jne ..no |
584 | cmp [ebx + 2], cx |
586 | cmp [ebx + 2], cx |
585 | jne ..no |
587 | jne ..no |
586 | dec si |
588 | dec si |
587 | jns ..no |
589 | jns ..no |
588 | mov bx, [ebx + 4] |
590 | mov bx, [ebx + 4] |
589 | xor ah, ah |
591 | xor ah, ah |
- | 592 | jmp .return_ab |
|
590 | jmp .return_ab |
593 | ..no: |
591 | ..no: cmp word[ebx], 0 |
594 | cmp word[ebx], 0 |
592 | je ..dev_not_found |
595 | je ..dev_not_found |
593 | add ebx, 10 |
596 | add ebx, 10 |
594 | jmp ..nxt |
597 | jmp ..nxt |
595 | ..dev_not_found: |
598 | ..dev_not_found: |
Line 599... | Line 602... | ||
599 | .not_FIND_PCI_DEVICE: |
602 | .not_FIND_PCI_DEVICE: |
600 | cmp ebp, 3 ; FIND_PCI_CLASS_CODE |
603 | cmp ebp, 3 ; FIND_PCI_CLASS_CODE |
601 | jne .not_FIND_PCI_CLASS_CODE |
604 | jne .not_FIND_PCI_CLASS_CODE |
602 | mov esi, pci_emu_dat |
605 | mov esi, pci_emu_dat |
603 | shl ecx, 8 |
606 | shl ecx, 8 |
- | 607 | ..nxt2: |
|
604 | ..nxt2: cmp [esi], ecx |
608 | cmp [esi], ecx |
605 | jne ..no2 |
609 | jne ..no2 |
606 | mov bx, [esi] |
610 | mov bx, [esi] |
607 | xor ah, ah |
611 | xor ah, ah |
608 | jmp .return_ab |
612 | jmp .return_ab |
- | 613 | ..no2: |
|
609 | ..no2: cmp dword[esi], 0 |
614 | cmp dword[esi], 0 |
610 | je ..dev_not_found |
615 | je ..dev_not_found |
611 | add esi, 10 |
616 | add esi, 10 |
612 | jmp ..nxt2 |
617 | jmp ..nxt2 |
Line 613... | Line 618... | ||
613 | 618 | ||
Line 639... | Line 644... | ||
639 | xor ah, ah ; SUCCESSFUL |
644 | xor ah, ah ; SUCCESSFUL |
640 | jmp .return_abc |
645 | jmp .return_abc |
641 | .not_WRITE_CONFIG: |
646 | .not_WRITE_CONFIG: |
642 | .unsupported_func: |
647 | .unsupported_func: |
643 | mov ah, 0x81 ; FUNC_NOT_SUPPORTED |
648 | mov ah, 0x81 ; FUNC_NOT_SUPPORTED |
- | 649 | .return: |
|
644 | .return:mov dword[esp + 4 ], edi |
650 | mov dword[esp + 4 ], edi |
645 | mov dword[esp + 8], esi |
651 | mov dword[esp + 8], esi |
646 | .return_abcd: |
652 | .return_abcd: |
647 | mov dword[esp + 24], edx |
653 | mov dword[esp + 24], edx |
648 | .return_abc: |
654 | .return_abc: |
649 | mov dword[esp + 28], ecx |
655 | mov dword[esp + 28], ecx |