Thema: Delphi CPUID

Einzelnen Beitrag anzeigen

EarthQuaker

Registriert seit: 14. Apr 2007
Ort: Pirna
50 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: CPUID

  Alt 14. Aug 2007, 00:31
das weis ich ja aber es geht dies zu dekodieren.. also z.b.

auf dem bild die 1024 L2 Cache... würde gerne nur die werte auslesen also jeweils die Level Cache größe

Delphi-Quellcode:
const
   ID_BIT   =   $200000;         // EFLAGS ID bit
type
   TL2CacheSize   = array[1..4] of Longint;

function L2CacheSize : TL2CacheSize; assembler; register;
asm
  PUSH EBX {Save affected register}
  PUSH EDI
  MOV EDI,EAX {@Resukt}
  MOV EAX,$80000006
  DW $A20F {CPUID Command}
  STOSD          {CPUID[1]}
  MOV EAX,EBX
  STOSD {CPUID[2]}
  MOV EAX,ECX
  STOSD {CPUID[3]}
  MOV EAX,EDX
  STOSD {CPUID[4]}
  POP EDI               {Restore registers}
  POP EBX
end;


procedure TDemoForm.GetButtonClick(Sender: TObject);
var
  CPUID : TL2CacheSize;
begin
     Label1.Caption := IntToStr(CPUID[3] shr 16 and $FFFF);
 end;


end.
also das gilt als beispiel ob es richtig ist keine ahnung aber vielleicht weis du jetzt was ich damit meine!!!!
  Mit Zitat antworten Zitat