forked from KolibriOS/kolibrios
added codename, extended features, merged older version of CPUID.
git-svn-id: svn://kolibrios.org@6483 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
b7abf42dc1
commit
ca53e0b2fe
@ -1,6 +1,2 @@
|
||||
@erase lang.inc
|
||||
@echo lang fix en >lang.inc
|
||||
@fasm -m 16384 cpuid.asm cpuid
|
||||
@erase lang.inc
|
||||
@kpack cpuid
|
||||
@pause
|
||||
fasm cpuid.asm cpuid
|
||||
pause
|
File diff suppressed because it is too large
Load Diff
@ -3,8 +3,8 @@
|
||||
; target platform: KolibriOS, x86 (IA-32), x86-64 achitectures
|
||||
; compability: CPUID works in MS Windows by means of emulator KlbrInWin from Diamond http://board.kolibrios.org/viewtopic.php?f=23&t=1273
|
||||
; compiler: flat assembler 1.70.03
|
||||
; version: 2.28
|
||||
; last update: 23rd October 2013
|
||||
; version: 2.29
|
||||
; last update: 12 October 2014
|
||||
; maintained by: Sergey Kuzmin aka Wildwest
|
||||
; e-mail: kuzmin_serg@list.ru
|
||||
; site: http://coolthemes.narod.ru/files.html
|
||||
@ -37,7 +37,7 @@
|
||||
; improve support of Vortex86
|
||||
;******************************************************************************
|
||||
;HISTORY:
|
||||
;2.3: CPUID 23/10/2013 (not finished)
|
||||
;2.3: CPUID 12/10/2014 (not finished)
|
||||
;Authors: Sergey Kuzmin aka Wildwest <kuzmin_serg@list.ru>
|
||||
; Pavel Rymovskiy aka Heavyiron <Heavyiron@pisem.net>
|
||||
; fedesco
|
||||
@ -50,6 +50,7 @@
|
||||
; (+) new cache descriptors for Intel;
|
||||
; (+) fixed typo, which makes output of Brand ID for AMD CPU's at incorrect place by Heavyiron;
|
||||
; (+) fixed typo, which makes selection of incorrect codename for AMD F8x CPU's;
|
||||
; (+) added detection of Extended Model for Intel's CPU and example of it's use
|
||||
;Known issues: Sempron marked as AthlonXP
|
||||
; second window doesn't closed when you close main window
|
||||
; incorrect multiplier detection for newest CPU
|
||||
|
@ -5,7 +5,7 @@ ENGLISH
|
||||
Hi! My name is Sergey Kuzmin aka Wildwest.
|
||||
This is one of the mostly famous program for KolibriOS/MenuetOS.
|
||||
I called it CPUID. CPUID talks with you CPU and show log.
|
||||
Current version is 2.28 and you can use it on your own risk without any warranty.
|
||||
Current version is 2.29 and you can use it on your own risk without any warranty.
|
||||
E-mail me (kuzmin_serg@list.ru) if you have some problems or suggestions.
|
||||
All righs on this program are mine, except parts of code written by other developers.
|
||||
|
||||
@ -50,7 +50,7 @@ RUSSIAN
|
||||
Привет! Меня зовут Сергей Кузьмин aka Wildwest.
|
||||
Это одна из самых известных программ для KolibriOS/MenuetOS.
|
||||
Она называется CPUID и показывает результаты идентификации процессора.
|
||||
Это версия 2.28 и ВЫ можете её использовать на свой собственный риск безо всяких гарантий.
|
||||
Это версия 2.29 и ВЫ можете её использовать на свой собственный риск безо всяких гарантий.
|
||||
Если будут какие-то проблемы или предложения, то напишите мне (kuzmin_serg@list.ru).
|
||||
Все права на программу принадлежат мне, кроме прав на части, написанных остальными разработчиками.
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -158,7 +158,7 @@ noAMDK6:cmp byte [f], 6
|
||||
and edx, 6 ; voltage ID control & frequency ID control
|
||||
cmp edx, 6
|
||||
je AMDK7M
|
||||
@@: mov eax, 68 ; Athlon/AthlonXP
|
||||
@@: mov eax, 68 ; Athlon/AthlonXP
|
||||
mov ebx, 3
|
||||
mov edx, 0x0C0010015
|
||||
mcall
|
||||
@ -171,7 +171,7 @@ noAMDK6:cmp byte [f], 6
|
||||
@@: mov cl, [athloncoef + ebx]
|
||||
ret
|
||||
|
||||
AMDK7M: mov eax, 68 ; AthonXP-M
|
||||
AMDK7M: mov eax, 68 ; AthonXP-M
|
||||
mov ebx, 3
|
||||
mov edx, 0xC0010042
|
||||
mcall
|
||||
@ -186,7 +186,7 @@ noAMDK7:cmp byte [f], 0xF
|
||||
and edx, 6 ; voltage ID control & frequency ID control
|
||||
cmp edx, 6
|
||||
je AMDK8M
|
||||
mov eax, 68 ; Athon64
|
||||
mov eax, 68 ; Athon64
|
||||
mov ebx, 3
|
||||
mov edx, 0xC0010015
|
||||
mcall
|
||||
@ -199,7 +199,7 @@ noAMDK7:cmp byte [f], 0xF
|
||||
mov cl, al
|
||||
ret
|
||||
|
||||
AMDK8M: mov eax, 68 ; Athon64-M
|
||||
AMDK8M: mov eax, 68 ; Athon64-M
|
||||
mov ebx, 3
|
||||
mov edx, 0xC0010042
|
||||
mcall
|
||||
@ -217,7 +217,7 @@ noAMD: cmp dword [smallvendor], 'ntel' ; Check for International Electronics CPU
|
||||
jne noIntelP4
|
||||
cmp byte [t], 6
|
||||
jne @f
|
||||
mov eax, 68 ; Pentium M
|
||||
mov eax, 68 ; Pentium M
|
||||
mov ebx, 3
|
||||
mov edx, 0x2A
|
||||
mcall
|
||||
@ -229,7 +229,7 @@ noAMD: cmp dword [smallvendor], 'ntel' ; Check for International Electronics CPU
|
||||
ret
|
||||
@@: cmp byte [m], 2
|
||||
jae @f
|
||||
mov eax, 68 ; Pentium 4 / Xeon (model < 2) Willamete
|
||||
mov eax, 68 ; Pentium 4 / Xeon (model < 2) Willamete
|
||||
mov ebx, 3
|
||||
mov edx, 0x2A
|
||||
mcall
|
||||
@ -237,7 +237,7 @@ noAMD: cmp dword [smallvendor], 'ntel' ; Check for International Electronics CPU
|
||||
and eax, 0x0F
|
||||
mov cl, [p4coef + eax]
|
||||
ret
|
||||
@@: mov eax, 68 ; Pentium 4 / Xeon (model >= 2) NorthWood
|
||||
@@: mov eax, 68 ; Pentium 4 / Xeon (model >= 2) NorthWood
|
||||
mov ebx, 3
|
||||
mov edx, 0x2C
|
||||
mcall
|
||||
@ -250,7 +250,26 @@ noAMD: cmp dword [smallvendor], 'ntel' ; Check for International Electronics CPU
|
||||
noIntelP4:
|
||||
cmp byte[f], 6
|
||||
jne noIntelP6
|
||||
mov eax, 68 ; Pentium Pro / Pentium II / Pentium III
|
||||
;edited code for test task-1
|
||||
cmp byte[em],0x3A ;i3,i5,i7
|
||||
je newCPU;
|
||||
cmp byte[em],0x2A ;celeron dekstop, mobile, Xeon E3
|
||||
je newCPU;
|
||||
cmp byte[em],0x2D ;i7
|
||||
je newCPU;
|
||||
cmp byte[em],0x25 ;celeron, pentium, core i3,i5,i7
|
||||
je newCPU;
|
||||
cmp byte[em],0x2C ;Xeon 3000
|
||||
je newCPU;
|
||||
cmp byte[em],0x1E ;Clarksfield core i7
|
||||
je newCPU;
|
||||
cmp byte[em],0x1A ;Bloomfield-2008
|
||||
je newCPU;
|
||||
cmp byte[em],0x2E ;NEhlem ~2008
|
||||
je newCPU;
|
||||
|
||||
|
||||
mov eax, 68 ; Pentium Pro / Pentium II / Pentium III
|
||||
mov ebx, 3
|
||||
mov edx, 0x2A
|
||||
mcall
|
||||
@ -280,4 +299,6 @@ noIntelP4:
|
||||
noIntel:
|
||||
noIntelP6:
|
||||
noAMDK8:
|
||||
newCPU:
|
||||
mov [nomultiplier], 1
|
||||
ret
|
@ -100,232 +100,232 @@ brand17len:
|
||||
;features
|
||||
|
||||
FPU:
|
||||
db 'FPU: '
|
||||
db 'FPU: ',0
|
||||
FPUlen:
|
||||
|
||||
VME:
|
||||
db 'VME: '
|
||||
db 'VME: ',0
|
||||
VMElen:
|
||||
|
||||
DE:
|
||||
db 'DE: '
|
||||
db 'DE: ',0
|
||||
DElen:
|
||||
|
||||
PSE:
|
||||
db 'PSE: '
|
||||
db 'PSE: ',0
|
||||
PSElen:
|
||||
|
||||
TSC:
|
||||
db 'TSC: '
|
||||
db 'TSC: ',0
|
||||
TSClen:
|
||||
|
||||
MSR:
|
||||
db 'MSR: '
|
||||
db 'MSR: ',0
|
||||
MSRlen:
|
||||
|
||||
PAE:
|
||||
db 'PAE: '
|
||||
db 'PAE: ',0
|
||||
PAElen:
|
||||
|
||||
MCE:
|
||||
db 'MCE: '
|
||||
db 'MCE: ',0
|
||||
MCElen:
|
||||
|
||||
CX8:
|
||||
db 'CX8: '
|
||||
db 'CX8: ',0
|
||||
CX8len:
|
||||
|
||||
APIC:
|
||||
db 'APIC: '
|
||||
db 'APIC: ',0
|
||||
APIClen:
|
||||
|
||||
SEP:
|
||||
db 'SEP: '
|
||||
db 'SEP: ',0
|
||||
SEPlen:
|
||||
|
||||
MTRR:
|
||||
db 'MTRR: '
|
||||
db 'MTRR: ',0
|
||||
MTRRlen:
|
||||
|
||||
PGE:
|
||||
db 'PGE: '
|
||||
db 'PGE: ',0
|
||||
PGElen:
|
||||
|
||||
MCA:
|
||||
db 'MCA: '
|
||||
db 'MCA: ',0
|
||||
MCAlen:
|
||||
|
||||
CMOV:
|
||||
db 'CMOV: '
|
||||
db 'CMOV: ',0
|
||||
CMOVlen:
|
||||
|
||||
PAT:
|
||||
db 'PAT: '
|
||||
db 'PAT: ',0
|
||||
PATlen:
|
||||
|
||||
PSE36:
|
||||
db 'PSE36: '
|
||||
db 'PSE36: ',0
|
||||
PSE36len:
|
||||
|
||||
PSNUM:
|
||||
db 'PSNUM: '
|
||||
db 'PSNUM: ',0
|
||||
PSNUMlen:
|
||||
|
||||
CLFLUSHn:
|
||||
db 'CLFLSH: '
|
||||
db 'CLFLSH: ',0
|
||||
CLFLUSHnlen:
|
||||
|
||||
DTS:
|
||||
db 'DTS: '
|
||||
db 'DTS: ',0
|
||||
DTSlen:
|
||||
|
||||
ACPI:
|
||||
db 'ACPI: '
|
||||
db 'ACPI: ',0
|
||||
ACPIlen:
|
||||
|
||||
MMX:
|
||||
db 'MMX: '
|
||||
db 'MMX: ',0
|
||||
MMXlen:
|
||||
|
||||
FXSR:
|
||||
db 'FXSR: '
|
||||
db 'FXSR: ',0
|
||||
FXSRlen:
|
||||
|
||||
SSE:
|
||||
db 'SSE: '
|
||||
db 'SSE: ',0
|
||||
SSElen:
|
||||
|
||||
SSE2:
|
||||
db 'SSE2: '
|
||||
db 'SSE2: ',0
|
||||
SSE2len:
|
||||
|
||||
SSn:
|
||||
db 'SS: '
|
||||
db 'SS: ',0
|
||||
SSnlen:
|
||||
|
||||
TM:
|
||||
db 'TM: '
|
||||
db 'TM: ',0
|
||||
TMlen:
|
||||
|
||||
IA64:
|
||||
db 'IA64: '
|
||||
db 'IA64: ',0
|
||||
IA64len:
|
||||
|
||||
PBE:
|
||||
db 'PBE: '
|
||||
db 'PBE: ',0
|
||||
PBElen:
|
||||
|
||||
Res:
|
||||
db 'Reserved'
|
||||
db 'Reserved',0
|
||||
Reslen:
|
||||
|
||||
;Extended
|
||||
|
||||
SS3:
|
||||
db 'SSE3: '
|
||||
db 'SSE3: ',0
|
||||
SS3len:
|
||||
|
||||
MON:
|
||||
db 'MON: '
|
||||
db 'MON: ',0
|
||||
MONlen:
|
||||
|
||||
DS_CPL:
|
||||
db 'DS-CPL: '
|
||||
db 'DS-CPL: ',0
|
||||
DS_CPLlen:
|
||||
|
||||
EST:
|
||||
db 'EST: '
|
||||
db 'EST: ',0
|
||||
ESTlen:
|
||||
|
||||
TM2:
|
||||
db 'TM2: '
|
||||
db 'TM2: ',0
|
||||
TM2len:
|
||||
|
||||
CNXT_ID:
|
||||
db 'CNXT-ID: '
|
||||
db 'CNXT-ID: ',0
|
||||
CNXT_IDlen:
|
||||
|
||||
CX16:
|
||||
db 'CX16: '
|
||||
db 'CX16: ',0
|
||||
CX16len:
|
||||
|
||||
ETPRD:
|
||||
db 'xTPR/ETPRD: ' ; xTPR
|
||||
db 'xTPR/ETPRD: ',0 ; xTPR
|
||||
ETPRDlen:
|
||||
|
||||
;Extended2
|
||||
|
||||
SYS:
|
||||
db 'SYSCALL: '
|
||||
db 'SYSCALL: ',0
|
||||
SYSlen:
|
||||
|
||||
MP:
|
||||
db 'MP: '
|
||||
db 'MP: ',0
|
||||
MPlen:
|
||||
|
||||
NX:
|
||||
db 'NX/XD: '
|
||||
db 'NX/XD: ',0
|
||||
NXlen:
|
||||
|
||||
MMXPi:
|
||||
db 'MMX+: '
|
||||
db 'MMX+: ',0
|
||||
MMXPilen:
|
||||
|
||||
MMXn:
|
||||
db 'MMX: '
|
||||
db 'MMX: ',0
|
||||
MMXnlen:
|
||||
|
||||
FXSRn:
|
||||
db 'FXSR: '
|
||||
db 'FXSR: ',0
|
||||
FXSRnlen:
|
||||
|
||||
FFXSR:
|
||||
db 'FFXSR: '
|
||||
db 'FFXSR: ',0
|
||||
FFXSRlen:
|
||||
|
||||
TSCP:
|
||||
db 'TSCP: '
|
||||
db 'TSCP: ',0
|
||||
TSCPlen:
|
||||
|
||||
LM:
|
||||
db 'EM64T/LM: ' ; AA64
|
||||
db 'EM64T/LM: ',0 ; AA64
|
||||
LMlen:
|
||||
|
||||
DNo:
|
||||
db '3DNow!+: '
|
||||
db '3DNow!+: ',0
|
||||
DNolen:
|
||||
|
||||
DN:
|
||||
db '3DNow!: '
|
||||
db '3DNow!: ',0
|
||||
DNlen:
|
||||
|
||||
LAF:
|
||||
db 'LAHF: '
|
||||
db 'LAHF: ',0
|
||||
LAFlen:
|
||||
|
||||
VMX:
|
||||
db 'VMX: '
|
||||
db 'VMX: ',0
|
||||
VMXlen:
|
||||
|
||||
SSSE3:
|
||||
db 'SSSE3: '
|
||||
db 'SSSE3: ',0
|
||||
SSSE3len:
|
||||
|
||||
DCA:
|
||||
db 'DCA: '
|
||||
db 'DCA: ',0
|
||||
DCAlen:
|
||||
|
||||
|
||||
MCR8:
|
||||
db 'MCR8: '
|
||||
db 'MCR8: ',0
|
||||
MCR8len:
|
||||
|
||||
SVM:
|
||||
db 'SVM: '
|
||||
db 'SVM: ',0
|
||||
SVMlen:
|
||||
|
||||
CMPL:
|
||||
db 'CMPL: '
|
||||
db 'CMPL: ',0
|
||||
CMPLlen:
|
||||
;================================
|
||||
abrand00:
|
||||
@ -343,5 +343,13 @@ abrand1len:
|
||||
abrand2:
|
||||
db 'AMD Opteron MP'
|
||||
abrand2len:
|
||||
;=====================================
|
||||
multi0:
|
||||
db 'n/a'
|
||||
multi0len:
|
||||
|
||||
;=====================================
|
||||
clock0:
|
||||
db 'n/a'
|
||||
clock0len:
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user