Rev 223 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 223 | Rev 318 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | ;****************************************************************************** |
1 | ;****************************************************************************** |
2 | ; project name: CPUID |
2 | ; project name: CPUID |
3 | ; target platform: KolibriOS, x86 (IA-32), x86-64 achitectures |
3 | ; target platform: KolibriOS, x86 (IA-32), x86-64 achitectures |
4 | ; compability: probably some functions would work in MenuetOS 32 and MenuetOS 64, may be even in Miraculix; |
4 | ; compability: probably some functions would work in MenuetOS 32 and MenuetOS 64, may be even in Miraculix; |
5 | ; CPUID (versions before 2.00) works in MS Windows by means of emulators |
5 | ; CPUID works in MS Windows by means of emulator from Diamond (http://diamondz.land.ru) |
6 | ; compiler: flat assembler 1.67.5 |
6 | ; compiler: flat assembler 1.67.5 |
7 | ; version: 2.05 |
7 | ; version: 2.17 |
8 | ; last update: 1st November 2006 |
8 | ; last update: 3rd February 2007 |
9 | ; maintained by: Sergey Kuzmin aka Wildwest |
9 | ; maintained by: Sergey Kuzmin aka Wildwest |
10 | ; e-mail: kuzmin_serg@list.ru |
10 | ; e-mail: kuzmin_serg@list.ru |
11 | ; site: http://coolthemes.narod.ru/files.html |
11 | ; site: http://coolthemes.narod.ru/files.html |
12 | ;****************************************************************************** |
12 | ;****************************************************************************** |
13 | ; Summary: |
13 | ; Summary: |
Line 26... | Line 26... | ||
26 | ; calculation of PR-rating for AMD AthlonXP; |
26 | ; calculation of PR-rating for AMD AthlonXP; |
27 | ; Amout of RAM (available and total) |
27 | ; Amout of RAM (available and total) |
28 | ; Highest input values for standard and extended calls |
28 | ; Highest input values for standard and extended calls |
29 | ; performed tests - Performance test (RSA encoding) |
29 | ; performed tests - Performance test (RSA encoding) |
30 | ;****************************************************************************** |
30 | ;****************************************************************************** |
- | 31 | ;"To do" plans: |
|
- | 32 | ; actual use of Brand ID for description of Intel's CPU, i.e. Celeron/Pentium separation; |
|
- | 33 | ; remove support of Cyrix and early Centaur (IDT) - they are too old, rare and non-standard; |
|
- | 34 | ; Sempron detection - probably they supports Brand-ID; |
|
- | 35 | ; update caches descriptors for intel Core 1/2 |
|
- | 36 | ; quantity of logical CPU/cores - requires APIC ID analysis |
|
- | 37 | ; newest AMD/Intel codename detection |
|
- | 38 | ;****************************************************************************** |
|
31 | ;HISTORY: |
39 | ;HISTORY: |
32 | ;2.1: CPUID 01/11/2006 (not finished) |
40 | ;3.0: CPUID 03/02/2007 (not finished) |
- | 41 | ;Authors: Sergey Kuzmin aka Wildwest |
|
- | 42 | ; Iliya Mikhailov aka Ghost |
|
- | 43 | ; /^S0rG^\ |
|
- | 44 | ;Features: |
|
- | 45 | ; (+) fixed address of LAHF feature, added detection of CMPL, SVM, MOVCR8 technologies for AMD; |
|
- | 46 | ; (+) fixed L2 cache size detection for VIA (they changed format from 8 bits to 16 bits several years ago); |
|
- | 47 | ; (+) more macroses for Interface and Threads (from Menuett.inc written by /^S0rG^\, 2002), sources separated into several include files; |
|
- | 48 | ; (++) more info about caches for VIA and Transmeta; |
|
- | 49 | ; (+) added detection of DCA, SSSE3, VMX technologies for Intel; |
|
- | 50 | ; (+) updated multiplier detection for AMD and Intel (thanks a lot to Ghost); |
|
- | 51 | ;Known issues: Sempron marked as AthlonXP |
|
- | 52 | ; second window doesn't closed when you close main window |
|
- | 53 | ;----------------------------------------------------------------------------- |
|
- | 54 | ;2.1: CPUID 10/01/2007 |
|
33 | ;Author: Sergey Kuzmin aka Wildwest |
55 | ;Author: Sergey Kuzmin aka Wildwest |
34 | ;Features: |
56 | ;Features: |
- | 57 | ; (++) more info about caches for AMD and Intel |
|
- | 58 | ; (+) redesign |
|
- | 59 | ; (+) fixes for names of some extended features |
|
- | 60 | ; (+) fixed missing technology for some AMD64 cpu's |
|
35 | ; (+) detection of dual-core AMD Opteron, but I came to conclusion that detection of AMD Fxxh CPU's should be changed (don't know how yet) |
61 | ; (+) detection of dual-core AMD Opteron, but I came to conclusion that detection of AMD Fxxh CPU's should be changed (don't know how yet) |
36 | ; (+) new caches for Intel |
62 | ; (+) new caches for Intel |
37 | ; (+) fixed Celeron detection based on L2 cache size for newest Intel CPU (there are Celeron models with 512 Kb); |
63 | ; (+) fixed Celeron detection based on L2 cache size for newest Intel CPU (there are Celeron models with 512 Kb); |
38 | ; (+) CPUID now display System Clock with accuracy 0.01 MHz; |
64 | ; (+) CPUID now display System Clock with accuracy 0.01 MHz; |
39 | ; (+) new logo for Intel (they changed it some time ago); |
65 | ; (+) new logo for Intel (they changed it some time ago); |
40 | ;Known issues: Sempron marked as AthlonXP |
66 | ;Known issues: Sempron marked as AthlonXP |
41 | ; second window doesn't closed when you close main window |
67 | ; second window doesn't closed when you close main window |
42 | ;----------------------------------------------------------------------------- |
68 | ;----------------------------------------------------------------------------- |
43 | ;2.0: CPUID 31/10/2006 |
69 | ;2.0: CPUID 31/10/2006 |
44 | ;Author: Sergey Kuzmin aka Wildwest |
70 | ;Authors: Sergey Kuzmin aka Wildwest |
45 | ; Eugeniy Grechnikov aka Diamond |
71 | ; Eugeniy Grechnikov aka Diamond |
46 | ; Iliya Mikhailov aka Ghost |
72 | ; Iliya Mikhailov aka Ghost |
47 | ;Features: |
73 | ;Features: |
48 | ; (+) detection of Brand ID of AMD CPU's (Opteron etc - not finished) |
74 | ; (+) detection of Brand ID of AMD CPU's (Opteron etc - not finished) |
49 | ; (+) detection of Extended family and Model of AMD CPU's |
75 | ; (+) detection of Extended family and Model of AMD CPU's |
Line 72... | Line 98... | ||
72 | ; (+) interface+(redesign). |
98 | ; (+) interface+(redesign). |
73 | ;Bugs: probably some non-critical graphical issues |
99 | ;Bugs: probably some non-critical graphical issues |
74 | ;Known issues: Sempron is not supported (marked as AthlonXP) |
100 | ;Known issues: Sempron is not supported (marked as AthlonXP) |
75 | ;----------------------------------------------------------------------------- |
101 | ;----------------------------------------------------------------------------- |
76 | ;1.0: CPUID 26/09/2005 |
102 | ;1.0: CPUID 26/09/2005 |
77 | ;Author: Sergey Kuzmin aka Wildwest |
103 | ;Authors: Sergey Kuzmin aka Wildwest |
78 | ;Additions: Marat Zakiyanov aka Mario79 |
104 | ; Marat Zakiyanov aka Mario79 |
79 | ; Andrey Halyavin aka halyavin |
105 | ; Andrey Halyavin aka halyavin |
80 | ;Features: |
106 | ;Features: |
81 | ; (+) fixed bug, when processor doesn't support extented features and program don't report 'no' in such case |
107 | ; (+) fixed bug, when processor doesn't support extented features and program don't report 'no' in such case |
82 | ; (+) fixed bug in CPU Type detection |
108 | ; (+) fixed bug in CPU Type detection |
83 | ; (+) fixed bug, when program crashes on AMD AthlonXP when after click on 'Press for more' button |
109 | ; (+) fixed bug, when program crashes on AMD AthlonXP when after click on 'Press for more' button |
Line 97... | Line 123... | ||
97 | ; and to me for nice button) |
123 | ; and to me for nice button) |
98 | ;Bugs: probably some non-critical graphical issues |
124 | ;Bugs: probably some non-critical graphical issues |
99 | ;Known issues: Sempron is not supported (marked as AthlonXP) |
125 | ;Known issues: Sempron is not supported (marked as AthlonXP) |
100 | ;----------------------------------------------------------------------------- |
126 | ;----------------------------------------------------------------------------- |
101 | ;0.9: CPUID 24/01/2005 |
127 | ;0.9: CPUID 24/01/2005 |
102 | ;Author: Sergey Kuzmin aka Wildwest |
128 | ;Authors: Sergey Kuzmin aka Wildwest |
103 | ;Additions: Madis Kalme aka Madis731 |
129 | ; Madis Kalme aka Madis731 |
104 | ; Jeffrey Amelynck aka Profkid |
130 | ; Jeffrey Amelynck aka Profkid |
105 | ;Features: |
131 | ;Features: |
106 | ; (+) deleting leading whitespaces in Intel P4's internal name |
132 | ; (+) deleting leading whitespaces in Intel P4's internal name |
107 | ; by Madis Kalme |
133 | ; by Madis Kalme |
108 | ; (+) all standard features |
134 | ; (+) all standard features |
Line 116... | Line 142... | ||
116 | ; (+) Type for Intel |
142 | ; (+) Type for Intel |
117 | ;Bugs: no !!! |
143 | ;Bugs: no !!! |
118 | ;Known issues: Sempron is not supported (marked as AthlonXP) |
144 | ;Known issues: Sempron is not supported (marked as AthlonXP) |
119 | ; caches for IDT is not detected |
145 | ; caches for IDT is not detected |
120 | ;----------------------------------------------------------------------------- |
146 | ;----------------------------------------------------------------------------- |
121 | ;0.8: CPUID 10/12/2004 |
- | |
122 | ;Author: Sergey Kuzmin aka Wildwest |
- | |
123 | ;Features: (+) CPUID now display frequency in Mhz with accuracy 0.01 MHz |
- | |
124 | ; (+) more codenames - Intel Itanium :-) |
- | |
125 | ; (+) display Internal Name |
- | |
126 | ; (+) caches for Intel Pentium |
- | |
127 | ; (+) Technology |
- | |
128 | ; (+) detect L1 Trace Instruction cache and some new caches for Intel |
- | |
129 | ; (+) detect Celerons based on Pentium III/4 kernels |
- | |
130 | ; (+) interface+(redesign) and Logo for Vendors |
- | |
131 | ; (+) fix for HTT detection on Celeron(it wasn't bug, just Intel's marketing) |
- | |
132 | ; (+) test for MMX+ and 3DNow!+ |
- | |
133 | ;Bugs: no !!! |
- | |
134 | ;Known issues: Sempron not supported (marked as AthlonXP) |
- | |
135 | ; Xeon is not fully supported (marked as Pentium except some models) |
- | |
136 | ;----------------------------------------------------------------------------- |
- | |
137 | ;0.7: CPUID 28/11/2004 |
- | |
138 | ;Author: Sergey Kuzmin aka Wildwest |
- | |
139 | ;Features: updated calculation of PR-rating for AMD AthlonXP, |
- | |
140 | ; more codenames (AMD series: Applebred, Thorton), |
- | |
141 | ; added L1 and L2 cache size detection, |
- | |
142 | ; fix for 3DNow! detection on non-AMD CPU's |
- | |
143 | ;Bugs: HTT detection on Celeron 4 (really Celeron 4 have HTT, |
- | |
144 | ; but Intel disabled it in microcode) |
- | |
145 | ;----------------------------------------------------------------------------- |
- | |
146 | ;0.6: CPUID 28/10/2004 |
- | |
147 | ;Author: Sergey Kuzmin aka Wildwest |
- | |
148 | ;Features: added calculation of PR-rating for AMD AthlonXP(on request of |
- | |
149 | ; RU-team), more codenames (VIA, Cyrix, IDT (Centaur) series), |
- | |
150 | ; interface+ (redesign), added output of CPU frequency in MHz, |
- | |
151 | ; fix for CPU clock detection (needs changes in kernel.asm), |
- | |
152 | ; fixed bugs which were founded during public testing, |
- | |
153 | ; decreased required memory 0x100000->0x340 |
- | |
154 | ;Bugs: problem with 3DNow! detection on non-AMD CPU's (VIA C3 and others) |
- | |
155 | ;----------------------------------------------------------------------------- |
- | |
156 | ;0.5: CPUID 16/10/2004 |
- | |
157 | ;Author: Sergey Kuzmin aka Wildwest |
- | |
158 | ;Features: added test for Hyper-Threading Technology support, |
- | |
159 | ; more codenames (Intel and AMD series) |
- | |
160 | ; fasm 1.50 compability, interface+ (window type 2->3 and redesign) |
- | |
161 | ; fix for window redrawing bug |
- | |
162 | ;Bugs: error in CPU clock detection (cause: error in sysfunc 18 subfunc 5) |
- | |
163 | ;----------------------------------------------------------------------------- |
- | |
164 | ;0.4: CPUID 27/09/2004 |
- | |
165 | ;Author: Sergey Kuzmin aka Wildwest |
- | |
166 | ;Features: added processor codename's detection engine and little database of |
147 | ;early history was removed; download any old version of CPUID and read it, if you want |
167 | ; codenames (P1 and K7) |
- | |
168 | ;Bugs: window redrawing bug, error in CPU clock detection |
- | |
169 | ;----------------------------------------------------------------------------- |
- | |
170 | ;0.3: CPUID 26/09/2004 |
- | |
171 | ;Author: Sergey Kuzmin aka Wildwest |
- | |
172 | ;Features: display CPU frequency; CPU Vendor; |
- | |
173 | ; CPU signature(family, model,stepping), |
- | |
174 | ; test for MMX,SSE,SSE2,SSE3,3DNow! |
- | |
175 | ;Bugs: window redrawing bug, error in CPU clock detection |
- | |
176 | ;----------------------------------------------------------------------------- |
- | |
177 | ;0.2: TIMES from old OFFICIAL distribution 11/10/2001 |
- | |
178 | ;Author: unknown hero (VT?) |
- | |
179 | ;Features: display CPU frequency, CPU Vendor, |
- | |
180 | ; test for MMX, Process Management |
- | |
181 | ;----------------------------------------------------------------------------- |
- | |
182 | ;0.1: CPUSPEED from OFFICIAL distribution 21/05/2001 |
- | |
183 | ;Author: unknown hero (VT?) |
- | |
184 | ;Features: display CPU frequency |
- | |
185 | ;***************************************************************************** |
148 | ;***************************************************************************** |
186 | 149 |