⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 devinfo.asm

📁 AMI 主板的BIOS源码。
💻 ASM
字号:
        page    ,132
        title . PCI/PnP Device Name Display
;*****************************************************************;
;*****************************************************************;
;**                                                             **;
;**      (C)Copyright 1985-1996, American Megatrends, Inc.      **;
;**                                                             **;
;**                     All Rights Reserved.                    **;
;**                                                             **;
;**           6145-F Northbelt Pkwy, Norcross, GA 30071         **;
;**                                                             **;
;**                     Phone (770)-246-8600                    **;
;**                                                             **;
;*****************************************************************;
;*****************************************************************;
;*****************************************************************;
;---------------------------------------;
        include dim.equ
        include pci.equ
        include pnp.equ
        include devnode.equ
        include rt.equ
	include	sis530.equ
	include	makeflag.equ
;---------------------------------------;
					; (CORE0228-)>
	include	me5.equ
	include	me9.equ
;        extrn   MsgPnpDevices:abs
;        extrn   MsgPciDevices:abs
;        extrn   MsgPciSlot:abs
;        extrn   MsgPciOnboard:abs
;        extrn   MsgPciBridge:abs
;
;        extrn   StrDevVga:abs
;        extrn   StrDevUnknown:abs
;        extrn   StrDevScsi:abs
;        extrn   StrDevIde:abs
;        extrn   StrDevRaid:abs
;        extrn   StrDevMassStorage:abs
;        extrn   StrDevEthernet:abs
;        extrn   StrDevTokenRing:abs
;        extrn   StrDevNetwork:abs
;        extrn   StrDevVga:abs
;        extrn   StrDevDisplay:abs
;        extrn   StrDevMultimedia:abs
;        extrn   StrDevMemory:abs
;        extrn   StrDevPciBridge:abs
;        extrn   StrDevPcmciaBridge:abs
;        extrn   StrDevCardBus:abs
;        extrn   StrDevBridge:abs
;        extrn   StrDevIoPort:abs
;        extrn   StrDevSystemDevice:abs
;        extrn   StrDevInputDevice:abs
;        extrn   StrDevDockingStation:abs
;        extrn   StrDevProcessor:abs
;        extrn   StrDevFirewire:abs
;        extrn   StrDevSsa:abs
;        extrn   StrDevUsb:abs
;        extrn   StrDevFibreChannel:abs
;        extrn   StrDevSerialBus:abs
;        extrn   StrIrq:abs

        extrn   read_cursor_posn:near
        extrn   set_cursor_posn:near
        extrn   display_message_set:near

        public  DisplayPnpPciDevices

;---------------------------------------;

cgroup  group   _text
_text   segment word use16 public 'CODE'
assume  cs:cgroup
assume  ds:cgroup
assume  es:cgroup
.386

;---------------------------------------;

DevTypeEntry    struc
BaseClass       db ?
SubClass        db ?
DevTypeStr      db ?
DevTypeEntry    ends

DevTypeTableStart       label byte

;              Base    Sub
;              Class   Class   Pointer to Description String
;----------------------------------------------------------------------
DevTypeEntry < 00h,    00h,    StrDevScsi            >
DevTypeEntry < 00h,    01h,    StrDevVga             >
DevTypeUnknown label byte
DevTypeEntry < 00h,    80h,    StrDevUnknown         >

DevTypeEntry < 01h,    00h,    StrDevScsi            >
DevTypeEntry < 01h,    01h,    StrDevIde             >
DevTypeEntry < 01h,    04h,    StrDevRaid            >
DevTypeEntry < 01h,    80h,    StrDevMassStorage     >

DevTypeEntry < 02h,    00h,    StrDevEthernet        >
DevTypeEntry < 02h,    01h,    StrDevTokenRing       >
DevTypeEntry < 02h,    80h,    StrDevNetwork         >

DevTypeEntry < 03h,    00h,    StrDevVga             >
DevTypeEntry < 03h,    80h,    StrDevDisplay         >

DevTypeEntry < 04h,    80h,    StrDevMultimedia      >
DevTypeEntry < 05h,    80h,    StrDevMemory          >

DevTypeEntry < 06h,    04h,    StrDevPciBridge       >
DevTypeEntry < 06h,    05h,    StrDevPcmciaBridge    >
DevTypeEntry < 06h,    07h,    StrDevCardBus         >
DevTypeEntry < 06h,    80h,    StrDevBridge          >

DevTypeEntry < 07h,    80h,    StrDevIoPort          >
DevTypeEntry < 08h,    80h,    StrDevSystemDevice    >
DevTypeEntry < 09h,    80h,    StrDevInputDevice     >
DevTypeEntry < 0Ah,    80h,    StrDevDockingStation  >
DevTypeEntry < 0Bh,    80h,    StrDevProcessor       >

DevTypeEntry < 0Ch,    00h,    StrDevFirewire        >
DevTypeEntry < 0Ch,    02h,    StrDevSsa             >
DevTypeEntry < 0Ch,    03h,    StrDevUsb             >
DevTypeEntry < 0Ch,    04h,    StrDevFibreChannel    >
DevTypeEntry < 0Ch,    80h,    StrDevSerialBus       >

DevTypeTableEnd label byte

;---------------------------------------;


;---------------------------------------;
; DisplayPnpPciDevices                  ;
;---------------------------------------;--------------------------------------;
; This function displays all the names of all Plug and Play ISA devices and    ;
; all PCI devices that are present in the system.                              ;
;                                                                              ;
; Input: Nothing                                                               ;
;                                                                              ;
; Output: Nothing                                                              ;
;                                                                              ;
; Destroys: Nothing                                                            ;
;------------------------------------------------------------------------------;
DisplayPnpPciDevices    proc near
        pushad
        push    ds
        push    es

        push    cs                      ;Set DS = ES = CS
        push    cs
        pop     ds
        pop     es

        call    read_cursor_posn        ;DH,DL = row,col
        dec     dh
        call    set_cursor_posn
        xor     ax, ax
        call    DisplayPnpDevices
        adc     ax, 0                   ;AX += 0 if no PnP cards, 1 otherwise
        call    DisplayPciDevices
        mov     eax, '纪腿'
        call    DisplayHorizLine        ;Display '韧屯屯屯

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -