📄 oemrpci.asm
字号:
; | PCI Bus Dev Num | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Physical Reserved |
; Device 2 | Number (Shl 3) | Reg Routable to Pin | Reg Routable Pin | Reg Routable Pin | Reg Routable Pin | Slot Num Byte |
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
pci_irq_entry < 00h, 010h, 041h, 1101111010111000b, 042h, 1101111010111000b, 043h, 1101111010111000b, 044h, 1101111010111000b, 0, 0 >
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; Slot 1 | Device Location | Int A Pin | Int B Pin | Int C Pin | Int D Pin | |
; +-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; AD#20 | PCI Bus Dev Num | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Physical Reserved |
; Device 9 | Number (Shl 3) | Reg Routable to Pin | Reg Routable Pin | Reg Routable Pin | Reg Routable Pin | Slot Num Byte |
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
pci_irq_entry < 00h, 048h, 041h, 1101111010111000b, 042h, 1101111010111000b, 043h, 1101111010111000b, 044h, 1101111010111000b, 1, 0 >
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; Slot 2 | Device Location | Int A Pin | Int B Pin | Int C Pin | Int D Pin | |
; +-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; AD#21 | PCI Bus Dev Num | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Physical Reserved |
; Device 10 | Number (Shl 3) | Reg Routable to Pin | Reg Routable Pin | Reg Routable Pin | Reg Routable Pin | Slot Num Byte |
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
pci_irq_entry < 00h, 050h, 044h, 1101111010111000b, 041h, 1101111010111000b, 042h, 1101111010111000b, 043h, 1101111010111000b, 2, 0 >
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; Slot 3 | Device Location | Int A Pin | Int B Pin | Int C Pin | Int D Pin | |
; +-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; AD#22 | PCI Bus Dev Num | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Physical Reserved |
; Device 11 | Number (Shl 3) | Reg Routable to Pin | Reg Routable Pin | Reg Routable Pin | Reg Routable Pin | Slot Num Byte |
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
pci_irq_entry < 00h, 058h, 043h, 1101111010111000b, 044h, 1101111010111000b, 041h, 1101111010111000b, 042h, 1101111010111000b, 3, 0 >
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; Audio | Device Location | Int A Pin | Int B Pin | Int C Pin | Int D Pin | |
; +-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; AD#23 | PCI Bus Dev Num | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Physical Reserved |
; Device 12 | Number (Shl 3) | Reg Routable to Pin | Reg Routable Pin | Reg Routable Pin | Reg Routable Pin | Slot Num Byte |
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
pci_irq_entry < 00h, 060h, 044h, 1101111010111000b, 000h, 0000000000000000b, 000h, 0000000000000000b, 000h, 0000000000000000b, 0, 0 >
align 16
public ms_irq_route_table_sign
ms_irq_route_table_sign label byte
db "$PIR"
ms_irq_route_table_ver dw 0100h
ms_irq_route_table_size dw 32+(6*16)
ms_irq_route_table_bus db 00h
ms_irq_route_table_dev db S5595_PCI2ISA_DEV_FUNC_NUM
ms_irq_route_table_irq dw 0h
ms_irq_route_table_id dd 00081039h ; SiS5595
ms_irq_route_table_mini dd 0h
ms_irq_route_table_resd db 11 dup(0)
ms_irq_route_table_cksm db 0
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; USB | Device Location | Int A Pin | Int B Pin | Int C Pin | Int D Pin | |
; +-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; | PCI Bus Dev Num | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Physical Reserved |
; Device 1 | Number (Shl 3) | Reg Routable to Pin | Reg Routable Pin | Reg Routable Pin | Reg Routable Pin | Slot Num Byte |
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
pci_irq_entry < 00h, 008h, 062h, 1101111010111000b, 000h, 0000000000000000b, 000h, 0000000000000000b, 000h, 0000000000000000b, 0, 0 >
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; AGP Bridge | Device Location | Int A Pin | Int B Pin | Int C Pin | Int D Pin | |
; +-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; | PCI Bus Dev Num | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Physical Reserved |
; Device 2 | Number (Shl 3) | Reg Routable to Pin | Reg Routable Pin | Reg Routable Pin | Reg Routable Pin | Slot Num Byte |
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
pci_irq_entry < 00h, 010h, 041h, 1101111010111000b, 042h, 1101111010111000b, 043h, 1101111010111000b, 044h, 1101111010111000b, 0, 0 >
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; Slot 1 | Device Location | Int A Pin | Int B Pin | Int C Pin | Int D Pin | |
; +-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; AD#20 | PCI Bus Dev Num | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Physical Reserved |
; Device 9 | Number (Shl 3) | Reg Routable to Pin | Reg Routable Pin | Reg Routable Pin | Reg Routable Pin | Slot Num Byte |
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
pci_irq_entry < 00h, 048h, 041h, 1101111010111000b, 042h, 1101111010111000b, 043h, 1101111010111000b, 044h, 1101111010111000b, 1, 0 >
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; Slot 2 | Device Location | Int A Pin | Int B Pin | Int C Pin | Int D Pin | |
; +-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; AD#21 | PCI Bus Dev Num | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Physical Reserved |
; Device 10 | Number (Shl 3) | Reg Routable to Pin | Reg Routable Pin | Reg Routable Pin | Reg Routable Pin | Slot Num Byte |
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
pci_irq_entry < 00h, 050h, 044h, 1101111010111000b, 041h, 1101111010111000b, 042h, 1101111010111000b, 043h, 1101111010111000b, 2, 0 >
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; Slot 3 | Device Location | Int A Pin | Int B Pin | Int C Pin | Int D Pin | |
; +-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; AD#22 | PCI Bus Dev Num | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Physical Reserved |
; Device 11 | Number (Shl 3) | Reg Routable to Pin | Reg Routable Pin | Reg Routable Pin | Reg Routable Pin | Slot Num Byte |
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
pci_irq_entry < 00h, 058h, 043h, 1101111010111000b, 044h, 1101111010111000b, 041h, 1101111010111000b, 042h, 1101111010111000b, 3, 0 >
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; Audio | Device Location | Int A Pin | Int B Pin | Int C Pin | Int D Pin | |
; +-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
; AD#23 | PCI Bus Dev Num | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Chipset Bitmap of IRQs | Physical Reserved |
; Device 12 | Number (Shl 3) | Reg Routable to Pin | Reg Routable Pin | Reg Routable Pin | Reg Routable Pin | Slot Num Byte |
;-------------+-------------------+---------------------------+---------------------------+---------------------------+---------------------------+--------------------+
pci_irq_entry < 00h, 060h, 044h, 1101111010111000b, 000h, 0000000000000000b, 000h, 0000000000000000b, 000h, 0000000000000000b, 0, 0 >
;---------------------------------------------------------------------------;
COMMENT ~
~
endif
;------------------------------------------------------------------------------;
; ;
; 16/32 Bit Code ;
; ;
;------------------------------------------------------------------------------;
;---------------------------------------;
; rth_pci_search_xlat ;
;---------------------------------------;--------------------------------------;
; This function translates a PCI device search index to a logical PCI device ;
; number. In the core BIOS there are several loops that search for each device;
; on the PCI bus. In most systems it is acceptable to search from device 0 ;
; to device 1F or from device 1F down to 0. But in some systems the search ;
; order may need to be more complex than a simple first-to-last or ;
; last-to-first scheme. This routine allows any type of search order to be ;
; implemented. In general there are three possibilties: ;
; ;
; 1. Simple First-to-Last search order (0 - 1F) ;
; This is the easiest case. To implement this type of search order, just ;
; do nothing since BL is already set properly on entry. ;
; ;
; 2. Simple Last-to-First search order (1F - 0) ;
; This is the most common search order because it gives priority to off ;
; board devices (usually higher device numbers) over on board devices ;
; (usually lower device numbers). To implement this type of search order ;
; just do: SUB BL, 1Fh ;
; NEG BL ;
; RET ;
; ;
; 3. Complex search order ;
; This type of search order may be needed if an on board device's number ;
; lies between two PCI expansion slots. Another use for this complex order ;
; is to control the searching order with setup questions. To implement a ;
; complex search order some sort of list must be used. ;
; ;
; NOTE: This function does not need to be modified for most platforms. ;
; ;
; NOTE: This function is assembled twice, once for real mode code, and once ;
; for 32 bit protected mode code. All calls must be made using the ;
; callproc macro. Do not modify and segment registers. ;
; ;
; Input: BH = PCI bus number that is being searched ;
; BL = PCI device search index "n" (in the range 0 - 1F) ;
; ;
; Output: BL = The "nth" PCI device number to search for (in the range 0 - 1F) ;
; ;
; Destroys: Nothing ;
;------------------------------------------------------------------------------;
pubproc rth_pci_search_xlat
defproc rth_pci_search_xlat
; sub bl, 1Fh ;Default is search Last-to-First
; neg bl
ret
endproc rth_pci_search_xlat
;------------------------------------------------------------------------------;
;*****************************************************************;
;*****************************************************************;
;** **;
;** (C)Copyright 1985-1995, American Megatrends, Inc. **;
;** **;
;** All Rights Reserved. **;
;** **;
;** 6145-F Northbelt Pkwy, Norcross, GA 30071 **;
;** **;
;** Phone (770)-263-8181 **;
;** **;
;*****************************************************************;
;*****************************************************************;
ifndef RT32
_text ends
else
_runtime32 ends
endif
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -