public bool GetSMBIOS_Data() { if (HasSMBIOS == false && CheckSMBIOS() == false) { return(false); } Cosmos.Kernel.MemoryAddressSpace Memory = new Cosmos.Kernel.MemoryAddressSpace(SMBBIOSAddress, 32); SMBIOS_Data = new SMBIOS_Data(); //4 Byte array SMBIOS_Data.AnchorString[0] = Memory.Read8Unchecked(0); SMBIOS_Data.AnchorString[1] = Memory.Read8Unchecked(1); SMBIOS_Data.AnchorString[2] = Memory.Read8Unchecked(2); SMBIOS_Data.AnchorString[3] = Memory.Read8Unchecked(3); SMBIOS_Data.EntryPointStructureChecksum = Memory.Read8Unchecked(4); SMBIOS_Data.EntryPointLength = Memory.Read8Unchecked(5); SMBIOS_Data.SMBIOSMajorVersion = Memory.Read8Unchecked(6); SMBIOS_Data.SMBIOSMinorVersion = Memory.Read8Unchecked(7); SMBIOS_Data.MaximumStructureSize = Memory.Read16Unchecked(8); SMBIOS_Data.EntryPointRevision = Memory.Read8Unchecked(10); //5 Byte array SMBIOS_Data.FormattedArea[0] = Memory.Read8Unchecked(11); SMBIOS_Data.FormattedArea[1] = Memory.Read8Unchecked(12); SMBIOS_Data.FormattedArea[2] = Memory.Read8Unchecked(13); SMBIOS_Data.FormattedArea[3] = Memory.Read8Unchecked(14); SMBIOS_Data.FormattedArea[4] = Memory.Read8Unchecked(15); //5 Byte array SMBIOS_Data.IntermediateAnchorString[0] = Memory.Read8Unchecked(16); SMBIOS_Data.IntermediateAnchorString[1] = Memory.Read8Unchecked(17); SMBIOS_Data.IntermediateAnchorString[2] = Memory.Read8Unchecked(18); SMBIOS_Data.IntermediateAnchorString[3] = Memory.Read8Unchecked(19); SMBIOS_Data.IntermediateAnchorString[4] = Memory.Read8Unchecked(20); SMBIOS_Data.IntermediateChecksum = Memory.Read8Unchecked(21); SMBIOS_Data.StructureTableLength = Memory.Read16Unchecked(22); SMBIOS_Data.StructureTableAddress = Memory.Read32Unchecked(24); SMBIOS_Data.NumberOfSMBIOSStructures = Memory.Read16Unchecked(28); SMBIOS_Data.SMBIOSBCDRevision = Memory.Read8Unchecked(30); return(true); }
public bool GetSMBIOS_Data() { if( HasSMBIOS == false && CheckSMBIOS() == false ) return false; Cosmos.Kernel.MemoryAddressSpace Memory = new Cosmos.Kernel.MemoryAddressSpace( SMBBIOSAddress, 32 ); SMBIOS_Data = new SMBIOS_Data(); //4 Byte array SMBIOS_Data.AnchorString[ 0 ] = Memory.Read8Unchecked( 0 ); SMBIOS_Data.AnchorString[ 1 ] = Memory.Read8Unchecked( 1 ); SMBIOS_Data.AnchorString[ 2 ] = Memory.Read8Unchecked( 2 ); SMBIOS_Data.AnchorString[ 3 ] = Memory.Read8Unchecked( 3 ); SMBIOS_Data.EntryPointStructureChecksum = Memory.Read8Unchecked( 4 ); SMBIOS_Data.EntryPointLength = Memory.Read8Unchecked( 5 ); SMBIOS_Data.SMBIOSMajorVersion = Memory.Read8Unchecked( 6 ); SMBIOS_Data.SMBIOSMinorVersion = Memory.Read8Unchecked( 7 ); SMBIOS_Data.MaximumStructureSize = Memory.Read16Unchecked( 8 ); SMBIOS_Data.EntryPointRevision = Memory.Read8Unchecked( 10 ); //5 Byte array SMBIOS_Data.FormattedArea[ 0 ] = Memory.Read8Unchecked( 11 ); SMBIOS_Data.FormattedArea[ 1 ] = Memory.Read8Unchecked( 12 ); SMBIOS_Data.FormattedArea[ 2 ] = Memory.Read8Unchecked( 13 ); SMBIOS_Data.FormattedArea[ 3 ] = Memory.Read8Unchecked( 14 ); SMBIOS_Data.FormattedArea[ 4 ] = Memory.Read8Unchecked( 15 ); //5 Byte array SMBIOS_Data.IntermediateAnchorString[ 0 ] = Memory.Read8Unchecked( 16 ); SMBIOS_Data.IntermediateAnchorString[ 1 ] = Memory.Read8Unchecked( 17 ); SMBIOS_Data.IntermediateAnchorString[ 2 ] = Memory.Read8Unchecked( 18 ); SMBIOS_Data.IntermediateAnchorString[ 3 ] = Memory.Read8Unchecked( 19 ); SMBIOS_Data.IntermediateAnchorString[ 4 ] = Memory.Read8Unchecked( 20 ); SMBIOS_Data.IntermediateChecksum = Memory.Read8Unchecked( 21 ); SMBIOS_Data.StructureTableLength = Memory.Read16Unchecked( 22 ); SMBIOS_Data.StructureTableAddress = Memory.Read32Unchecked( 24 ); SMBIOS_Data.NumberOfSMBIOSStructures = Memory.Read16Unchecked( 28 ); SMBIOS_Data.SMBIOSBCDRevision = Memory.Read8Unchecked( 30 ); return true; }