viaprohosts.~inc
来自「pipe类 pipe类 pipe类 pipe类 pipe类」· ~INC 代码 · 共 150 行
~INC
150 行
const
SMBBA1 = $90;
SMBBA2 = $80;
SMBBA3 = $D0;
//Other settings
MAX_TIMEOUT = 500;
//ENABLE_INT9 = 0;
//VT82C596 constants
VT596_QUICK = $00;
VT596_BYTE = $04;
VT596_BYTE_DATA = $08;
VT596_WORD_DATA = $0C;
VT596_BLOCK_DATA = $14;
PCI_VENDOR_ID_VIA = $1106;
PCI_DEVICE_ID_VIA_82C596_3 = $3050;
PCI_DEVICE_ID_VIA_82C596B_3 = $3051;
PCI_DEVICE_ID_VIA_82C686_4 = $3057;
PCI_DEVICE_ID_VIA_8231_4 = $8235;
PCI_DEVICE_ID_VIA_8233_0 = $3074;
PCI_DEVICE_ID_VIA_8233A = $3147;
PCI_DEVICE_ID_VIA_8235 = $3177;
PCI_DEVICE_ID_VIA_8237 = $3227;
var
viapro_ids: array[0..7] of tHostID =
(
(VendorID: PCI_VENDOR_ID_VIA; DeviceID: PCI_DEVICE_ID_VIA_82C596_3),
(VendorID: PCI_VENDOR_ID_VIA; DeviceID: PCI_DEVICE_ID_VIA_82C596B_3),
(VendorID: PCI_VENDOR_ID_VIA; DeviceID: PCI_DEVICE_ID_VIA_82C686_4),
(VendorID: PCI_VENDOR_ID_VIA; DeviceID: PCI_DEVICE_ID_VIA_8231_4),
(VendorID: PCI_VENDOR_ID_VIA; DeviceID: PCI_DEVICE_ID_VIA_8233_0),
(VendorID: PCI_VENDOR_ID_VIA; DeviceID: PCI_DEVICE_ID_VIA_8233A),
(VendorID: PCI_VENDOR_ID_VIA; DeviceID: PCI_DEVICE_ID_VIA_8235),
(VendorID: PCI_VENDOR_ID_VIA; DeviceID: PCI_DEVICE_ID_VIA_8237)
);
//PCI Address Constants
//SMBus data in configuration space can be found in two places,
//We try to select the better one*/
smb_cf_hstcfg: Word;
function ViaSMBHSTCFG(smb_cf_hstcfg: Word): Word;
begin
result:=smb_cf_hstcfg;
end;
function ViaSMBSLVC(smb_cf_hstcfg: Word): Word;
begin
result:=smb_cf_hstcfg + 1;
end;
function ViaSMBSHDW1(smb_cf_hstcfg: Word): Word;
begin
result:=smb_cf_hstcfg + 2;
end;
function ViaSMBSHDW2(smb_cf_hstcfg: Word): Word;
begin
result:=smb_cf_hstcfg + 3;
end;
function ViaSMBREV(smb_cf_hstcfg: Word): Word;
begin
result:=smb_cf_hstcfg + 4;
end;
//SMBus address offsets
function SMBHSTSTS(base: Word): DWord;begin
result:=base+0;
end;
function SMBHSLVSTS(base: Word): DWord;
begin
result:=base+1;
end;
function SMBHSTCNT(base: Word): DWord;
begin
result:=base+2;
end;
function SMBHSTCMD(base: Word): DWord;
begin
result:=base+3;
end;
function SMBHSTADD(base: Word): DWord;
begin
result:=base+4;
end;
function SMBHSTDAT0(base: Word): DWord;
begin
result:=base+5;
end
function SMBHSTDAT1(base: Word): DWord;
begin
result:=base+6;
end;
function SMBBLKDAT(base: Word): DWord;
begin
result:=base+7;
end;
function SMBSLVCNT(base: Word): DWord;
begin
result:=base+8;
end;
function SMBSHDWCMD(base: Word): DWord;
begin
result:=base+9;
end;
function SMBSLVEVT(base: Word): DWord;
begin
result:=base+$A;
end;
function SMBSLVDAT(base: Word): DWord;
begin
result:=base+$C;
end;
function VIAProFillHostIds: tHostIDs;
var
i: byte;
begin
for i:=Low(viapro_ids) to High(viapro_ids) do
begin
SetLength(result, i+1);
result[i].VendorID := nforce2_ids[i].VendorID;
result[i].DeviceID := nforce2_ids[i].DeviceID;
end;
end;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?