Subversion Repositories Kolibri OS

Rev

Rev 450 | Blame | Last modification | View Log | Download | RSS feed

  1. ;******************************************************************************
  2. ; project name:    CPUID
  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;
  5. ;                  CPUID works in MS Windows by means of emulator KlbrInWin from Diamond  (http://diamondz.land.ru)
  6. ; compiler:        flat assembler 1.67.21
  7. ; version:         2.2
  8. ; last update:     5st April 2007
  9. ; maintained by:   Sergey Kuzmin aka Wildwest
  10. ; e-mail:          kuzmin_serg@list.ru
  11. ; site:            http://coolthemes.narod.ru/files.html
  12. ;******************************************************************************
  13. ; Summary:
  14. ;        supported vendors  - Intel, AMD, VIA, Cyrix, IDT (Centaur),Transmeta
  15. ;        displayed features - CPU frequency;
  16. ;                             Internal Name;
  17. ;                             Multiplier and System Clock frequency;
  18. ;                             Standard and Extended Features;
  19. ;                             CPU signature (family, model,stepping);
  20. ;                             Codename;
  21. ;                             L1, L2 and L3 Caches;
  22. ;                             Technology;
  23. ;                             CPU Vendor;
  24. ;                             Type and Brand ID;
  25. ;                             Logo for Vendors;
  26. ;                             calculation of PR-rating for AMD AthlonXP;
  27. ;                             Amout of RAM (available and total)
  28. ;                             Highest input values for standard and extended calls
  29. ;        performed tests    - Performance test (RSA encoding)
  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. ;******************************************************************************
  39. ;HISTORY:
  40. ;3.0: CPUID   01/04/2007 (not finished)
  41. ;Authors:    Sergey Kuzmin aka Wildwest <kuzmin_serg@list.ru>
  42. ;            Iliya Mikhailov aka Ghost  <Ghost.nsk@gmail.com>
  43. ;            /^S0rG^\ <s0rg@ngs.ru>
  44. ;Features:  
  45. ;          (+)  real-time RAM monitoring (previous versions showed changed amount of available RAM only at redraw event or CPUID window activation);
  46. ;          (+)  fixed address of LAHF feature, added detection of CMPL, SVM, MOVCR8 technologies for AMD;
  47. ;          (+)  fixed L2 cache size detection for VIA (they changed format from 8 bits to 16 bits several years ago);
  48. ;          (+)  more macroses for Interface and Threads (from Menuett.inc written by /^S0rG^\, 2002), sources separated into several include files;
  49. ;          (++) more info about caches for VIA and Transmeta;
  50. ;          (+)  added detection of DCA, SSSE3, VMX technologies for Intel;
  51. ;          (+)  updated multiplier detection for AMD and Intel (thanks a lot to Ghost);
  52. ;          (+)  client-relative drawing, title with function 0
  53. ;               It means end of capability with MenuetOS!
  54. ;Known issues: Sempron marked as AthlonXP
  55. ;              second window doesn't closed when you close main window
  56. ;-----------------------------------------------------------------------------
  57. ;2.1: CPUID   10/01/2007
  58. ;Author:    Sergey Kuzmin aka Wildwest <kuzmin_serg@list.ru>
  59. ;Features:        
  60. ;          (++) more info about caches for AMD and Intel
  61. ;          (+)  redesign
  62. ;          (+)  fixes for names of some extended features
  63. ;          (+)  fixed missing technology for some AMD64 cpu's
  64. ;          (+)  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)
  65. ;          (+)  new caches for Intel
  66. ;          (+)  fixed Celeron detection based on L2 cache size for newest Intel CPU (there are Celeron models with 512 Kb);
  67. ;          (+)  CPUID now display System Clock with accuracy 0.01 MHz;
  68. ;          (+)  new logo for Intel (they changed it some time ago);
  69. ;Known issues: Sempron marked as AthlonXP
  70. ;              second window doesn't closed when you close main window
  71. ;-----------------------------------------------------------------------------
  72. ;2.0: CPUID   31/10/2006
  73. ;Authors:    Sergey Kuzmin aka Wildwest <kuzmin_serg@list.ru>
  74. ;           Eugeniy Grechnikov aka Diamond <diamondz@land.ru>
  75. ;           Iliya Mikhailov aka Ghost  <Ghost.nsk@gmail.com>
  76. ;Features:
  77. ;          (+)  detection of Brand ID of AMD CPU's (Opteron etc - not finished)
  78. ;          (+)  detection of Extended family and Model of AMD CPU's
  79. ;          (+)  interface+(redesign)
  80. ;          (+)  calculation of System Clock
  81. ;          (++) added multiplier detection for AMD and Intel (thanks a lot to Ghost)
  82. ;          (+)  optimization of GIF decoder, code cleanup and bugfix by Diamond;
  83. ;          (+)  fixed bug with MMX+ detection for Cyrix CPU (in second window;
  84. ;               it was properly recognized in main window);
  85. ;          (+)  we show appropiate message in second window if Extended Features
  86. ;              ($8000_000x) aren't available;
  87. ;          (+)  we mark unknown CPU models as "Next generation CPU";
  88. ;Known issues: Sempron marked as AthlonXP
  89. ;              second window doesn't closed when you close main window
  90. ;-----------------------------------------------------------------------------
  91. ;1.1: CPUID   17/03/2006
  92. ;Author:    Sergey Kuzmin aka Wildwest <kuzmin_serg@list.ru>
  93. ;Features:
  94. ;          (+)  performance test now runs after click at "Press for more" button => we start app without test, i.e.
  95. ;               immediately, but application can be unstable during multiple switching between windows(need testing)
  96. ;          (++) added detection of total and available amount of RAM (would work only in KolibriOS)
  97. ;          (++) added detection of extended family and model (not shown, but if you want...);
  98. ;          (++) added detection of effective family and model;
  99. ;          (+)  more codenames: Intel Tejas, Presler, Yonah, Conroe;
  100. ;          (+)  more codenames: AMD Toledo;
  101. ;          (+)  interface+(redesign).
  102. ;Bugs:  probably some non-critical graphical issues
  103. ;Known issues: Sempron is not supported (marked as AthlonXP)
  104. ;-----------------------------------------------------------------------------
  105. ;1.0: CPUID   26/09/2005
  106. ;Authors:    Sergey Kuzmin aka Wildwest <kuzmin_serg@list.ru>
  107. ;           Marat Zakiyanov aka Mario79 <mario79@bk.ru>
  108. ;           Andrey Halyavin aka halyavin <halyavin@land.ru>
  109. ;Features:
  110. ;          (+) fixed bug, when processor doesn't support extented features and program don't report 'no' in such case
  111. ;          (+) fixed bug in CPU Type detection
  112. ;          (+) fixed bug, when program crashes on AMD AthlonXP when after click on 'Press for more' button
  113. ;              you click on 'Choose FSB' button;
  114. ;          (+) added output of highest standard and extended calls
  115. ;          (+) Extended Features(phase 1 - big part of AMD/Intel specific EF)
  116. ;          (+) reworked P-rating calculation for AMD AthlonXP ->
  117. ;              now one program for 266, 333, 400 MHz FSB
  118. ;              (but unstable - see Bugs section)
  119. ;          (+) support for Intel F5x, renamed C3(Esther) to C7(Esther)
  120. ;          (+) more codenames
  121. ;             (Intel: new Prescott's model; Dothan;  VIA: Esther;
  122. ;              AMD: Newcastle, Paris, Winchester, San Diego, Venice, Palermo)
  123. ;          (+) performance test (RSA encoding, fixed-point arithmetics)
  124. ;              by Andrey Halyavin
  125. ;          (+) interface+(thanks to Mario79 for additional window
  126. ;              and to me for nice button)
  127. ;Bugs:  probably some non-critical graphical issues
  128. ;Known issues: Sempron is not supported (marked as AthlonXP)
  129. ;-----------------------------------------------------------------------------
  130. ;0.9: CPUID   24/01/2005
  131. ;Authors:    Sergey Kuzmin aka Wildwest <kuzmin_serg@list.ru>
  132. ;           Madis Kalme aka Madis731 <madis.kalme@mail.ee>
  133. ;           Jeffrey Amelynck aka Profkid <the_adams_familie@hotmail.com>
  134. ;Features:
  135. ;          (+) deleting leading whitespaces in Intel P4's internal name
  136. ;              by Madis Kalme
  137. ;          (+) all standard features
  138. ;          (+) more codenames (Transmeta series)
  139. ;          (+) caches for Cyrix
  140. ;          (+) Brand ID for Intel
  141. ;          (+) detect L3 cache for Intel
  142. ;          (+) detect Xeon (will be improved later, at this moment see Brand)
  143. ;          (+) interface+(redesign and grafical logos for vendors)
  144. ;          (+) MMX+ test for Cyrix
  145. ;          (+) Type for Intel
  146. ;Bugs:     no !!!
  147. ;Known issues: Sempron is not supported (marked as AthlonXP)
  148. ;              caches for IDT is not detected
  149. ;-----------------------------------------------------------------------------
  150. ;early history was removed; download any old version of CPUID and read it, if you want
  151. ;*****************************************************************************