Rev 6488 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 6488 | Rev 6497 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | ;****************************************************************************** |
1 | ;****************************************************************************** |
2 | ; project name: CPUID * |
2 | ; project name: CPUID * |
3 | ; platform: KolibriOS, x86 (IA-32), x86-64 achitectures * |
3 | ; platform: KolibriOS, x86 (IA-32), x86-64 achitectures * |
4 | ; compiler: flat assembler 1.70.03 * |
4 | ; compiler: flat assembler 1.71.22 * |
5 | ; version: 2.29 * |
5 | ; version: 2.43 * |
6 | ; last update: 12 October 2014 * |
6 | ; last update: 15 Ausust 2016 * |
7 | ; maintained by: Sergey Kuzmin aka Wildwest * |
7 | ; maintained by: Sergey Kuzmin aka Wildwest * |
8 | ; e-mail: kuzmin_serg@list.ru * |
8 | ; e-mail: kuzmin_serg@list.ru * |
9 | ; site: http://coolthemes.narod.ru/files.html * |
9 | ; forum topic: http://board.kolibrios.org/viewtopic.php?f=42&t=594 * |
10 | ; license: Copyright 2004-2014 Sergey Kuzmin and co-authors * |
10 | ; license: Copyright 2004-2014 Sergey Kuzmin and co-authors * |
11 | ; Rules: * |
11 | ; Rules: * |
12 | ; 1)you can use pieces of code in your project, but should * |
12 | ; 1)you can use pieces of code in your project, but should * |
13 | ; mention the original author (include copyright notice); * |
13 | ; mention the original author (include copyright notice); * |
14 | ; 2)if you modify CPUID (improve, port, translate, etc) send * |
14 | ; 2)if you modify CPUID (improve, port, translate, etc) send * |
15 | ; your changes to the maintainer or make about post changes * |
15 | ; your changes to the maintainer or make about post changes * |
16 | ; at forum http://board.kolibrios.org/viewtopic.php?f=42&t=594* |
16 | ; at forum http://board.kolibrios.org/viewtopic.php?f=42&t=594* |
17 | ;-----------------------------------------------------------------------------* |
17 | ;-----------------------------------------------------------------------------* |
18 | ; English comments * |
18 | ; Comments are in English * |
19 | ;------------------------------------------------------------------------------ |
19 | ;------------------------------------------------------------------------------ |
20 | use32 |
20 | use32 |
21 | org 0x0 |
21 | org 0x0 |
22 | db 'MENUET01' |
22 | db 'MENUET01' |
23 | dd 0x01 |
23 | dd 0x01 |
Line 40... | Line 40... | ||
40 | include 'rsatest.inc' |
40 | include 'rsatest.inc' |
41 | include 'variable.inc' |
41 | include 'variable.inc' |
Line 42... | Line 42... | ||
42 | 42 | ||
Line 43... | Line 43... | ||
43 | @use_library |
43 | @use_library |
44 | 44 | ||
45 | START: |
45 | START: ; |
Line 46... | Line 46... | ||
46 | mcall 68,11 |
46 | mcall 68,11 |
47 | mcall 66,1,1 |
47 | mcall 66,1,1 |
Line 430... | Line 430... | ||
430 | shr ecx, 16 |
430 | shr ecx, 16 |
431 | mov [L2],ecx |
431 | mov [L2],ecx |
Line 432... | Line 432... | ||
432 | 432 | ||
Line 433... | Line 433... | ||
433 | ;CACHE3: edx provides l3 |
433 | ;CACHE3: edx provides l3 |
434 | 434 | ||
Line 435... | Line 435... | ||
435 | mov eax, 80000006h |
435 | ;mov eax, 80000006h |
436 | cpuid |
436 | ; cpuid |
Line 437... | Line 437... | ||
437 | 437 | ||
438 | movzx eax, cl ;mov cl to eax, zero extend; cl is counter reg for loop,shifts |
438 | ;movzx eax, cl ;mov cl to eax, zero extend; cl is counter reg for loop,shifts |
439 | mov dword[linel3], eax |
439 | ;mov dword[linel3], eax |
440 | 440 | ||
441 | push edx |
441 | ;push edx |
442 | shr edx, 12+1 |
442 | ;shr edx, 12+1 |
443 | and edx, 0x7 |
443 | ;and edx, 0x7 |
- | 444 | ;mov eax, 1 |
|
- | 445 | ;shl eax, cl |
|
- | 446 | ;mov dword [wayl3], eax |
|
Line 444... | Line -... | ||
444 | mov eax, 1 |
- | |
445 | shl eax, cl |
- | |
Line 446... | Line 447... | ||
446 | mov dword [wayl3], eax |
447 | ;pop edx |
447 | pop edx |
448 | |
448 | 449 | ;shr edx, 18 |
|
449 | shr edx, 18 |
450 | ;mov [L3],ecx |
Line 570... | Line 571... | ||
570 | pop edx |
571 | pop edx |
571 | jmp @b |
572 | jmp @b |
Line 572... | Line 573... | ||
572 | 573 | ||
Line -... | Line 574... | ||
- | 574 | fif: ; AMD-64 Family=15 |
|
573 | fif: ; AMD-64 Family=15 |
575 | |
574 | 576 | mov [nomultiplier], 1 ;dont detect multipl for new AMD |
|
Line 575... | Line -... | ||
575 | ;here is a need to rewrite detection of AMD F-th family according to "Revision Guide for |
- | |
- | 577 | ;here is a need to rewrite detection of AMD F-th family according to "Revision Guide for |
|
576 | ;AMD AthlonTM 64 and AMD OpteronTM Processors" 25759.pdf |
578 | ;AMD AthlonTM 64 and AMD OpteronTM Processors" 25759.pdf |
577 | 579 | ||
578 | 580 | ; checking sse3 for new AMD's is needed |
|
579 | cmp [m],$1 ;Dual-core Opteron |
581 | cmp [m],$1 ; Dual-core Opteron |
580 | jz AF1. |
582 | jz AF1. |
581 | cmp [m],$3 ;Toledo 1024 0.09 |
583 | cmp [m],$3 ; Toledo 1024 0.09 |
582 | jz AF3. |
584 | jz AF3. |
583 | cmp [m],$4 ;Athlon 64 Mobile Athlon 64 FX ClawHammer (1024) 0.13 |
585 | cmp [m],$4 ;Athlon 64 Mobile Athlon 64 FX ClawHammer (1024) 0.13 |
584 | jz AF4. |
586 | jz AF4. |
585 | cmp [m],$5 ;Opteron Athlon 64 FX 0.13 (1024) |
587 | cmp [m],$5 ; Opteron Athlon 64 FX 0.13 (1024) |
586 | jz AF5. |
588 | jz AF5. |
587 | cmp [m],$7 ;Athlon 64 Athlon 64 FX Clawhammer(1024) 0.13 Sledgehammer(1024) 0.13 // SSE3+ SanDiego(1024) |
589 | cmp [m],$7 ;Athlon 64 Athlon 64 FX Clawhammer(1024) 0.13 Sledgehammer(1024) 0.13 |
588 | jz AF7. |
590 | jz AF7. |
589 | cmp [m],$8 ;Athlon 64 Mobile Athlon 64 FX ClawHammer (1024) 0.13 |
591 | cmp [m],$8 ; Athlon 64 Mobile Athlon 64 FX ClawHammer (1024) 0.13 |
590 | jz AF8. |
592 | jz AF8. |
591 | cmp [m],$B ;Athlon 64 |
593 | cmp [m],$B ; Athlon 64 |
592 | jz AFB. |
594 | jz AFB. |
593 | cmp [m],$C ;Athlon 64 Newcastle(512) 0.13 Sempron> Paris (256) 0.13 |SSE3+ Sempron > Palermo FC0 0.09 // (Venice) |
595 | cmp [m],$C ;Athlon 64 Newcastle(512) 0.13 |
594 | jz AFC. |
596 | jz AFC. |
595 | cmp [m],$E ;Athlon 64 |
597 | cmp [m],$E ; Athlon 64 |
596 | jz AFE. |
598 | jz AFE. |
Line 597... | Line 599... | ||
597 | cmp [m],$F ;Athlon 64 Winchester(512) |SSE3+ SanDiego(1024) Venice (512) Palermo (256) 0.09 |
599 | cmp [m],$F ; Athlon 64 Winchester(512) |SSE3+ SanDiego(1024) Venice (512) Palermo (256) 0.09 |
Line 598... | Line 600... | ||
598 | jz AFF. |
600 | jz AFF. |
- | 601 | jmp next_generation |
|
599 | jmp next_generation |
602 | |
600 | 603 | ten: ;family = 10h |
|
601 | ten: ;family = 10h |
604 | |
- | 605 | ;Opteron (Barcelona) |
|
- | 606 | cmp [m],$2 ;model 2, stepping 1, Opteron processor 2347 |
|
602 | 607 | jz AB23. |
|
603 | cmp [m],$2 |
608 | cmp [m], $8 ;model 2, stepping 2, opteron processor 8356 |
- | 609 | jz AB83. |
|
- | 610 | ||
604 | jz AB23. |
611 | ;Phenom X4 (9-series) (Agena) |
605 | cmp [m], $8 |
612 | cmp [m], $9 |
Line 606... | Line 613... | ||
606 | jz AB83. |
613 | jz AB9. ; 4 cores, cache 4x64 |
607 | cmp [m], $9 |
614 | |
608 | jz AB9. |
615 | ;Phenom X3 (8-series) (Toliman) |
- | 616 | cmp [m], $2 ;3 cores, cache 3x63 |
|
- | 617 | jz AB8check2. |
|
609 | cmp [m], $2 |
618 | |
610 | jz AB8check2. |
619 | AB8check2.: |
Line 611... | Line 620... | ||
611 | 620 | cmp [s],03h |
|
612 | AB8check2.: |
621 | jz AB8right2. |
613 | cmp [s],03h |
622 | |
Line 614... | Line 623... | ||
614 | jz AB8right2. |
623 | ;Athlon 6-series |
- | 624 | cmp [m],$2 |
|
615 | cmp [m],$2 |
625 | jz athlonCheck |
- | 626 | ||
- | 627 | athlonCheck: ;stepping 03h, Athlon X2 7450 ; DONE |
|
616 | jz athlonCheck |
628 | cmp [s],03h |
617 | 629 | jz athlonKuma |
|
- | 630 | ||
- | 631 | ;Athlon X2 (Rana) |
|
618 | athlonCheck: |
632 | cmp [m], $5 ;Model 5, 05h, stepping 3, 03h, AMD Athlon(tm) II X3 |
619 | cmp [s],03h |
633 | jz AB4. |
Line 620... | Line 634... | ||
620 | jz athlonKuma |
634 | |
621 | 635 | ;Opteron (Budapest) 0.065 micron, Core stepping(s) |
|
622 | cmp [m], $5 |
636 | cmp [m],$1 ;AMD Opteron 1354 (rev. B3) specifications |
623 | jz AB4. |
637 | jz AB1. ;model 2 02h, stepping 3 03h |
624 | cmp [m],$1 |
638 | |
- | 639 | ;Opteron (Shanghai) 0.045 micron, Cores |
|
- | 640 | cmp [m],$4 |
|
625 | jz AB1. |
641 | jz AB8check. |
626 | cmp [m],$4 |
642 | |
- | 643 | AB8check.: |
|
- | 644 | cmp [s],02h ;2387 |
|
627 | jz AB8check. |
645 | jz ABC2. |
628 | 646 | cmp [s],01h ;8300 |
|
- | 647 | jz ABC3. |
|
- | 648 | ||
629 | AB8check.: |
649 | ;Opteron (Magny-Cours) |
630 | cmp [s],02h |
650 | cmp [m], $9 |
Line 631... | Line 651... | ||
631 | jz ABC2. |
651 | jz AB6. |
632 | cmp [s],01h |
652 | |
Line 849... | Line 869... | ||
849 | call concatname |
869 | call concatname |
850 | jmp MMXtest |
870 | jmp MMXtest |
851 | ;----------------------------------------------- |
871 | ;----------------------------------------------- |
852 | Intel: |
872 | Intel: |
853 | mov [codeN], $1 |
873 | mov [codeN], $1 |
854 | Text 75,70,0x00000000,Inteln, Intelnlen-Inteln |
874 | Text 75,70,0x00000000,Inteln, Intelnlen-Inteln ;75,70 |
855 | mov esi, IntelnNew |
875 | mov esi, IntelnNew ;un comment this four lines |
856 | mov edi, saveproc |
876 | mov edi, saveproc |
857 | call concatname |
877 | call concatname |
858 | mov esi, intel |
878 | mov esi, intel |
859 | call load_gif |
879 | call load_gif |
- | 880 | PutImage 135,107,201,49,img_area+8 ;this one |
|
- | 881 | ||
- | 882 | ||
860 | PutImage 135,107,201,49,img_area+8 |
883 | ;PutImage 125,107,201,49,img_area+8 |
- | 884 | ; place size |
|
Line 861... | Line 885... | ||
861 | 885 | ||
862 | det: |
886 | det: |
863 | cmp [f], $5 |
887 | cmp [f], $5 |
864 | jz five |
888 | jz five |
Line 1125... | Line 1149... | ||
1125 | jmp MMXtest |
1149 | jmp MMXtest |
Line 1126... | Line 1150... | ||
1126 | 1150 | ||
1127 | ;06Ex - Pentium M Yonah 0.065 |
1151 | ;06Ex - Pentium M Yonah 0.065 |
Line 1128... | Line 1152... | ||
1128 | ;06Fx - Pentium D Conroe 0.065, Xeon Woodcrest, Celeron D AllenDale, Core 2 Kentsfield |
1152 | ;06Fx - Pentium D Conroe 0.065, Xeon Woodcrest, Celeron D AllenDale, Core 2 Kentsfield |
Line 1129... | Line 1153... | ||
1129 | 1153 | ||
1130 | NEWintel: |
1154 | NEWintel: ;http://www.cpu-world.com/info/Intel/Intel_Core_i7.html |
1131 | 1155 | ||
1132 | cmp [em],$3A ;IvyBridge |
1156 | cmp [em],$3A ;IvyBridge ; only one |
1133 | jz I3A |
1157 | jz I3A |
1134 | cmp [em],$2A ;SandyBridge |
1158 | cmp [em],$2A ;SandyBridge |
1135 | jz I2A |
1159 | jz I2A |
1136 | cmp [em],$2D ;SandyBridge-E/EN/EP |
1160 | cmp [em],$2D ;SandyBridge-E/EN/EP |
1137 | jz I2D |
1161 | jz I2D |
1138 | cmp [em],$25 ;Arrandale/Clarksdale |
1162 | cmp [em],$25 ;Arrandale/Clarksdale |
1139 | jz I25 |
1163 | jz I25 |
1140 | cmp [em],$2C ;Gulftown/Westmere-EP |
1164 | cmp [em],$2C ;Gulftown/Westmere-EP |
1141 | jz I2C ;westmere-EP stepping B1 -> micron 0.032 |
1165 | jz I2C |
1142 | cmp [em],$2F ;Westmere-EX |
1166 | cmp [em],$2F ;Westmere-EX |
1143 | jz I2F |
1167 | jz I2F |
Line 1167... | Line 1191... | ||
1167 | jz I36 |
1191 | jz I36 |
1168 | cmp [em],$26 ;Lincroft |
1192 | cmp [em],$26 ;Lincroft |
1169 | jz I26 |
1193 | jz I26 |
1170 | cmp [em],$1C ;Pineview/Silverthorne |
1194 | cmp [em],$1C ;Pineview/Silverthorne |
1171 | jz I1C |
1195 | jz I1C |
1172 | jnz no_known |
1196 | jmp no_known |
Line 1173... | Line 1197... | ||
1173 | 1197 | ||
1174 | Inewunknown: |
1198 | Inewunknown: |
Line 1175... | Line 1199... | ||
1175 | jmp MMXtest |
1199 | jmp MMXtest |
Line 1200... | Line 1224... | ||
1200 | mov edi,saveproc + 0x10 |
1224 | mov edi,saveproc + 0x10 |
1201 | call concatname |
1225 | call concatname |
1202 | jmp MMXtest |
1226 | jmp MMXtest |
Line 1203... | Line 1227... | ||
1203 | 1227 | ||
1204 | I25: |
- | |
1205 | mov [micron], 32 |
1228 | I25: |
- | 1229 | ;Text 110,70,0x00000000,P25, P25len-P25 |
|
1206 | ;Text 110,70,0x00000000,P25, P25len-P25 |
1230 | mov [micron], 32 |
1207 | mov [cname], P25 ;P25 |
1231 | mov [cname], P25 ;P25 |
1208 | mov esi, P25 |
1232 | mov esi, P25 ;un comment this four lines |
1209 | mov edi, saveproc + 0x10 ;12 |
1233 | mov edi, saveproc + 0x10 ;12 |
1210 | call concatname |
1234 | call concatname |
Line 1211... | Line 1235... | ||
1211 | jmp MMXtest |
1235 | jmp MMXtest |
Line 1334... | Line 1358... | ||
1334 | mov esi, P26 |
1358 | mov esi, P26 |
1335 | mov edi, saveproc + 0x10 |
1359 | mov edi, saveproc + 0x10 |
1336 | call concatname |
1360 | call concatname |
1337 | jmp MMXtest |
1361 | jmp MMXtest |
Line -... | Line 1362... | ||
- | 1362 | ||
1338 | 1363 | ||
1339 | I1C: |
1364 | I1C: |
1340 | mov [micron], 32 |
1365 | mov [micron], 32 |
1341 | ;Text 110,70,0x00000000,P1C, P1Clen-P1C |
1366 | ;Text 110,70,0x00000000,P1C, P1Clen-P1C |
1342 | mov [cname], P1C |
1367 | mov [cname], P1C |
Line 1348... | Line 1373... | ||
1348 | 1373 | ||
1349 | ;;;;;;;;;;;;;;;;;;; |
1374 | ;;;;;;;;;;;;;;;;;;; |
1350 | sev: ;Family=7 |
1375 | sev: ;Family=7 |
Line 1351... | Line 1376... | ||
1351 | .IS0: |
1376 | .IS0: |
- | 1377 | ||
1352 | 1378 | Text 15, 190,0x00000000,cache, cachelen-cache ;? |
|
1353 | Text 15, 190,0x00000000,cache, cachelen-cache |
1379 | |
1354 | mov [micron], 18 |
1380 | mov [micron], 18 |
1355 | Text 110,70,0x00000000,PS0, PS0len-PS0 |
1381 | Text 110,70,0x00000000,PS0, PS0len-PS0 |
1356 | mov esi, PS0 |
1382 | mov esi, PS0 |
Line 1487... | Line 1513... | ||
1487 | 1513 | ||
1488 | mov esi, cyrix |
1514 | mov esi, cyrix |
1489 | call load_gif |
1515 | call load_gif |
Line 1490... | Line -... | ||
1490 | PutImage 135,107,201,49,img_area+8 |
- | |
1491 | 1516 | PutImage 135,107,201,49,img_area+8 |
|
1492 | 1517 | ||
1493 | cmp [f], $5 |
1518 | cmp [f], $5 |
1494 | jz .fivv |
1519 | jz .fivv |
1495 | cmp [f], $6 |
1520 | cmp [f], $6 |
Line 1648... | Line 1673... | ||
1648 | fivC: ;Family=5 |
1673 | fivC: ;Family=5 |
Line 1649... | Line 1674... | ||
1649 | 1674 | ||
1650 | mov esi, idt |
1675 | mov esi, idt |
1651 | call load_gif |
1676 | call load_gif |
1652 | PutImage 135,107,201,49,img_area+8 |
- | |
1653 | ;PutImage 125,107,201,49,img_area+8 |
- | |
- | 1677 | PutImage 135,107,201,49,img_area+8 |
|
Line 1654... | Line 1678... | ||
1654 | ; place size |
1678 | |
1655 | 1679 | ||
1656 | Text 75,70,0x00000000,IDTn, IDTnlen-IDTn |
1680 | Text 75,70,0x00000000,IDTn, IDTnlen-IDTn |
1657 | mov esi, IDTn |
1681 | mov esi, IDTn |
Line 1683... | Line 1707... | ||
1683 | 1707 | ||
1684 | mov esi, via |
1708 | mov esi, via |
1685 | call load_gif |
1709 | call load_gif |
Line 1686... | Line -... | ||
1686 | PutImage 135,107,201,49,img_area+8 |
- | |
1687 | 1710 | PutImage 135,107,201,49,img_area+8 |
|
1688 | 1711 | ||
1689 | Text 75,70,0x00000000,Centaurn, Centaurnlen-Centaurn |
1712 | Text 75,70,0x00000000,Centaurn, Centaurnlen-Centaurn |
1690 | mov esi, Centaurn |
1713 | mov esi, Centaurn |
1691 | mov edi, saveproc |
1714 | mov edi, saveproc |
Line 1737... | Line 1760... | ||
1737 | 1760 | ||
1738 | mov esi, transmeta |
1761 | mov esi, transmeta |
1739 | call load_gif |
1762 | call load_gif |
Line -... | Line 1763... | ||
- | 1763 | PutImage 135,107,201,49,img_area+8 |
|
1740 | PutImage 135,107,201,49,img_area+8 |
1764 | |
1741 | 1765 | ||
1742 | ; cache detection routine - it is the same as for AMD (almost) |
1766 | ; cache detection routine - it is the same as for AMD (almost) |
1743 | ;CACHE1: |
1767 | ;CACHE1: |
Line 1814... | Line 1838... | ||
1814 | Text 15, 190,0x00000000,cache, cachelen-cache |
1838 | Text 15, 190,0x00000000,cache, cachelen-cache |
Line 1815... | Line 1839... | ||
1815 | 1839 | ||
1816 | mov esi, vortex |
1840 | mov esi, vortex |
1817 | call load_gif |
1841 | call load_gif |
1818 | PutImage 135,107,201,49,img_area+8 |
- | |
1819 | ;PutImage 130,127,201,49,img_area+8 |
- | |
1820 | ; place size |
- | |
1821 | 1842 | PutImage 135,107,201,49,img_area+8 |
|
1822 | cmp [f], $5 |
1843 | cmp [f], $5 |
1823 | jz .V54 ;fivvtx |
- | |
1824 | ;.fivvtx: ;Family=5 |
- | |
1825 | ; cmp [m],$4 |
1844 | jz .V54 ;fivvtx |
1826 | ; jz .V54 |
1845 | |
1827 | .V54: |
1846 | .V54: |
1828 | mov [micron], 13 |
1847 | mov [micron], 13 |
1829 | mov [L1i], 16 |
1848 | mov [L1i], 16 |
1830 | mov [L1d], 16 |
1849 | mov [L1d], 16 |
Line 1994... | Line 2013... | ||
1994 | shr eax, 10 |
2013 | shr eax, 10 |
Line 1995... | Line 2014... | ||
1995 | 2014 | ||
Line 1996... | Line 2015... | ||
1996 | mov [ram_size_t], eax |
2015 | mov [ram_size_t], eax |
- | 2016 | ||
- | 2017 | Text 115,350,0x00000000,ram, ramlen-ram |
|
1997 | 2018 | ;Text 300,350,,mb, mblen-mb |
|
- | 2019 | ||
1998 | Text 115,350,0x00000000,ram, ramlen-ram |
2020 | Number 200,350,0,4,dword [ram_size_a],0x000000 |
Line 1999... | Line 2021... | ||
1999 | Number 200,350,0,4,dword [ram_size_a],0x000000 |
2021 | |
Line 2094... | Line 2116... | ||
2094 | cmp eax,3 ; |
2116 | cmp eax,3 ; |
2095 | je button_2 ; button_2 |
2117 | je button_2 ; button_2 |
Line 2096... | Line 2118... | ||
2096 | 2118 | ||
Line 2097... | Line 2119... | ||
2097 | jmp still_2 ; |
2119 | jmp still_2 ; |
2098 | 2120 | ||
2099 | key_2: ; |
2121 | key_2: |
Line 2100... | Line 2122... | ||
2100 | mcall ; |
2122 | mcall |
2101 | jmp still_2 ; |
2123 | jmp still_2 ; |
2102 | 2124 | ||
Line 2113... | Line 2135... | ||
2113 | mcall |
2135 | mcall |
Line 2114... | Line 2136... | ||
2114 | 2136 | ||
Line 2115... | Line -... | ||
2115 | - | ||
2116 | draw_window_2: |
- | |
2117 | 2137 | ||
2118 | ;call prepare_text_area |
2138 | draw_window_2: |
2119 | 2139 | ||
Line 2120... | Line -... | ||
2120 | mov eax,12 ; function 12:tell os about windowdraw |
- | |
2121 | mov ebx,1h ; 1, start of draw |
2140 | mov eax,12 ; function 12:tell os about windowdraw |
2122 | mcall |
- | |
2123 | - | ||
Line 2124... | Line 2141... | ||
2124 | 2141 | mov ebx,1h ; 1, start of draw |
|
2125 | Window 250,250,420,520, 0x33FFFFFF, 0x805080d0, standard ;460 |
2142 | mcall |
Line 2126... | Line 2143... | ||
2126 | ; place size |
2143 | |
Line 2201... | Line 2218... | ||
2201 | Text 115,255,,SYS, SYSlen-SYS |
2218 | Text 115,255,,SYS, SYSlen-SYS |
2202 | Text 115,275,,LAF, LAFlen-LAF |
2219 | Text 115,275,,LAF, LAFlen-LAF |
2203 | Text 115,295,,SSSE3, SSSE3len-SSSE3 |
2220 | Text 115,295,,SSSE3, SSSE3len-SSSE3 |
2204 | Text 115,315,,MCR8, MCR8len-MCR8 |
2221 | Text 115,315,,MCR8, MCR8len-MCR8 |
Line -... | Line 2222... | ||
- | 2222 | ||
- | 2223 | ;added |
|
Line 2205... | Line -... | ||
2205 | - | ||
2206 | - | ||
2207 | Text 115,335,0x00000000,EAS, EASlen-EAS |
2224 | Text 115,335,0x00000000,EAS, EASlen-EAS ;115,335 |
Line 2208... | Line 2225... | ||
2208 | 2225 | ||
Line 2209... | Line 2226... | ||
2209 | Text 115,375,0x00000000,DNP, DNPlen-DNP |
2226 | Text 115,375,0x00000000,DNP, DNPlen-DNP ;115,375 |
Line 2229... | Line 2246... | ||
2229 | Text 315,255,,DNo, DNolen-DNo |
2246 | Text 315,255,,DNo, DNolen-DNo |
2230 | Text 315,275,,DN, DNlen-DN |
2247 | Text 315,275,,DN, DNlen-DN |
2231 | Text 215,315,,CMPL, CMPLlen-CMPL |
2248 | Text 215,315,,CMPL, CMPLlen-CMPL |
2232 | Text 315,315,0x00000000,SS42,SS42len-SS42 |
2249 | Text 315,315,0x00000000,SS42,SS42len-SS42 |
2233 | Text 315,335,0x00000000,PPCNT,PPCNTlen-PPCNT |
2250 | Text 315,335,0x00000000,PPCNT,PPCNTlen-PPCNT |
2234 | Text 315,295,0x00000000,SSE4A,SSE4Alen-SSE4A |
2251 | Text 315,295,0x00000000,SSE4A,SSE4Alen-SSE4A ;try here |
2235 | Text 315,355,0x00000000,SKINIT_,SKINIT_len-SKINIT_ |
2252 | Text 315,355,0x00000000,SKINIT_,SKINIT_len-SKINIT_ |
Line 2236... | Line 2253... | ||
2236 | 2253 | ||
2237 | too: |
2254 | too: |
Line 2322... | Line 2339... | ||
2322 | mcall |
2339 | mcall |
Line 2323... | Line 2340... | ||
2323 | 2340 | ||
2324 | Window 150,150,350,430, 0x34FFFFFF, 0x805080d0, title |
2341 | Window 150,150,350,430, 0x34FFFFFF, 0x805080d0, title |
Line 2325... | Line 2342... | ||
2325 | ; place size |
2342 | ; place size |
Line 2326... | Line 2343... | ||
2326 | 2343 | ||
2327 | Button 15,345,92,23,2+0x40000000,0x03FFFFFF ; button "press for more" |
2344 | Button 15,345,92,23,2+0x40000000,0x03FFFFFF ;Button 15,330,92,23,2+0x40000000,0x03FFFFFF ; button "press for more" |
2328 | 2345 | ||
2329 | mov esi, knopka |
2346 | mov esi, knopka |
2330 | mov edi, img_area2 |
2347 | mov edi, img_area2 |
Line 2331... | Line 2348... | ||
2331 | call load_gif2 |
2348 | call load_gif2 |
Line 2332... | Line 2349... | ||
2332 | PutImage 15,345,93,24,img_area2+8 ; image "press for more" |
2349 | PutImage 15,345,93,24,img_area2+8 ;PutImage 15,330,93,24,img_area2+8 ; image "press for more" |
2333 | ; place size |
2350 | ; place size |
2334 | 2351 | ||
2335 | 2352 | ||
2336 | Button 15,380,92,23,3+0x40000000,0x03FFFFFF ; button "save" |
2353 | Button 15,380,92,23,3+0x40000000,0x03FFFFFF ; button "save" ;370 |
Line 2337... | Line 2354... | ||
2337 | 2354 | ||
2338 | mov esi, knopka2 |
2355 | mov esi, knopka2 |
2339 | mov edi, img_area3 |
2356 | mov edi, img_area3 |
Line 2355... | Line 2372... | ||
2355 | cmp dword[smallvendor], 'cAMD' |
2372 | cmp dword[smallvendor], 'cAMD' |
2356 | jne cont |
2373 | jne cont |
2357 | cmp [f], $6 |
2374 | cmp [f], $6 |
2358 | jne cont |
2375 | jne cont |
Line 2359... | Line -... | ||
2359 | - | ||
2360 | ; Button 240,85,69,15,3,0x030000FF ; button for rating |
- | |
2361 | ; Text 245,90,0x00FFFFFF,FR, FRlen-FR ; text at button |
- | |
2362 | 2376 | ||
Line 2363... | Line 2377... | ||
2363 | call newrating; !!!! |
2377 | call newrating; !!!! |
2364 | 2378 | ||
Line 2390... | Line 2404... | ||
2390 | mov edi, step + 0xa ;0x9 |
2404 | mov edi, step + 0xa ;0x9 |
2391 | call savenumber |
2405 | call savenumber |
Line 2392... | Line 2406... | ||
2392 | 2406 | ||
2393 | ;Number 110,110,1*256,2,dword [ef] |
2407 | ;Number 110,110,1*256,2,dword [ef] |
2394 | mov esi, ef |
2408 | mov esi, ef |
2395 | mov edi, fam + 0xE ;0x9 |
2409 | mov edi, fam + 0xF ;0xE |
Line 2396... | Line 2410... | ||
2396 | call savenumber |
2410 | call savenumber |
2397 | 2411 | ||
2398 | ;Number 110,130,,,dword [em] |
2412 | ;Number 110,130,,,dword [em] |
Line 2484... | Line 2498... | ||
2484 | Text 255,250,,typen, typenlen-typen |
2498 | Text 255,250,,typen, typenlen-typen |
2485 | Text 175, 50,,tech, techlen-tech; |
2499 | Text 175, 50,,tech, techlen-tech; |
Line 2486... | Line 2500... | ||
2486 | 2500 | ||
Line 2487... | Line -... | ||
2487 | red2: |
- | |
- | 2501 | red2: |
|
2488 | 2502 | ||
Line -... | Line 2503... | ||
- | 2503 | ||
2489 | ;;;;;;;;;;;;;;;;;;;;;;;; |
2504 | goon: |
Line 2490... | Line 2505... | ||
2490 | goon: |
2505 | |
2491 | 2506 | ;call PROCCORE |
|
2492 | call decodebrand |
2507 | call decodebrand |
Line 2514... | Line 2529... | ||
2514 | Text 15,150,0x00000000,step, steplen-step |
2529 | Text 15,150,0x00000000,step, steplen-step |
Line 2515... | Line 2530... | ||
2515 | 2530 | ||
2516 | Text 275,290,0x00000000,HTT, HTTlen-HTT |
2531 | Text 275,290,0x00000000,HTT, HTTlen-HTT |
Line -... | Line 2532... | ||
- | 2532 | Text 275,310,,sse3, sse3len-sse3 |
|
2517 | Text 275,310,,sse3, sse3len-sse3 |
2533 | |
2518 | 2534 | ;try here |
|
2519 | Text 175,290,0x00000000,SSE41, SSE41len-SSE41 |
2535 | Text 175,290,0x00000000,SSE41, SSE41len-SSE41 |
Line 2520... | Line -... | ||
2520 | Text 175,310,0x00000000,SSE42, SSE42len-SSE42 |
- | |
2521 | Text 175,330,0x00000000,SSE5, SSE5len-SSE5 |
2536 | Text 175,310,0x00000000,SSE42, SSE42len-SSE42 |
- | 2537 | Text 175,330,0x00000000,SSE5, SSE5len-SSE5 |
|
2522 | 2538 | ||
2523 | 2539 | Text 15,70,,name, namelen-name |
|
2524 | Text 15,70,,name, namelen-name |
2540 | |
Line 2525... | Line 2541... | ||
2525 | Text 15,290,,MMXs, MMXslen-MMXs |
2541 | Text 15,290,,MMXs, MMXslen-MMXs |
Line 2538... | Line 2554... | ||
2538 | 2554 | ||
2539 | Text 15, 190,0x00000000,cache, cachelen-cache |
2555 | Text 15, 190,0x00000000,cache, cachelen-cache |
2540 | Text 15,170,0x00000000,cache2, cache2len-cache2 |
2556 | Text 15,170,0x00000000,cache2, cache2len-cache2 |
2541 | Text 15,210,,cache3, cache3len-cache3 |
2557 | Text 15,210,,cache3, cache3len-cache3 |
- | 2558 | Text 15,230,,cache4, cache4len-cache4 |
|
2542 | Text 15,230,,cache4, cache4len-cache4 |
2559 | |
- | 2560 | Text 110,70,0x00000000,dword[cname], 40 |
|
2543 | Text 110,70,0x00000000,dword[cname], 40 |
2561 | |
Line 2544... | Line 2562... | ||
2544 | call load_gif |
2562 | call load_gif |
2545 | 2563 | ||
2546 | cmp [nomultiplier], $1 |
2564 | cmp [nomultiplier], $1 |
Line 2564... | Line 2582... | ||
2564 | cmp [codeN],$5 |
2582 | cmp [codeN],$5 |
2565 | je codeNTransmeta |
2583 | je codeNTransmeta |
2566 | cmp [codeN], $6 |
2584 | cmp [codeN], $6 |
2567 | je codeNVortex |
2585 | je codeNVortex |
Line -... | Line 2586... | ||
- | 2586 | ||
2568 | 2587 | ||
2569 | codeNIntel: |
2588 | codeNIntel: |
2570 | Text 75,70,0x00000000,Inteln, Intelnlen-Inteln |
2589 | Text 75,70,0x00000000,Inteln, Intelnlen-Inteln |
2571 | mov esi, intel |
2590 | mov esi, intel |
2572 | call load_gif |
2591 | call load_gif |
Line 2692... | Line 2711... | ||
2692 | call addstring |
2711 | call addstring |
Line 2693... | Line 2712... | ||
2693 | 2712 | ||
2694 | cmp [nomultiplier], $1 |
2713 | cmp [nomultiplier], $1 |
2695 | je noMult |
2714 | je noMult |
2696 | jne detMulti |
2715 | jne detMulti |
Line 2697... | Line 2716... | ||
2697 | ;jne detFreq |
2716 | |
2698 | 2717 | ||
2699 | detMulti: |
2718 | detMulti: |
2700 | mov esi,multil |
2719 | mov esi,multil |
Line 2863... | Line 2882... | ||
2863 | call addstring |
2882 | call addstring |
Line 2864... | Line 2883... | ||
2864 | 2883 | ||
2865 | mov esi, SSE |
2884 | mov esi, SSE |
Line 2866... | Line -... | ||
2866 | call addstring |
- | |
2867 | 2885 | call addstring |
|
2868 | 2886 | ||
Line 2869... | Line 2887... | ||
2869 | mov esi, SSn |
2887 | mov esi, SSn |
2870 | call addstring |
2888 | call addstring |
Line 2987... | Line 3005... | ||
2987 | call addstring |
3005 | call addstring |
Line 2988... | Line 3006... | ||
2988 | 3006 | ||
2989 | mov esi, WDT |
3007 | mov esi, WDT |
Line -... | Line 3008... | ||
- | 3008 | call addstring |
|
2990 | call addstring |
3009 | |
Line -... | Line 3010... | ||
- | 3010 | ||
2991 | 3011 | ret |
|
2992 | ret |
3012 | |
2993 | 3013 | ||
2994 | addstring: |
3014 | addstring: |
2995 | mov edi, [store_text_area_end] |
3015 | mov edi, [store_text_area_end] |
Line 3078... | Line 3098... | ||
3078 | load_gif: |
3098 | load_gif: |
3079 | mov edi, img_area |
3099 | mov edi, img_area |
3080 | load_gif2: |
3100 | load_gif2: |
Line 3081... | Line 3101... | ||
3081 | 3101 | ||
- | 3102 | COLOR_ORDER equ MENUETOS |
|
Line 3082... | Line 3103... | ||
3082 | COLOR_ORDER equ MENUETOS |
3103 | include 'gif_lite.inc' ; parse GIF files |
Line 3083... | Line 3104... | ||
3083 | 3104 | ||
Line 3084... | Line 3105... | ||
3084 | ; DATA AREA |
3105 | ; DATA AREA |
3085 | 3106 | ||
Line 3086... | Line 3107... | ||
3086 | title db 'CPUID 2.29 by S.Kuzmin & the KolibriOS team',0 |
3107 | title db 'CPUID 2.43 by S.Kuzmin & the KolibriOS team',0 |
Line 3417... | Line 3438... | ||
3417 | 3438 | ||
Line 3418... | Line -... | ||
3418 | - | ||
3419 | 3439 | ||
Line 3420... | Line 3440... | ||
3420 | standard db 'Standard and Extended features plus Performance test',0 |
3440 | |
Line 3421... | Line 3441... | ||
3421 | 3441 | standard db 'Standard and Extended features plus Performance test',0 |
|
Line 3469... | Line 3489... | ||
3469 | db 'L1(inst): Kuops -way set -byte line size' |
3489 | db 'L1(inst): Kuops -way set -byte line size' |
Line 3470... | Line 3490... | ||
3470 | 3490 | ||
Line 3471... | Line -... | ||
3471 | cacheP4len: |
- | |
3472 | - | ||
3473 | 3491 | cacheP4len: |
|
Line 3474... | Line 3492... | ||
3474 | 3492 | ||
Line 3475... | Line 3493... | ||
3475 | 3493 | ||
Line 3569... | Line 3587... | ||
3569 | db 'HTT: ',0 |
3587 | db 'HTT: ',0 |
Line 3570... | Line 3588... | ||
3570 | 3588 | ||
Line -... | Line 3589... | ||
- | 3589 | HTTlen: |
|
3571 | HTTlen: |
3590 | |
Line 3572... | Line 3591... | ||
3572 | 3591 | ||
Line 3573... | Line 3592... | ||
3573 | 3592 | ||
Line -... | Line 3593... | ||
- | 3593 | HTTn: |
|
3574 | HTTn: |
3594 | |
Line 3575... | Line 3595... | ||
3575 | 3595 | db 'HTT: ',0 |
|
Line 3576... | Line 3596... | ||
3576 | db 'HTT: ',0 |
3596 | |
Line 3606... | Line 3626... | ||
3606 | 3626 | ||
Line 3607... | Line 3627... | ||
3607 | db '3DNOW!+: ',0 |
3627 | db '3DNOW!+: ',0 |
Line -... | Line 3628... | ||
- | 3628 | ||
- | 3629 | nowplen: |
|
3608 | 3630 | ||
Line -... | Line 3631... | ||
- | 3631 | ||
- | 3632 | ||
3609 | nowplen: |
3633 | ;-Type |
Line 3610... | Line 3634... | ||
3610 | 3634 | ||
Line 3611... | Line 3635... | ||
3611 | ;-Type |
3635 | |
Line 3834... | Line 3858... | ||
3834 | db 'Sandy Bridge',0 |
3858 | db 'Sandy Bridge',0 |
Line 3835... | Line 3859... | ||
3835 | 3859 | ||
Line 3836... | Line 3860... | ||
3836 | P2Alen: |
3860 | P2Alen: |
3837 | 3861 | ||
Line 3838... | Line 3862... | ||
3838 | P2D: |
3862 | P2D: |
Line 3839... | Line -... | ||
3839 | db 'Sandy bridge-E',0 |
- | |
3840 | 3863 | db 'Sandy bridge-E',0 ; stepping M1, micron 0.032 |
|
3841 | P2Dlen: |
3864 | |
3842 | 3865 | P2Dlen: |
|
Line 3843... | Line 3866... | ||
3843 | 3866 | ||
Line 4040... | Line 4063... | ||
4040 | 4063 | ||
Line 4041... | Line 4064... | ||
4041 | AF4len: |
4064 | AF4len: |
Line 4042... | Line 4065... | ||
4042 | 4065 | ||
Line 4043... | Line 4066... | ||
4043 | AF5: |
4066 | AF5: |
Line 4044... | Line 4067... | ||
4044 | 4067 | ||
Line 4206... | Line 4229... | ||
4206 | 4229 | ||
Line 4207... | Line 4230... | ||
4207 | coppercoeff db 50, 30, 40, 20, 55, 35, 45, 25, 35, 70, 80, 60, 20, 75, 15, 65, 90, 110, 120, 20, 95, 115, 85, 25, 35, 70, 80, 100, 20, 75, 15, 105 |
4230 | coppercoeff db 50, 30, 40, 20, 55, 35, 45, 25, 35, 70, 80, 60, 20, 75, 15, 65, 90, 110, 120, 20, 95, 115, 85, 25, 35, 70, 80, 100, 20, 75, 15, 105 |
Line -... | Line 4231... | ||
- | 4231 | ||
- | 4232 | tualatcoeff db 120, 35, 35, 40, 55, 35, 115, 35, 160, 70, 80, 60, 40, 75, 35, 65, 90, 110, 35, 35, 95, 35, 85, 35, 35, 35, 130, 100, 140, 35, 150, 105 |
|
- | 4233 | ||
- | 4234 | ||
- | 4235 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
|
- | 4236 | ; |
|
- | 4237 | ||
- | 4238 | ; include images and unpacking- and hasharea |
|
- | 4239 | ||
- | 4240 | ; |
|
4208 | 4241 | ||
4209 | tualatcoeff db 120, 35, 35, 40, 55, 35, 115, 35, 160, 70, 80, 60, 40, 75, 35, 65, 90, 110, 35, 35, 95, 35, 85, 35, 35, 35, 130, 100, 140, 35, 150, 105 |
4242 | include 'logos.inc' ; include file where gif's are stored |
Line 4210... | Line 4243... | ||
4210 | 4243 | ||
4211 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
4244 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 4445... | Line 4478... | ||
4445 | 4478 | ||
Line 4446... | Line 4479... | ||
4446 | linel3 dd ? |
4479 | linel3 dd ? |
Line -... | Line 4480... | ||
- | 4480 | ||
4447 | 4481 | che db ? ; numbers of calls for Intel caches detection |
|
Line 4448... | Line 4482... | ||
4448 | che db ? ; numbers of calls for Intel caches detection |
4482 | |
Line 4449... | Line 4483... | ||
4449 | 4483 | ;;added |
|
Line 4459... | Line 4493... | ||
4459 | db 0x0 |
4493 | db 0x0 |
Line 4460... | Line 4494... | ||
4460 | 4494 | ||
Line 4461... | Line -... | ||
4461 | - | ||
4462 | align 4 |
- | |
4463 | 4495 | ||
Line 4464... | Line 4496... | ||
4464 | 4496 | align 4 |
|
Line 4465... | Line 4497... | ||
4465 | 4497 |