diff options
-rw-r--r-- | Changelog | 3 | ||||
-rw-r--r-- | DOCS/man/en/mplayer.1 | 7 | ||||
-rw-r--r-- | DOCS/man/ru/mplayer.1 | 11 | ||||
-rw-r--r-- | DOCS/xml/en/cd-dvd.xml | 14 | ||||
-rw-r--r-- | DOCS/xml/en/faq.xml | 2 | ||||
-rw-r--r-- | DOCS/xml/ru/cd-dvd.xml | 18 | ||||
-rw-r--r-- | DOCS/xml/ru/faq.xml | 4 | ||||
-rw-r--r-- | Makefile | 1 | ||||
-rwxr-xr-x | configure | 107 | ||||
-rw-r--r-- | cpudetect.c | 41 | ||||
-rw-r--r-- | cputable.h | 549 | ||||
-rw-r--r-- | etc/codecs.conf | 4 | ||||
-rw-r--r-- | libaf/af.c | 3 | ||||
-rw-r--r-- | libaf/af_stats.c | 159 | ||||
-rw-r--r-- | libmpcodecs/ae_lavc.c | 2 | ||||
-rw-r--r-- | libswscale/Makefile | 3 | ||||
-rw-r--r-- | libswscale/swscale.c | 2 | ||||
-rw-r--r-- | libswscale/swscale.h | 2 | ||||
-rw-r--r-- | libswscale/yuv2rgb2.c | 683 | ||||
-rw-r--r-- | libvo/vo_vdpau.c | 197 | ||||
-rw-r--r-- | mplayer.c | 3 | ||||
-rw-r--r-- | stream/dvbin.h | 9 |
22 files changed, 1159 insertions, 665 deletions
@@ -62,6 +62,7 @@ MPlayer (1.0) * change vf_screenshot dependency from libpng to lavc * add af_scaletempo which maintains audio pitch when changing playback speed * fix multi-channel reordering + * af_stats, filter to print information about the audio stream Streaming: * tv:// support for Windows @@ -130,6 +131,8 @@ MPlayer (1.0) * vo_macosx can now be compiled in 64-bits mode * OpenGL support for unmodified MinGW64 + SWScaler: + * new LGPLed YUV to RGB tables generator rc2try2: diff --git a/DOCS/man/en/mplayer.1 b/DOCS/man/en/mplayer.1 index 927678e3d9..81ebd0cbec 100644 --- a/DOCS/man/en/mplayer.1 +++ b/DOCS/man/en/mplayer.1 @@ -5484,6 +5484,13 @@ Changing playback speed, would change pitch, leaving audio tempo at 1.2x. .RE .PD 1 . +.TP +.B "stats\ \ " +Collects and prints statistics about the audio stream, especially the volume. +These statistics are especially intended to help adjusting the volume while +avoiding clipping. +The volumes are printed in dB and compatible with the volume audio filter. +. . . .SH "VIDEO FILTERS" diff --git a/DOCS/man/ru/mplayer.1 b/DOCS/man/ru/mplayer.1 index 19c7cb468d..28efcf0fb4 100644 --- a/DOCS/man/ru/mplayer.1 +++ b/DOCS/man/ru/mplayer.1 @@ -2,7 +2,7 @@ .\" This man page was/is done by Gabucino, Diego Biurrun, Jonas Jermann .\" Translated by Vladimir Voroshilov <voroshil@gmail.com> .\" Encoding: koi8-r -.\" synced with r28670 +.\" synced with r28704 . .\" -------------------------------------------------------------------------- .\" @@ -5554,6 +5554,15 @@ scale . .RE .PD 1 . +.TP +.B "stats\ \ " + , +. + + . + + volume. +. . . .SH " " diff --git a/DOCS/xml/en/cd-dvd.xml b/DOCS/xml/en/cd-dvd.xml index fafc76410d..535f62fe08 100644 --- a/DOCS/xml/en/cd-dvd.xml +++ b/DOCS/xml/en/cd-dvd.xml @@ -53,7 +53,7 @@ If you set it to too high, the drive will continuously spin up and down, and will dramatically decrease the performance. It is recommended that you also tune your CD-ROM drive with <command>hdparm</command>: -<screen>hdparm -d1 -a8 -u1 <replaceable>[cdrom device]</replaceable></screen> +<screen>hdparm -d1 -a256 -u1 <replaceable>[cdrom device]</replaceable></screen> </para> <para> @@ -68,8 +68,16 @@ for fine-tuning your CD-ROM. </para> <para> -SCSI drives do not have a uniform way of setting these parameters (Do you know -one? Tell us!) There is a tool that works for +You may tweak the speed of SCSI CD-ROM drives with +<command>sdparm</command>, you need version 1.03 or higher: +<screen>sdparm --command=speed=<replaceable>[speed in kB/s]</replaceable> <replaceable>[cdrom device]</replaceable></screen> +Speed must be specified in kilobytes per second, the drive will +round it as appropriate. Please refer to the sdparm man page for +details. +</para> + +<para> +There is also a dedicated tool that works for <ulink url="http://das.ist.org/~georg/">Plextor SCSI drives</ulink>. </para> </sect2> diff --git a/DOCS/xml/en/faq.xml b/DOCS/xml/en/faq.xml index 0173cb8c95..83989dbf3a 100644 --- a/DOCS/xml/en/faq.xml +++ b/DOCS/xml/en/faq.xml @@ -590,7 +590,7 @@ It works normal when i run it as a user. <answer><para> This is again a power management effect (see above). Plug the external power connector in <emphasis role="bold">before</emphasis> you power on your notebook -or use the <option>-nortc</option> option. +or make sure you do not use the <option>-rtc</option> option. </para></answer> </qandaentry> diff --git a/DOCS/xml/ru/cd-dvd.xml b/DOCS/xml/ru/cd-dvd.xml index bc1ad4d82e..2fc96328d3 100644 --- a/DOCS/xml/ru/cd-dvd.xml +++ b/DOCS/xml/ru/cd-dvd.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- synced with r26990 --> +<!-- synced with r28706 --> <chapter id="cd-dvd"> <title>Использование CD/DVD</title> @@ -54,7 +54,7 @@ дисках с царапинами). Если поставить слишком большое значение, то постоянный запуск и остановка вращения диска ужасно снизят эффективность. Рекомендуется также подстроить привод, используя <command>hdparm</command>: -<screen>hdparm -d1 -a8 -u1 <replaceable>[устройство cdrom]</replaceable></screen> +<screen>hdparm -d1 -a256 -u1 <replaceable>[устройство cdrom]</replaceable></screen> </para> <para> @@ -70,9 +70,17 @@ </para> <para> -У SCSI приводов нет общего способа выставить эти параметры (Вы знаете -какой-нибудь? Расскажите нам!) Существует программа для -<ulink url="http://das.ist.org/~georg/">Plextor SCSI приводов</ulink>. +Вы можете настроить скорость SCSI CD-ROM приводов с помощью +<command>sdparm</command>, необходима версия 1.03 или выше: +<screen>sdparm --command=speed=<replaceable>[скорость в кБ/с]</replaceable> <replaceable>[устройство cdrom]</replaceable></screen> +Скорость должна быть указана в килобайтах в секунду, привод +округлит её надлежащим образом. Пожалуйста, обратитесь с странице +руководства sdparm для деталей. +</para> + +<para> +There is also a dedicated tool that works for +<ulink url="http://das.ist.org/~georg/">Plextor SCSI drives</ulink>. </para> </sect2> diff --git a/DOCS/xml/ru/faq.xml b/DOCS/xml/ru/faq.xml index 99c87172c0..7addcabb2e 100644 --- a/DOCS/xml/ru/faq.xml +++ b/DOCS/xml/ru/faq.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- synced with r28660 --> +<!-- synced with r28707 --> <chapter id="faq" xreflabel="FAQ"> <title>Часто Задаваемые вопросы</title> @@ -578,7 +578,7 @@ Windows Media 9.) <answer><para> Это тоже эффект системы управления энергопотреблением (смотрите выше). Подсоедините разъем внешнего питания <emphasis role="bold">до</emphasis> -включения ноутбука либо используйте опцию <option>-nortc</option>. +включения ноутбука либо убедитесь, что не используется опция <option>-rtc</option>. </para></answer> </qandaentry> @@ -70,6 +70,7 @@ SRCS_COMMON = asxparser.c \ libaf/af_resample.c \ libaf/af_scaletempo.c \ libaf/af_sinesuppress.c \ + libaf/af_stats.c \ libaf/af_sub.c \ libaf/af_surround.c \ libaf/af_sweep.c \ @@ -159,7 +159,7 @@ ppc() { alpha() { case "$host_arch" in - alpha) return 0;; + alpha*) return 0;; *) return 1;; esac } @@ -2188,7 +2188,7 @@ EOF ;; - alpha) + alpha*) _arch='ALPHA' _target_arch='ARCH_ALPHA = yes' iproc='alpha' @@ -2404,6 +2404,7 @@ elif test -z "$CFLAGS" ; then CFLAGS="-O2 $_march $_mcpu $_pipe" else CFLAGS="-Wall -Wno-switch -Wpointer-arith -Wredundant-decls -O4 $_march $_mcpu $_pipe -ffast-math -fomit-frame-pointer" + _ld_extra="$_ld_extra -ffast-math" fi else _warn_CFLAGS=yes @@ -7881,52 +7882,6 @@ fi echores "$_maemo" fi -#this must be the last test to be performed or the ones following it will likely fail -#because libdvdnavmini is intentionally not linked against libdvdread (to permit mplayer -# to use its own copy of the library) -echocheck "DVD support (libdvdnav)" -if test "$_dvdread_internal" = yes && test ! -f "libdvdnav/dvdnav.c" ; then - _dvdnav=no -fi -dvdnav_internal=no -if test "$_dvdnav" = auto ; then - if test "$_dvdread_internal" = yes ; then - _dvdnav=yes - dvdnav_internal=yes - _res_comment="internal" - else - $_dvdnavconfig --version --minilibs >> $TMPLOG 2>&1 || _dvdnav=no - fi -fi -if test "$_dvdnav" = auto ; then - cat > $TMPC <<EOF -#include <inttypes.h> -#include <dvdnav/dvdnav.h> -int main(void) { dvdnav_t *dvd=0; return 0; } -EOF - _dvdnav=no - _dvdnavdir=`$_dvdnavconfig --cflags` - _dvdnavlibs=`$_dvdnavconfig --libs` - cc_check $_dvdnavdir $_dvdnavlibs $_ld_dl $_ld_pthread && _dvdnav=yes -fi -if test "$_dvdnav" = yes ; then - _largefiles=yes - def_dvdnav='#define CONFIG_DVDNAV 1' - if test "$dvdnav_internal" = yes ; then - _inc_extra="$_inc_extra -Ilibdvdnav" - _inputmodules="dvdnav(internal) $_inputmodules" - else - _inc_extra="$_inc_extra `$_dvdnavconfig --cflags`" - _ld_extra="$_ld_extra `$_dvdnavconfig --minilibs`" - _inputmodules="dvdnav $_inputmodules" - fi -else - def_dvdnav='#undef CONFIG_DVDNAV' - _noinputmodules="dvdnav $_noinputmodules" -fi -echores "$_dvdnav" - - ############################################################################# # On OS/2 nm supports only a.out. So the -Zomf compiler option to generate @@ -7989,11 +7944,61 @@ else CFLAGS="-D_ISOC99_SOURCE -D_BSD_SOURCE $CFLAGS" fi +cc_check -mno-omit-leaf-frame-pointer && cflags_no_omit_leaf_frame_pointer="-mno-omit-leaf-frame-pointer" + +# This must be the last test to be performed. Any other tests following it +# could fail due to linker errors. libdvdnavmini is intentionally not linked +# against libdvdread (to permit MPlayer to use its own copy of the library). +# So any compilation using the flags added here but not linking against +# libdvdread can fail. +echocheck "DVD support (libdvdnav)" +if test "$_dvdread_internal" = yes && test ! -f "libdvdnav/dvdnav.c" ; then + _dvdnav=no +fi +dvdnav_internal=no +if test "$_dvdnav" = auto ; then + if test "$_dvdread_internal" = yes ; then + _dvdnav=yes + dvdnav_internal=yes + _res_comment="internal" + else + $_dvdnavconfig --version --minilibs >> $TMPLOG 2>&1 || _dvdnav=no + fi +fi +if test "$_dvdnav" = auto ; then + cat > $TMPC <<EOF +#include <inttypes.h> +#include <dvdnav/dvdnav.h> +int main(void) { dvdnav_t *dvd=0; return 0; } +EOF + _dvdnav=no + _dvdnavdir=`$_dvdnavconfig --cflags` + _dvdnavlibs=`$_dvdnavconfig --libs` + cc_check $_dvdnavdir $_dvdnavlibs $_ld_dl $_ld_pthread && _dvdnav=yes +fi +if test "$_dvdnav" = yes ; then + _largefiles=yes + def_dvdnav='#define CONFIG_DVDNAV 1' + if test "$dvdnav_internal" = yes ; then + _inc_extra="$_inc_extra -Ilibdvdnav" + _inputmodules="dvdnav(internal) $_inputmodules" + else + _inc_extra="$_inc_extra `$_dvdnavconfig --cflags`" + _ld_extra="$_ld_extra `$_dvdnavconfig --minilibs`" + _inputmodules="dvdnav $_inputmodules" + fi +else + def_dvdnav='#undef CONFIG_DVDNAV' + _noinputmodules="dvdnav $_noinputmodules" +fi +echores "$_dvdnav" + +# DO NOT ADD ANY TESTS THAT USE LINKER FLAGS HERE (like cc_check). +# Read dvdnav comment above. + CFLAGS_FFMPEG="-I../.. $CFLAGS" CFLAGS="-Iffmpeg $CFLAGS" -cc_check -mno-omit-leaf-frame-pointer && cflags_no_omit_leaf_frame_pointer="-mno-omit-leaf-frame-pointer" - ############################################################################# echo "Creating config.mak" cat > config.mak << EOF @@ -8723,6 +8728,8 @@ $def_yasm #define CONFIG_SMALL 0 #define CONFIG_SWSCALE 1 +#define HAVE_GETHRTIME 0 +#define HAVE_INLINE_ASM 0 #define HAVE_POLL_H 1 #define HAVE_PPC4XX 0 diff --git a/cpudetect.c b/cpudetect.c index 8d306b1c3b..5da169dfc0 100644 --- a/cpudetect.c +++ b/cpudetect.c @@ -229,16 +229,7 @@ void GetCpuCaps( CpuCaps *caps) #endif // RUNTIME_CPUDETECT } - -#define CPUID_EXTFAMILY ((regs2[0] >> 20)&0xFF) /* 27..20 */ -#define CPUID_EXTMODEL ((regs2[0] >> 16)&0x0F) /* 19..16 */ -#define CPUID_TYPE ((regs2[0] >> 12)&0x04) /* 13..12 */ -#define CPUID_FAMILY ((regs2[0] >> 8)&0x0F) /* 11..08 */ -#define CPUID_MODEL ((regs2[0] >> 4)&0x0F) /* 07..04 */ -#define CPUID_STEPPING ((regs2[0] >> 0)&0x0F) /* 03..00 */ - char *GetCpuFriendlyName(unsigned int regs[], unsigned int regs2[]){ -#include "cputable.h" /* get cpuname and cpuvendors */ char vendor[13]; char *retname; int i; @@ -247,6 +238,7 @@ char *GetCpuFriendlyName(unsigned int regs[], unsigned int regs2[]){ mp_msg(MSGT_CPUDETECT,MSGL_FATAL,"Error: GetCpuFriendlyName() not enough memory\n"); exit(1); } + retname[0] = '\0'; sprintf(vendor,"%.4s%.4s%.4s",(char*)(regs+1),(char*)(regs+3),(char*)(regs+2)); @@ -254,46 +246,15 @@ char *GetCpuFriendlyName(unsigned int regs[], unsigned int regs2[]){ if (regs[0] >= 0x80000004) { // CPU has built-in namestring - retname[0] = '\0'; for (i = 0x80000002; i <= 0x80000004; i++) { do_cpuid(i, regs); strncat(retname, (char*)regs, 16); } - return retname; - } - - for(i=0; i<MAX_VENDORS; i++){ - if(!strcmp(cpuvendors[i].string,vendor)){ - if(cpuname[i][CPUID_FAMILY][CPUID_MODEL]){ - snprintf(retname,255,"%s %s",cpuvendors[i].name,cpuname[i][CPUID_FAMILY][CPUID_MODEL]); - } else { - snprintf(retname,255,"unknown %s %d. Generation CPU",cpuvendors[i].name,CPUID_FAMILY); - mp_msg(MSGT_CPUDETECT,MSGL_WARN,"unknown %s CPU:\n",cpuvendors[i].name); - mp_msg(MSGT_CPUDETECT,MSGL_WARN,"Vendor: %s\n",cpuvendors[i].string); - mp_msg(MSGT_CPUDETECT,MSGL_WARN,"Type: %d\n",CPUID_TYPE); - mp_msg(MSGT_CPUDETECT,MSGL_WARN,"Family: %d (ext: %d)\n",CPUID_FAMILY,CPUID_EXTFAMILY); - mp_msg(MSGT_CPUDETECT,MSGL_WARN,"Model: %d (ext: %d)\n",CPUID_MODEL,CPUID_EXTMODEL); - mp_msg(MSGT_CPUDETECT,MSGL_WARN,"Stepping: %d\n",CPUID_STEPPING); - mp_msg(MSGT_CPUDETECT,MSGL_WARN,"Please send the above info along with the exact CPU name" - "to the MPlayer-Developers, so we can add it to the list!\n"); - } - } } - retname[255] = 0; - - //printf("Detected CPU: %s\n", retname); return retname; } -#undef CPUID_EXTFAMILY -#undef CPUID_EXTMODEL -#undef CPUID_TYPE -#undef CPUID_FAMILY -#undef CPUID_MODEL -#undef CPUID_STEPPING - - #if defined(__linux__) && defined(_POSIX_SOURCE) && !ARCH_X86_64 static void sigill_handler_sse( int signal, struct sigcontext sc ) { diff --git a/cputable.h b/cputable.h deleted file mode 100644 index 2f5ce20182..0000000000 --- a/cputable.h +++ /dev/null @@ -1,549 +0,0 @@ -/* - * Map CPUID to real CPU name. - * Family F codenames owe much thanks to Neil Phillips, author of x86test. - * - * Copyright (C) 2001 Felix Buenemann <atmosfear at users.sourceforge.net> - * - * This file is part of MPlayer. - * - * MPlayer is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * MPlayer is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with MPlayer; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - */ - -#ifndef MPLAYER_CPUTABLE_H -#define MPLAYER_CPUTABLE_H - -#define MAX_VENDORS 8 /* Number of CPU Vendors */ - -//#define N_UNKNOWN "unknown" -//#define N_UNKNOWNEXT "unknown extended model" -#define N_UNKNOWN "" -#define N_UNKNOWNEXT "" - -#define F_UNKNOWN { \ -N_UNKNOWN, \ -N_UNKNOWN, \ -N_UNKNOWN, \ -N_UNKNOWN, \ -N_UNKNOWN, \ -N_UNKNOWN, \ -N_UNKNOWN, \ -N_UNKNOWN, \ -N_UNKNOWN, \ -N_UNKNOWN, \ -N_UNKNOWN, \ -N_UNKNOWN, \ -N_UNKNOWN, \ -N_UNKNOWN, \ -N_UNKNOWN, \ -N_UNKNOWN \ -} - -static const char *cpuname - /* Vendor */ [MAX_VENDORS] - /* Family */ [16] - /* Model */ [16] - ={ - /* Intel Corporation, "GenuineIntel" */ { - /* 0 */ F_UNKNOWN, - /* 1 */ F_UNKNOWN, - /* 2 */ F_UNKNOWN, - /* 3 i386 */ F_UNKNOWN, /* XXX new 386 chips may support CPUID! */ - /* 4 i486 */ { - /* 0 */ "i486DX-25/33", /* only few of these */ - /* 1 */ "i486DX-50", /* support CPUID! */ - /* 2 */ "i486SX", - /* 3 */ "i486DX2", /* CPUID only on new chips! */ - /* 4 */ "i486SL", - /* 5 */ "i486SX2", - /* 6 */ N_UNKNOWN, - /* 7 */ "i486DX2/write-back", /* returns 3 in write-through mode */ - /* 8 */ "i486DX4", - /* 9 */ "i486DX4/write-back", - /* A */ N_UNKNOWN, - /* B */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* E */ N_UNKNOWN, - /* F */ N_UNKNOWNEXT - }, - /* 5 i586 */ { - /* 0 */ "Pentium P5 A-step", - /* 1 */ "Pentium P5", - /* 2 */ "Pentium P54C", - /* 3 */ "Pentium OverDrive P24T", - /* 4 */ "Pentium MMX P55C", - /* 5 */ N_UNKNOWN, /* XXX DX4 OverDrive? */ - /* 6 */ N_UNKNOWN, /* XXX P5 OverDrive? */ - /* 7 */ "Pentium P54C (new)", - /* 8 */ "Pentium MMX P55C (new)", - /* 9 */ N_UNKNOWN, - /* A */ N_UNKNOWN, - /* B */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* E */ N_UNKNOWN, - /* F */ N_UNKNOWNEXT - }, - /* 6 i686 */ { - /* 0 */ "PentiumPro A-step", - /* 1 */ "PentiumPro", - /* 2 */ N_UNKNOWN, - /* 3 */ "Pentium II Klamath/Pentium II OverDrive", - /* 4 */ N_UNKNOWN, /* XXX P55CT - OverDrive for P54? */ - /* 5 */ "Celeron Covington/Pentium II Deschutes,Tonga/Pentium II Xeon", - /* 6 */ "Celeron A Mendocino/Pentium II Dixon", - /* 7 */ "Pentium III Katmai/Pentium III Xeon Tanner", - /* 8 */ "Celeron 2/Pentium III Coppermine,Geyserville", - /* 9 */ "Pentium M Banias", /* XXX check */ - /* A */ "Pentium III Xeon Cascades", - /* B */ "Celeron 2/Pentium III Tualatin", - /* C */ N_UNKNOWN, - /* D */ "Pentium M Dothan", - /* E */ N_UNKNOWN, - /* F */ N_UNKNOWNEXT - }, - /* 7 Itanium */ { /* XXX check */ - /* 0 */ "Itanium Merced", - /* 1 */ N_UNKNOWN, - /* 2 */ N_UNKNOWN, - /* 3 */ N_UNKNOWN, - /* 4 */ N_UNKNOWN, - /* 5 */ N_UNKNOWN, - /* 6 */ N_UNKNOWN, - /* 7 */ N_UNKNOWN, - /* 8 */ N_UNKNOWN, - /* 9 */ N_UNKNOWN, - /* A */ N_UNKNOWN, - /* B */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* E */ N_UNKNOWN, - /* F */ N_UNKNOWNEXT - }, - /* 8 */ F_UNKNOWN, - /* 9 */ F_UNKNOWN, - /* A */ F_UNKNOWN, - /* B */ F_UNKNOWN, - /* C */ F_UNKNOWN, - /* D */ F_UNKNOWN, - /* E */ F_UNKNOWN, - /* F extended family (P4/new IA-64)*/ { - /* 0 */ "Pentium 4 Willamette; Xeon Foster", - /* 1 */ "Pentium 4 Willamette; Xeon Foster", - /* 2 */ "Pentium 4/Celeron 4 Northwood; Pentium 4 EE/Xeon Prestonia,Gallatin", - /* 3 */ "Pentium 4/Celeron D Prescott; Xeon Nocona", - /* 4 */ "Pentium 4/Celeron D Prescott; Pentium D/XE Smithfield; Xeon Nocona,Irwindale", - /* 5 */ N_UNKNOWN, - /* 6 */ N_UNKNOWN, - /* 7 */ N_UNKNOWN, - /* 8 */ N_UNKNOWN, - /* 9 */ N_UNKNOWN, - /* A */ N_UNKNOWN, - /* B */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* E */ N_UNKNOWN, - /* F */ N_UNKNOWNEXT - } - #if 0 /* out of table index boundaries */ - /* 1F Itanium 2 */ { /* XXX check */ - /* 0 */ "Itanium 2 McKinley", - /* 1 */ "Itanium 2 Madison", /* I coded on that :-) */ - /* 2 */ N_UNKNOWN, - /* 3 */ N_UNKNOWN, - /* 4 */ N_UNKNOWN, - /* 5 */ N_UNKNOWN, - /* 6 */ N_UNKNOWN, - /* 7 */ N_UNKNOWN, - /* 8 */ N_UNKNOWN, - /* 9 */ N_UNKNOWN, - /* A */ N_UNKNOWN, - /* B */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* E */ N_UNKNOWN, - /* F */ N_UNKNOWNEXT - }, - #endif - }, - /* United Microelectronics Corporation, "UMC UMC UMC " */ { - /* 0 */ F_UNKNOWN, - /* 1 */ F_UNKNOWN, - /* 2 */ F_UNKNOWN, - /* 3 */ F_UNKNOWN, - /* 4 486 (U5) */ { - /* 0 */ N_UNKNOWN, - /* 1 */ "486DX U5D", - /* 2 */ "486SX U5S", - /* 3 */ N_UNKNOWN, - /* 4 */ N_UNKNOWN, - /* 5 */ N_UNKNOWN, - /* 6 */ N_UNKNOWN, - /* 7 */ N_UNKNOWN, - /* 8 */ N_UNKNOWN, - /* 9 */ N_UNKNOWN, - /* A */ N_UNKNOWN, - /* B */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* E */ N_UNKNOWN, - /* F */ N_UNKNOWN - }, - /* 5 */ F_UNKNOWN, - /* 6 */ F_UNKNOWN, - /* 7 */ F_UNKNOWN, - /* 8 */ F_UNKNOWN, - /* 9 */ F_UNKNOWN, - /* A */ F_UNKNOWN, - /* B */ F_UNKNOWN, - /* C */ F_UNKNOWN, - /* D */ F_UNKNOWN, - /* E */ F_UNKNOWN, - /* F */ F_UNKNOWN - }, - /* Advanced Micro Devices, "AuthenticAMD" (very rare: "AMD ISBETTER") */ { - /* 0 */ F_UNKNOWN, - /* 1 */ F_UNKNOWN, - /* 2 */ F_UNKNOWN, - /* 3 */ F_UNKNOWN, - /* 4 486/5x86 */ { - /* 0 */ N_UNKNOWN, - /* 1 */ N_UNKNOWN, - /* 2 */ N_UNKNOWN, - /* 3 */ "486DX2", - /* 4 */ N_UNKNOWN, - /* 5 */ N_UNKNOWN, - /* 6 */ N_UNKNOWN, - /* 7 */ "486DX2/write-back", - /* 8 */ "486DX4/5x86", - /* 9 */ "486DX4/write-back", - /* A */ N_UNKNOWN, - /* B */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* E */ "5x86", - /* F */ "5x86/write-back" - }, - /* 5 K5/K6 */ { - /* 0 */ "K5 SSA5 (PR75,PR90,PR100)", - /* 1 */ "K5 5k86 (PR120,PR133)", - /* 2 */ "K5 5k86 (PR166)", - /* 3 */ "K5 5k86 (PR200)", - /* 4 */ N_UNKNOWN, - /* 5 */ N_UNKNOWN, - /* 6 */ "K6", - /* 7 */ "K6 Little Foot", - /* 8 */ "K6-2", - /* 9 */ "K6-III Chomper", - /* A */ N_UNKNOWN, - /* B */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ "K6-2+/K6-III+ Sharptooth", - /* E */ N_UNKNOWN, - /* F */ N_UNKNOWN - }, - /* 6 K7 */ { - /* 0 */ N_UNKNOWN, /* Argon? */ - /* 1 */ "Athlon K7", - /* 2 */ "Athlon K75 Pluto,Orion", - /* 3 */ "Duron Spitfire", - /* 4 */ "Athlon Thunderbird", - /* 5 */ N_UNKNOWN, - /* 6 */ "Duron/Athlon 4/MP/XP Palomino", - /* 7 */ "Duron Morgan,Camaro", - /* 8 */ "Sempron/Athlon MP/XP Thoroughbred; Duron Applebred", - /* 9 */ N_UNKNOWN, - /* A */ "Sempron/Athlon MP/XP/XP-M Barton,Thorton", - /* B */ N_UNKNOWN, - /* E */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* F */ N_UNKNOWN - }, - /* 7 */ F_UNKNOWN, - /* 8 */ F_UNKNOWN, - /* 9 */ F_UNKNOWN, - /* A */ F_UNKNOWN, - /* B */ F_UNKNOWN, - /* C */ F_UNKNOWN, - /* D */ F_UNKNOWN, - /* E */ F_UNKNOWN, - /* F K8 */ { - /* 0 */ N_UNKNOWN, - /* 1 */ "Opteron Egypt,Italy,Denmark", - /* 2 */ N_UNKNOWN, - /* 3 */ "Athlon 64 X2 Manchester,Toledo", - /* 4 */ "Athlon 64 Clawhammer; Athlon 64 X2 Toledo; Turion Newark,Lancaster", - /* 5 */ "Athlon 64 FX/Opteron Sledgehammer,Athens,Troy,Venus", - /* 6 */ N_UNKNOWN, - /* 7 */ "Athlon 64/FX Sledgehammer,San Diego,Venice", - /* 8 */ "Mobile Athlon 64 Newcastle; Mobile Sempron Dublin", - /* 9 */ N_UNKNOWN, - /* A */ N_UNKNOWN, - /* B */ "Athlon 64 Newcastle; Athlon 64 X2 Manchester", - /* E */ N_UNKNOWN, - /* C */ "Athlon 64 Newcastle,Odesssa,Oakville,Venice; Sempron Palermo,Paris,Dublin", - /* D */ N_UNKNOWN, - /* F */ "Athlon 64 Newcastle,Winchester,San Diego,Venice; Sempron Palermo" - } - - }, - /* Cyrix Corp./VIA Inc., "CyrixInstead" */ { - /* 0 */ F_UNKNOWN, - /* 1 */ F_UNKNOWN, - /* 2 */ F_UNKNOWN, - /* 3 */ F_UNKNOWN, - /* 4 5x86 */ { - /* 0 */ N_UNKNOWN, - /* 1 */ N_UNKNOWN, - /* 2 */ N_UNKNOWN, - /* 3 */ N_UNKNOWN, - /* 4 */ "MediaGX", - /* 5 */ N_UNKNOWN, - /* 6 */ N_UNKNOWN, - /* 7 */ N_UNKNOWN, - /* 8 */ N_UNKNOWN, - /* 9 */ "5x86", /* CPUID maybe only on newer chips */ - /* A */ N_UNKNOWN, - /* B */ N_UNKNOWN, - /* E */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* F */ N_UNKNOWN - }, - /* 5 M1 */ { - /* 0 */ "M1 test-sample", /*?*/ - /* 1 */ N_UNKNOWN, - /* 2 */ "6x86 M1", - /* 3 */ "6x86L M1", - /* 4 */ "GXm", - /* 5 */ N_UNKNOWN, - /* 6 */ N_UNKNOWN, - /* 7 */ N_UNKNOWN, - /* 8 */ N_UNKNOWN, - /* 9 */ N_UNKNOWN, - /* A */ N_UNKNOWN, - /* B */ N_UNKNOWN, - /* E */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* F */ N_UNKNOWN - }, - /* 6 M2 */ { - /* 0 */ "6x86MX M2/M-II", - /* 1 */ N_UNKNOWN, - /* 2 */ N_UNKNOWN, - /* 3 */ N_UNKNOWN, - /* 4 */ N_UNKNOWN, - /* 5 */ "Cyrix III Joshua (M2 core)", - /* 6 */ N_UNKNOWN, - /* 7 */ N_UNKNOWN, - /* 8 */ N_UNKNOWN, - /* 9 */ N_UNKNOWN, - /* A */ N_UNKNOWN, - /* B */ N_UNKNOWN, - /* E */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* F */ N_UNKNOWN - }, - /* 7 */ F_UNKNOWN, - /* 8 */ F_UNKNOWN, - /* 9 */ F_UNKNOWN, - /* A */ F_UNKNOWN, - /* B */ F_UNKNOWN, - /* C */ F_UNKNOWN, - /* D */ F_UNKNOWN, - /* E */ F_UNKNOWN, - /* F */ F_UNKNOWN - }, - /* NexGen Inc., "NexGenDriven" */ { - /* 0 */ F_UNKNOWN, - /* 1 */ F_UNKNOWN, - /* 2 */ F_UNKNOWN, - /* 3 */ F_UNKNOWN, - /* 4 */ F_UNKNOWN, - /* 5 Nx586 */ { - /* 0 */ "Nx586/Nx586FPU", /* only newer ones support CPUID! */ - /* 1 */ N_UNKNOWN, - /* 2 */ N_UNKNOWN, - /* 3 */ N_UNKNOWN, - /* 4 */ N_UNKNOWN, - /* 5 */ N_UNKNOWN, - /* 6 */ N_UNKNOWN, - /* 7 */ N_UNKNOWN, - /* 8 */ N_UNKNOWN, - /* 9 */ N_UNKNOWN, - /* A */ N_UNKNOWN, - /* B */ N_UNKNOWN, - /* E */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* F */ N_UNKNOWN - }, - /* 6 */ F_UNKNOWN, - /* 7 */ F_UNKNOWN, - /* 8 */ F_UNKNOWN, - /* 9 */ F_UNKNOWN, - /* A */ F_UNKNOWN, - /* B */ F_UNKNOWN, - /* C */ F_UNKNOWN, - /* D */ F_UNKNOWN, - /* E */ F_UNKNOWN, - /* F */ F_UNKNOWN - }, - /* IDT/Centaur/VIA, "CentaurHauls" */ { - /* 0 */ F_UNKNOWN, - /* 1 */ F_UNKNOWN, - /* 2 */ F_UNKNOWN, - /* 3 */ F_UNKNOWN, - /* 4 */ F_UNKNOWN, - /* 5 IDT C6 WinChip */ { - /* 0 */ N_UNKNOWN, - /* 1 */ N_UNKNOWN, - /* 2 */ N_UNKNOWN, - /* 3 */ N_UNKNOWN, - /* 4 */ "WinChip C6", - /* 5 */ N_UNKNOWN, - /* 6 */ "Samuel", - /* 7 */ N_UNKNOWN, - /* 8 */ "WinChip 2 C6+,W2,W2A,W2B", - /* 9 */ "WinChip 3 W3", - /* A */ "WinChip 4 W4A", /* XXX check */ - /* B */ N_UNKNOWN, - /* E */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* F */ N_UNKNOWN - }, - /* 6 VIA C3 */ { - /* 0 */ N_UNKNOWN, - /* 1 */ N_UNKNOWN, - /* 2 */ N_UNKNOWN, - /* 3 */ N_UNKNOWN, - /* 4 */ N_UNKNOWN, - /* 5 */ N_UNKNOWN, - /* 6 */ "Cyrix III Samuel (WinChip C5A core)", - /* 7 */ "C3 Samuel 2 (WinChip C5B core)/C3 Ezra", - /* 8 */ "C3 Ezra-T", - /* 9 */ "C3 Nehemiah", - /* A */ N_UNKNOWN, - /* B */ N_UNKNOWN, - /* E */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* F */ N_UNKNOWN - }, - /* 7 */ F_UNKNOWN, - /* 8 */ F_UNKNOWN, - /* 9 */ F_UNKNOWN, - /* A */ F_UNKNOWN, - /* B */ F_UNKNOWN, - /* C */ F_UNKNOWN, - /* D */ F_UNKNOWN, - /* E */ F_UNKNOWN, - /* F */ F_UNKNOWN - }, - /* Rise, "RiseRiseRise" */ { - /* 0 */ F_UNKNOWN, - /* 1 */ F_UNKNOWN, - /* 2 */ F_UNKNOWN, - /* 3 */ F_UNKNOWN, - /* 4 */ F_UNKNOWN, - /* 5 mP6 */ { - /* 0 */ "mP6 iDragon 6401,6441 Kirin", - /* 1 */ "mP6 iDragon 6510 Lynx", - /* 2 */ N_UNKNOWN, - /* 3 */ N_UNKNOWN, - /* 4 */ N_UNKNOWN, - /* 5 */ N_UNKNOWN, - /* 6 */ N_UNKNOWN, - /* 7 */ N_UNKNOWN, - /* 8 */ "mP6 iDragon II", - /* 9 */ "mP6 iDragon II (new)", - /* A */ N_UNKNOWN, - /* B */ N_UNKNOWN, - /* E */ N_UNKNOWN, - /* C */ N_UNKNOWN, - /* D */ N_UNKNOWN, - /* F */ N_UNKN |