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

📄 smbios.inc

📁 This program displays all SMBIOS/DMI information within the BIOS. The information is organized as a
💻 INC
📖 第 1 页 / 共 5 页
字号:
;' $Header$
;
; (C) Copyright 2000-2002 Qualitas, Inc.  All rights reserved.
;
; SMBIOS.INC
;
; SMBIOS and DMI macros, strucs, and equates
; This data is current through SMBIOS Version 2.3.1 - 16 March 1999.


@SMBIOS_SIG equ <'_MS_'>        ; SMBIOS signature

@DMI_SIG  equ	<'_IMD_'>       ; DMI signature
@DMI_SIG1 equ	'IMD_'          ; DMI ...       part 1
@DMI_SIG2 equ	'_'             ; DMI ...       ...  2


DMI_STR struc

DMI_SIG db	@DMI_SIG	; 00:  Signature
DMI_CSUM db	?		; 05:  Checksum
DMI_LEN dw	?		; 06:  Length of DMI Struc Table pointed to by DMI_ADDR
DMI_ADDR dd	?		; 08:  Physical address of Strucs
DMI_CNT dw	?		; 0C:  # Strucs pointed to by DMI_ADDR
DMI_REV db	?		; 0E:  Revision as BCD byte

DMI_STR ends


SMBIOS_STR struc

SMBIOS_SIG db	@SMBIOS_SIG	; 00:  Signature
SMBIOS_CSUM db	?		; 04:  Checksum
SMBIOS_LEN db	?		; 05:  Entry point length
SMBIOS_REVMAJ db ?		; 06:  Major revision #
SMBIOS_REVMIN db ?		; 07:  Minor revision #
SMBIOS_MAXSTR dw ?		; 08:  Maximum Structure Size
SMBIOS_EPREV db ?		; 0A:  Entry Point Revision
SMBIOS_RSVD db	5 dup (?)	; 0B:  Reserved
SMBIOS_DMI db	(type DMI_STR) dup (?) ; 10:  DMI Structure

SMBIOS_STR ends



@SMB_BIOSINFO equ	0	; BIOS Information
@SMB_SYSINFO  equ	1	; System Information
@SMB_BASEINFO equ	2	; Base Board Information
@SMB_SYSENC   equ	3	; System Enclosure or Chassis
@SMB_CPU      equ	4	; Processor Information
@SMB_MEMCTRL  equ	5	; Memory Controller Information
@SMB_MEMMOD   equ	6	; Memory Module Information
@SMB_CACHE    equ	7	; Cache Information
@SMB_PORTCON  equ	8	; Port Connector Information
@SMB_SLOTS    equ	9	; System Slots
@SMB_ONBOARD  equ      10	; On Board Devices Information
@SMB_OEMSTR   equ      11	; OEM Strings
@SMB_SYSCFG   equ      12	; System Configuration Options
@SMB_LANG     equ      13	; BIOS Language Information
@SMB_GRP      equ      14	; Group Associations
@SMB_EVENT    equ      15	; System Event Log
@SMB_PHYSMEM  equ      16	; Physical Memory Array
@SMB_MEMDEV   equ      17	; Memory Device
@SMB_MEMERR32 equ      18	; 32-bit Memory Error Information
@SMB_MEMMAP   equ      19	; Memory Array Mapped Address
@SMB_MEMDEVMAP equ     20	; Memory Device Mapped Address
@SMB_POINTER  equ      21	; Built-in Pointing Device
@SMB_BATTERY  equ      22	; Portable Battery
@SMB_RESET    equ      23	; System Reset
@SMB_SECURITY equ      24	; Hardware Security
@SMB_POWER    equ      25	; System Power Controls
@SMB_VOLTAGE  equ      26	; Voltage Probe
@SMB_COOL     equ      27	; Cooling Device
@SMB_TEMP     equ      28	; Tempature Probe
@SMB_CURRENT  equ      29	; Electrical Current Probe
@SMB_OOBREM   equ      30	; Out-of-Band Remote Access
@SMB_BIS      equ      31	; Boot Integrity Services (BIS) Entry Point
@SMB_SYSBOOT  equ      32	; System Boot Information
@SMB_MEMERR64 equ      33	; 64-bit Memory Error Information
@SMB_MGT      equ      34	; Management Device
@SMB_MGTCMP   equ      35	; Management Device Component
@SMB_MGTTHR   equ      36	; Management Device Threshold Data
@SMB_MEMCHAN  equ      37	; Memory Channel
@SMB_IPMI     equ      38	; IPMI Device Information
@SMB_SPS      equ      39	; System Power Supply
@SMB_INACTIVE equ     126	; Inactive
@SMB_EOT      equ     127	; End-of-Table


SMBHDR_STR struc		; Header structure

SMBHDR_TYPE db	?		; Type
SMBHDR_LEN  db	?		; Length in bytes (including the header
				; but not the string set)
SMBHDR_HNDL dw	?		; Handle

SMBHDR_STR ends


; =========================== Type 0:  BIOS Information ======================

SMB0_STR struc			; Type 0:  BIOS Information

	db	(type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB0_VENDOR  db ?		; 04:  Vendor string
SMB0_VERSION db ?		; 05:  Version string
SMB0_START   dw ?		; 06:  Starting address segment
SMB0_RELDATE db ?		; 08:  Release date string
SMB0_ROMSIZE db ?		; 09:  ROM Size (n) where 64K*(n+1) is physical size
SMB0_CHAR_EDQLO_ELO dw ?	; 0A:  Characteristics record (see SMB0_CHAR_REC_EDQLO_ELO)
SMB0_CHAR_EDQLO_EHI dw ?	; 0C:  ...		      (see SMB0_CHAR_REC_EDQLO_EHI)
SMB0_CHAR_EDQHI dd ?		; 0E:  ...		      (see SMB0_CHAR_REC_EDQHI)
SMB0_CHAREXT1 db ?		; 12:  Characteristics extension #1 record
SMB0_CHAREXT2 db ?		; 13:  ...			 #2 ...

SMB0_STR ends


; BIOS Characteristics High Dword

SMB0_CHAR_REC_EDQHI record $SMB0_CHAR_SYSVEN:16,$SMB0_CHAR_BIOSVEN:16


; BIOS Characteristics Low Dword, High Word
SMB0_CHAR_REC_EDQLO_EHI record \
$SMB0_CHAR_NEC98:1, \
$SMB0_CHAR_INT10:1, \
$SMB0_CHAR_INT17:1, \
$SMB0_CHAR_INT14:1, \
$SMB0_CHAR_INT09:1, \
$SMB0_CHAR_INT05:1, \
$SMB0_CHAR_INT13_288:1, \
$SMB0_CHAR_INT13_720:1, \
$SMB0_CHAR_INT13_12:1, \
$SMB0_CHAR_INT13_360:1, \
$SMB0_CHAR_INT13_TOSH12:1, \
$SMB0_CHAR_INT13_NEC12:1, \
$SMB0_CHAR_EDD:1, \
$SMB0_CHAR_BOOTCARD:1, \
$SMB0_CHAR_ROMSOCKET:1, \
$SMB0_CHAR_BOOTSEL:1


; BIOS Characteristics Low Dword, Low Word
SMB0_CHAR_REC_EDQLO_ELO record \
$SMB0_CHAR_BOOTCD:1, \
$SMB0_CHAR_ESCD:1, \
$SMB0_CHAR_VESA:1, \
$SMB0_CHAR_SHADOW:1, \
$SMB0_CHAR_FLASH:1, \
$SMB0_CHAR_APM:1, \
$SMB0_CHAR_PNP:1, \
$SMB0_CHAR_PCCARD:1, \
$SMB0_CHAR_PCI:1, \
$SMB0_CHAR_EISA:1, \
$SMB0_CHAR_MCA:1, \
$SMB0_CHAR_ISA:1, \
$SMB0_CHAR_XCHAR:1, \
$SMB0_CHAR_UNK:1, \
$SMB0_CHAR_RSV0:2


; BIOS Characteristics Extension Byte 1

SMB0_CHAREXT1_REC record \
$SMB0_CHAREXT1_SBATT:1, \
$SMB0_CHAREXT1_BOOT1394:1, \
$SMB0_CHAREXT1_BOOTZIP:1, \
$SMB0_CHAREXT1_LS120:1, \
$SMB0_CHAREXT1_I2O:1, \
$SMB0_CHAREXT1_AGP:1, \
$SMB0_CHAREXT1_USBL:1, \
$SMB0_CHAREXT1_ACPI:1


; BIOS Characteristics Extension Byte 2

SMB0_CHAREXT2_REC record \
$SMB0_CHAREXT2_RSV1:6,	  \
$SMB0_CHAREXT2_NETBOOT:1, \
$SMB0_CHAREXT2_BOOTSPEC:1


; =========================== Type 1:  System Information ====================

SMB1_STR struc			; Type 1: System Information

	db	(type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB1_MFR  db	?		; 04:  Manufacturer string
SMB1_PROD db	?		; 05:  Product Name string
SMB1_VER  db	?		; 06:  Version string
SMB1_SN   db	?		; 07:  Serial # string
SMB1_UUID db	16 dup (?)	; 08:  Universal Unique ID #
SMB1_WAKE db	?		; 18:  Wake-up Type enum (see @SMB1_WAKE_xxx)

SMB1_STR ends


@SMB1_WAKE_RSV0  equ	0	; Reserved 0
@SMB1_WAKE_OTHER equ	1	; Other
@SMB1_WAKE_UNK	 equ	2	; Unknown
@SMB1_WAKE_APM	 equ	3	; APM Timer
@SMB1_WAKE_MODEM equ	4	; Modem Ring
@SMB1_WAKE_LAN	 equ	5	; LAN Remote
@SMB1_WAKE_POWER equ	6	; Power Switch
@SMB1_WAKE_PCI	 equ	7	; PCI PME#
@SMB1_WAKE_ACRES equ	8	; AC Power Restored


; =========================== Type 2:  Base Board Information ================

SMB2_STR struc			; Type 2:  Base Board Information

	db	(type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB2_MFR  db	?		; 04:  Manufacturer string
SMB2_PROD db	?		; 05:  Product Name string
SMB2_VER  db	?		; 06:  Version string
SMB2_SN   db	?		; 07:  Serial # string
SMB2_ASSET db	?		; 08:  Asset Tag string
SMB2_FEAT db	?		; 09:  Feature flags bit field (see SMB2_FEAT_REC)
SMB2_LOC  db	?		; 0A:  Location in chassis string
SMB2_CHNDL dw	?		; 0B:  Chassis handle (Type 3)
SMB2_TYPE db	?		; 0D:  Board type enum (see @SMB2_TYPE_xxx)
SMB2_NCOH db	?		; 0E:  # Contained Object Handles
SMB2_COH  dw	?		; 0F:  Contained Object Handles (see SMB2_COH_STR)

SMB2_STR ends


SMB2_FEAT_REC record \
$SMB2_FEAT_RSV5:3, \
$SMB2_FEAT_HOTSWAP:1, \
$SMB2_FEAT_REPLACEABLE:1, \
$SMB2_FEAT_REMOVABLE:1, \
$SMB2_FEAT_DAUGHTER:1, \
$SMB2_FEAT_MOTHER:1


@SMB2_TYPE_UNK	     equ 1	; Unknown
@SMB2_TYPE_OTHER     equ 2	; Other
@SMB2_TYPE_SERVER    equ 3	; Server Blade
@SMB2_TYPE_CONNSW    equ 4	; Connectivity Switch
@SMB2_TYPE_SMM	     equ 5	; System Management Module
@SMB2_TYPE_PROCESSOR equ 6	; Processor Module
@SMB2_TYPE_IO	     equ 7	; I/O Module
@SMB2_TYPE_MEMORY    equ 8	; Memory Module
@SMB2_TYPE_DAUGHTER  equ 9	; Daughter board
@SMB2_TYPE_MOTHER    equ 10	; Motherboard
@SMB2_TYPE_PROCMEM   equ 11	; Processor/Memory Module
@SMB2_TYPE_PROCIO    equ 12	; Processor/IO Module
@SMB2_TYPE_INTER     equ 13	; Interconnect Board


SMB2_COH_STR struc

SMB2_COH_HNDL dw	?	; 00:  Handle (various Types)

SMB2_COH_STR ends


; =========================== Type 3:  System Enclosure or Chassis ===========

SMB3_STR struc			; Type 3:  System Enclosure or Chassis

	db	(type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB3_MFR   db	?		; 04:  Manufacturer string
SMB3_TYPE  db	?		; 05:  Type bit field (see SMB3_TYPE_REC)
SMB3_VER   db	?		; 06:  Version string
SMB3_SN    db	?		; 07:  Serial # string
SMB3_ASSET db	?		; 08:  Asset Tag # string
SMB3_BOOT  db	?		; 09:  Bootup state enum (see @SMB3_STATE_xxx)
SMB3_POWER db	?		; 0A:  Power Suppy State enum (see @SMB3_STATE_xxx)
SMB3_THERM db	?		; 0B:  Thermal State enum (see @SMB3_STATE_xxx)
SMB3_SECUR db	?		; 0C:  Security Status enum (see @SMB3_SECUR_xxx)
SMB3_OEM   dd	?		; 0D:  OEM-defined bit field
SMB3_HEIGHT db	?		; 11:  Height (00h = Unknown)
SMB3_NCORDS db	?		; 12:  # Power Cords (00h = Unknown)
SMB3_CE_CNT db	?		; 13:  Contained Element Count
SMB3_CE_RECL db ?		; 14:  Contained Element Record Length
SMB3_CE    db	?		; 15:  Contained Elements (see SMB_CE_STR)

SMB3_STR ends


SMB3_TYPE_REC record \
$SMB3_TYPE_LOCK:1, \
$SMB3_TYPE:7


@SMB3_TYPE_OTHER	equ	01h	; Other
@SMB3_TYPE_UNK		equ	02h	; Unknown
@SMB3_TYPE_DTOP 	equ	03h	; Desktop
@SMB3_TYPE_LPDTOP	equ	04h	; Low Profile Desktop
@SMB3_TYPE_PBOX 	equ	05h	; Pizza Box
@SMB3_TYPE_MINITWR	equ	06h	; Mini Tower
@SMB3_TYPE_TWR		equ	07h	; Tower
@SMB3_TYPE_PORT 	equ	08h	; Portable
@SMB3_TYPE_LTOP 	equ	09h	; Laptop
@SMB3_TYPE_NOTE 	equ	0Ah	; Notebook
@SMB3_TYPE_HAND 	equ	0Bh	; Hand Held
@SMB3_TYPE_DOCK 	equ	0Ch	; Docking Station
@SMB3_TYPE_ALL		equ	0Dh	; All in One
@SMB3_TYPE_SNOTE	equ	0Eh	; Sub Notebook
@SMB3_TYPE_SPACE	equ	0Fh	; Space-saving
@SMB3_TYPE_LBOX 	equ	10h	; Lunch Box
@SMB3_TYPE_MCHAS	equ	11h	; Main Server Chassis
@SMB3_TYPE_ECHAS	equ	12h	; Expansion Chassis
@SMB3_TYPE_SCHAS	equ	13h	; SubChassis
@SMB3_TYPE_BCHAS	equ	14h	; Bus Expansion Chassis
@SMB3_TYPE_PCHAS	equ	15h	; Peripheral Chassis
@SMB3_TYPE_RAID 	equ	16h	; RAID Chassis
@SMB3_TYPE_RACK 	equ	17h	; Rack Mount Chassis
@SMB3_TYPE_SEAL 	equ	18h	; Sealed Case Chassis
@SMB3_TYPE_MULTI	equ	19h	; Multi-system Chassis


@SMB3_STATE_OTHER	equ	01h	; Other
@SMB3_STATE_UNK 	equ	02h	; Unknown
@SMB3_STATE_SAFE	equ	03h	; Safe
@SMB3_STATE_WARN	equ	04h	; Warning
@SMB3_STATE_CRIT	equ	05h	; Critical
@SMB3_STATE_NONREC	equ	06h	; Non-recoverable


@SMB3_SECUR_OTHER	equ	01h	; Other
@SMB3_SECUR_UNK 	equ	02h	; Unknown
@SMB3_SECUR_NONE	equ	03h	; None
@SMB3_SECUR_EI_LOCK	equ	04h	; External Interface Locked Out
@SMB3_SECUR_EI_ENA	equ	05h	; External Interface Enabled


SMB_CE_STR struc

SMB_CE_TYPE db	?		; Type bit field (see SMB_CE_TYPE_REC)
SMB_CE_MIN  db	?		; Contained Element Minimum
SMB_CE_MAX  db	?		; ...		    Maximum

SMB_CE_STR ends


SMB_CE_TYPE_REC record \
$SMB_CE_TYPE_SEL:1, \
$SMB_CE_TYPE_TYPE:7


; =========================== Type 4:  Processor Information =================

SMB4_STR struc			; Type 4:  Processor Information

	db	(type SMBHDR_STR) dup (?) ; Header (see SMBHDR_STR)
SMB4_SOCK   db	?		; 04:  Socket Designation string
SMB4_PTYP   db	?		; 05:  Processor Type enum (see @SMB4_PTYP_xxx)
SMB4_PFAM   db	?		; 06:  Processor Family enum (see @SMB4_PFAM_xxx)
SMB4_PMFR   db	?		; 07:  Processor Manufacturer string
SMB4_PID    dq	?		; 08:  Processor ID 8 bytes
SMB4_PVER   db	?		; 10:  Processor Version string
SMB4_VOLT   db	?		; 11:  Voltage record (see SMB4_VOLT_REC)
SMB4_CLCK   dw	?		; 12:  External Clock frequency in MHz (0000h = Unknown)
SMB4_MAXSP  dw	?		; 14:  Maximum Speed in MHz (0000h = Unknown)
SMB4_CURSP  dw	?		; 16:  Current Speed in MHz (0000h = Unknown)
SMB4_STAT   db	?		; 18:  Status record (see SMB4_STAT_REC)
SMB4_PUPG   db	?		; 19:  Processor Upgrade enum (see @SMB4_PUPG_xxx)
SMB4_L1HNDL dw	?		; 1A:  L1 Cache Handle (Type 7) (0FFFFh = Unknown)
SMB4_L2HNDL dw	?		; 1C:  L2 ...			...
SMB4_L3HNDL dw	?		; 1E:  L3 ...			...
SMB4_SERNUM db	?		; 20:  Serial number string
SMB4_ASSET  db	?		; 21:  Asset Tag string
SMB4_PARTNUM db ?		; 22:  Part NUmber string

SMB4_STR ends


@SMB4_PTYP_OTHER equ	01h	; Other
@SMB4_PTYP_UNK	 equ	02h	; Unknown
@SMB4_PTYP_CTRL  equ	03h	; Central Processor
@SMB4_PTYP_MATH  equ	04h	; Math Processor
@SMB4_PTYP_DSP	 equ	05h	; DSP Processor
@SMB4_PTYP_VIDEO equ	06h	; Video Processor

⌨️ 快捷键说明

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