- SysInfo [ 更新履歴 / 開発日記 ] --------------------------------------- ・AMD Phenom/Phenom II への暫定対応 → 正確なクロックが表示できず常に 200MHz * 倍率になります。 ・データベース更新 ・Intel Mobile Core 2 (Penryn) の暫定対応 ・Intel Core i7 の暫定対応 ・データベース更新 ・一部の環境で PCI デバイススキャン中に無限ループに陥る不具合を修正 ・サブベンダー ID が正しく表示されないことがある不具合を修正 ・Hyper Transport (1200MHz-2600MHz) の検出に対応 ・データベース更新 ・AVX や SSE5 など新しい Feature Flags に対応 ・CoreSolo/CoreDuo以降の場合、VIDを0.0825+0.0125*nで表示 (ねじまき氏) ・Core2Duo以降の場合、MSR 0x000000CEを取得してmin VIDを取得・表示 (ねじまき氏) ・Penryn Family の Multiplier Management に対応 (パッチ作成:ねじまき氏) ・Penryn Family の電圧表示を修正 ・AMD Athlon X2 への暫定対応 ・AMD Phenom X3/X4 への暫定対応 ・データベース更新 ・Penryn Family の倍率変更に対応 ・データベース更新 ・Penryn Family の倍率取得に対応 ・データベース更新 ・データベース更新 ・AMD Phenom Family への暫定対応 ・Intel Core 2 (Penryn Family) への暫定対応 ・デバイスドライバにデジタル署名を付与 ・AMD Phenom Family への暫定対応 ・Intel Core 2 Duo (Merom) を誤判定する不具合を修正 ・VIA C7 (Esther/Model=0xD) に対応 ・データベース更新 ・Intel Core 2 Quad Q6700 に対応 ・データベース更新 ・Hyper Transport 速度の識別に対応 ・拡張フラグ情報を更新 ・データベース更新 ・AMD の L3 Cache サポート ・データベース更新 ・Celeron (Conroe-L) をサポート ・PCI-PCI device の SubSystem Vendor/Device ID を誤判定する不具合を修正 ・PCI Device Class に Serial ATA Controller を追加 ・AMD Athlon X2 を暫定サポート ・データベース更新 ・データベース更新 ・Mobile Sempron (Keene) をサポート ・Mobile Athlon 64 (Odessa) をサポート ・K10 ファミリを超暫定サポート ・データベース更新 ・SSE4A を SSE4 と判定しないよう修正 ・データベース更新 ・Intel Xeon (Penryn) 暫定対応 ・Intel Core 2 Extreme (Yorkfield) 暫定対応 ・Intel Core 2 Quad (Yorkfield) 暫定対応 ・Intel Core 2 Duo (Wolfdale) 暫定対応 ・Intel Xeon (Conroe) 対応 ・SSE4 暫定対応 ・キャッシュ情報更新 ・データベース更新 ・Geode LX の倍率取得/変更機能の不具合を修正 ・Geode LX の倍率取得/変更機能 ・データベース更新 ・Intel Core 2 Extreme QX6800 暫定サポート ・データベース更新 ・データベース更新 ・Pentium DC (Conroe-1M) をサポート ・Celeron (Conroe-L/Merom-L) をサポート ・SSE4A をサポート ・K8 で 1.1V 以下の電圧を設定できるかどうかの識別に対応 ・K8 で 100MHz(0.5倍) 単位の倍率変更が可能かどうかの識別に対応 ・データベース更新 ・バグフィックス ・物理コア数が正常に判定できない場合がある不具合を修正 ・NVIDIA チップセットの識別方法を修正 ・データベース更新 ・Socket S1g1 -> Socket S1 ・データベース更新 ・バグフィックス(AMD K8 Rev.F/G で誤判定する不具合を修正) ・AMD K8 用 MicrocodeID に対応 ・Athlon 64 (Lima) に対応 ・Intel Core 2 Extreme (Duo/Quad) において最大倍率を正常に取得できないことが  ある不具合を修正 ・Turion 64 (Richmond) に対応 ・Turion 64 X2 (Trinidad) に対応 ・Turion 64 X2 (Tyler) に対応 ・データベース更新 ・Socket F に対応 ・データベース更新 ・Core 2 Duo のキャッシュ情報を修正 ・データベース更新 ・Xeon (Clovertown) をサポート ・データベース更新 ・Intel Core 2 Extreme X6800/QX6700 の識別に関する不具合を修正 ・Geode LX をサポート ・データベース更新 ・Core 2 Duo (Allendale) をサポート ・データベース更新 ・SSE4 -> SSSE3 (Supplemental SSE3) ・インテルのキャッシュ情報を更新 ・データベース更新 ・Intel Core 2 で正常にクロック周波数等が測定できないことがある不具合を修正 ・Intel Core 2 Quadro をサポート ・データベース更新 ・Intel Core 2 Extreme を Extream としていた誤字を修正 (thanks HDM氏) ・データベース更新 ・Pentium XE (Presler) の判定に関する不具合を修正 ・データベース更新 ・Celeron D (Cedar Mill-V) をサポート ・Socket AM2 の CPU を Socket A と誤判定してしまうことがある不具合を修正 ・AMD-V をサポート ・データベース更新 ・Intel Core 2 Extrem/Duo (Conroe/Merom) の判定に関する不具合を修正 ・Athlon 64 FX (Windsor) をサポート ・Athlon 64 (Orleans) をサポート ・Sempron (Manila) をサポート ・Athlon 64 X2 (Windsor) をサポート ・Xeon (Woodcrest) の判定に関する不具合を修正 ・Xeon (Dempsey) の判定に関する不具合を修正 ・Intel Core 2 Duo のキャッシュサイズを誤判定する不具合を修正 ・Athlon 64 X2 (Windsor) を誤判定する不具合を修正 ・C7 の L2 キャッシュサイズを 64KB とする不具合を修正 ・C7/C7-M の倍率関連情報を表示できるようにした。(暫定対応) ・Intel Core 2 Exream (Conroe) をサポート ・Intel Core 2 Duo (Conroe) において OriginalClock や OriginalSystemBus に  関する情報を正確に取得できない不具合を修正 ・SSE4 をサポート ・Turion 64 X2 (Taylor) をサポート ・Intel Core2 Duo (Conroe/Merom) をサポート ・Celeron D (Prescott-128K) をサポート ・データベース更新 ・K8 Low Voltage Table をサポート (詳細 ReadMeCpuidJ.txt) ・データベース更新 ・Mobile Sempron LV (Roma) をサポート ・Mobile Athlon XP-M (Dublin) の判定基準のバグを修正 (thanks Devid) ・Xeon (Sossaman) を誤判定する不具合を修正 ・VIA C7 (Esther) をサポート ・Celeron M (Yonah) をサポート ・Intel Core (Conroe/Merom) をサポート ・Xeon (Woodcrest) をサポート ・データベース更新 ・Intel Core のオリジナルクロック関連情報を正常に取得できない不具合を修正 ・データベース更新 ・CPUID に関する関数を修正 (ECX=0) ・Xeon (Sossaman) をサポート ・データベース更新 → Intel の最新チップセットや ATI/NVIDIA の最新ビデオチップ等 ・一部の環境で正常に動作しないとの報告があったためコンパイルオプションを変更  /O1 -> /Od (x86版のみ) (thanks DULL 氏) ・EIST 環境でクロック周波数が正確に取得できない不具合を修正 ・Coppermine で Socket 370 と Slot 1 を正常に判定できない不具合を修正 ・Intel Core の動作モードを SDR としていた不具合を修正 ・EIST 環境でクロック周波数が正確に取得できない不具合を修正 ・データベース更新 ・一部の環境(エミュレータ等)で OS タイプを x64 と誤判定する不具合を修正 ・データベース更新 ・データベース更新 ・データベース更新 ・データベース更新 ・NVIDIA チップセットの判定部分を改良 ・データベース更新 ・Model 3Fh な Athlon 64 を NewCastle とする不具合を修正 ⇒でも、コア名が不明なため空白表示 ・R283 で発生した K8 の倍率変更時に高負荷状態に陥る不具合を修正 ・初期の Opteron を誤判定する不具合を修正 (Brand ID周り) ・Athlon 64 FX-60 に対応 ・Intel Core Solo/Duo (Yonah SC/DC) に対応 ・データベース更新 ・VT に対応 ・Opteron (Venus/Troy/Athens) に対応 ・Crystal'n'Quiet 使用時に負荷が100%になることがある不具合を修正 ・データベース更新 ・Athlon 64 X2 (Manchester) を誤判定する不具合を修正 ・データベース更新 ・Xeon (Paxville/Paxville DP) に対応 ・Pentium D/XE の物理コア数取得に対応 ・データベース更新 ・Pentium、Pentium PRO など古い CPU のプロセスルール情報を修正 ・ダイサイズとトランジスタ数に対応 K6/K7/P5/P6/P4/PM/VIA (Beta) ・データベース更新 ・ダイサイズとトランジスタ数に対応 K8 のみ (Beta) ・K8 Model Number をサポート ・Athlon 64 X2 で Toledo/Manchester を誤判定する不具合を修正 ・一部の CPU においてオリジナルクロックを誤認識する不具合を修正 ・デバイスドライバを修正(IOアクセス周り) ・Dual C3 環境の倍率変更に対応 (動くかどうかわかんないけど) ・スレッド制御部分の不具合を修正(SetThreadAffinityMask) ・データベース更新 ・NT4でドライバがロードできなくなっていたので、NT4専用ドライバを添付 →以前(R230)例外処理を追加したときから・・・ (thanks GabGab 氏) ・Transmeta の Feature Flag が正常に表示されない不具合を修正 ・データベース更新 ・Athlon 64 X2 で倍率/電圧変更命令を一度だけ行うように変更。 ・Turion 64 (Lancaster) のサポート強化 ・Sempron E6 Core をサポート ・Xeon を誤判定してしまう不具合を修正 ・データベース更新 ・Pentium XE/D (Smithfield) を誤認識する不具合を修正 ・データベース更新 ・Pentium XE/D (Smithfield) を誤認識する不具合を修正 ・Pentium XE/D (Smithfield) で HTT の表示がおかしい不具合を修正 ・データベース更新 ・Dual Core への対応を強化 ・Pentium XE (Dual Core + HTT) への対応改善 ・Athlon 64 X2 (Manchester) のサポート ・PCI Device 探索機能の強化 (Bus 0-7 -> 0-255) ・Sempron (Victoria) サポート ・データベース更新 ・Intel CPU のサポートを強化 ・Dual Xeon (HT付) 環境を Pentium XE (Smithfield) と誤判定する不具合を修正 ・Pentium XE/D (Smithfield) の情報が正常に表示されない不具合を修正 ・データベース更新 ・C7 (Esther) をサポート ・Turion 64 (Lancaster) をサポート ・データベース更新 ・物理コア数に対応 ・データベース更新 ・Pentium XE をサポート ・Pentium 4 6xx 用 SpeedStep Control の電圧表示を修正 ・Opteron Dual-Core/Athlon 64 X2 を暫定サポート ・K6/K7/K8 Multiplier の互換性強化 ・データベース更新 ・ドライバのロードに失敗した際のエラーメッセージを復活 ・Celeron D を Xeon と誤判定することがある不具合を修正 ・Pentium M (Yonah) を暫定サポート ・データベース更新 ・nForce4 を識別できない不具合を修正 ・Pentium 4 6xx を Pentium 4 XE と誤認識する不具合を修正 ・AMD Athlon 64 (Venice) サポート ・Pentium M(FSB533MHz) で FSB が正常に取得できない不具合を修正 ・データベース更新 ・Athlon 64 FX (San Diego) サポート ・Athlon 64 (San Diego) サポート ・Athlon 64 (SledgeHammer) for Socket 939 サポート ・Pentium II OverDrive for Socket 8 に対応 (thanks 高山氏) ・Pentium 4 XE (Prescott-2M) サポート ・Mobile Turion 64 (Lancaster) サポート ・AMD 用拡張 Model 情報の表示条件を変更 ・Pentium M (Banias/Dothan) 用の倍率&電圧変更機能の修正 ・Pentium M (Banias/Dothan) 用の倍率&電圧変更機能の修正 ・Pentium M (Dothan) 用の倍率&電圧変更機能の修正 ・Pentium M (Dothan) 用の倍率&電圧変更機能のテスト開始 ※一応 Banias でも実行できるようにしておきましたが、ちゃんと動くのは Dothan のみ かと思われます。って Dothan もちゃんと動いてくれるかわかりませんが。 ・Pentium M (FSB 533MHz) の暫定サポートを強化 → 2.0, 2.4, 2.8GHz に関しては FSB を変更すると誤認識することがあります。 ・Pentium M (FSB 533MHz) の暫定サポート一部オリジナル倍率が正常に表示できない  可能性あります。 ・C3/Cyrix III で倍率変更ができなくなっていた不具合を修正 → SysInfo.sys 内部の HALT 命令がコメントアウトされていたため。 ・FamilyEx と ModelEx が正常に表示されないことがある不具合を再度修正 ・AMD Turion 64 を暫定サポート ・デバイスドライバの読み込み時にリトライ方法を変更 →これでちゃんと読み込めるはず ・デバイスドライバの読み込み時にリトライ機能を追加(8回まで) ・Host Bridge 判定方法を変更 (nForce4 対策) Bus:0, Dev:0, Func:0 を調査 ・MSR アクセス時にブルースクリーンしないよう例外処理を追加 (thanks 毛流麦花 氏) → NT のみ... 9x では青画面になります(復帰できますが...) ・FamilyEx と ModelEx が正常に表示されないことがある不具合を修正 ・K6-2+/III+ 用の倍率変更機能の不具合を修正 ・K6-2+/III+ 用の倍率変更機能に正式対応 ・データベース更新 ・K6-2+/III+ 用の倍率変更に対応したつもり →でも多分動かないと思います・・・。 ・Multiplier Management & K7/K8 Multiplier を Dual Opteron に対応させたつもり → Opteron で倍率&電圧を変更するためには BIOS のサポートが必要です ★Cappuccino 氏による非公式パッチをマージ ・Xeon (Irwindale) に対応 ・Xeon MP (Cranford) に対応 ・IntelCPUのオリジナルFSB=1066MHzの判定基準を変更 ・オリジナルFSB=667MHzのXeonに対応 ・Intel Family==0xF && Model==5 をPentium 5 ??? として判定するように変更 ・アーキテクチャの識別機能を調整 (x64 か x86) ・32bit DLL から 64bit ドライバを呼び出せるようにし、SysInfoX64.dll を廃止 ・Dual 環境における Multiplier Management の互換性強化 ・TM8300 を誤判定する不具合を修正 ・データベース更新 ・ReadMSR, WriteMSR 関数をエクスポート → CrystalCPUID 4.0.2 で搭載した MSR Editor 用 ・FSB 1066MHz (Pentium 4 XE) でオリジナルクロックが正常に表示されない問題を修正 → 暫定対応… Intel のドキュメントが更新されないと完全対応は難しいかも。 ・FSB 1066MHz (Pentium 4 XE) のサポート ・SpeedStep 判別機能を修正 (thanks Cappuccino 氏) ・データベース更新 ・OEM 専用の Pentium III (Tualatin) BrandID 3 に対応 ・Pentium 4 Prescott E0 Stepping をサポート (Model 5) ・Athlon 64 (Winchester) のプロセスルールを 0.13μmと表示する不具合を修正 ・Celeron D (Prescott-256K) を Pentium 4 (Prescott) と誤認識する不具合を修正 ・一部の Athlon 64 において Athlon64Athlon64 と名前が表示される不具合を修正 → 恥ずかしい(>_<) 特に・・・ http://pc.watch.impress.co.jp/docs/2004/1019/tawada32.htm ・nForce2 で倍率変更機能が一部のマザーで使えるようになったかも知れない。 → http://www20.tomshardware.com/cpu/20041001/athlon-underclocking-08.html ・Celron D with NX に対応 (thaks 大箸氏) ・データベース更新 ・Intel、AMD ともに ModelEx に拡張 Model 情報を表示するように変更した。 ・Pentium 4 HT (Prescott) を Xeon (Nocona) と誤判定することがある不具合を修正 ・Sempron の判別機能を調整 ・R206 に Hammer 系の名前設定部分に問題があったので修正 (Thanks FoxFire 氏) ・データベース更新 ・AMD の 90nm プロセッサに多分対応 ・AMD の Extended Family/Model に関する対応強化 ・AMD の BrandID に関する対応強化 ・Model が C と E の Athlon 64 を Socket 939 と誤判定してしまうようになって いたのを修正 ・低電圧版 Xeon (Nocona) をサポート (thanks Raynyan 氏) ・Sempron の判定方法を修正 ・TM8800 のプロセスルール情報が間違っていたので修正 ・C7 (Esther) に暫定対応 ・Mobile Athlon XP-M Family 15 (NewCastle) に対応 ・Sempron 3000+ (Barton) に対応 ・TM8800 の識別に対応 ・64bit 環境でPCIデバイスやDMI情報を取得できるようにしました。 ・x86-64 から x64 に表記を変更 ・To 氏のおかげで複数プロセスからドライバを制限なく使えるようになりました。 → ほんと長いこと悩んでいた問題がついに解消!! ・長年の悩みが解消されたたためジャンプアップ ・データベース更新 ・C3 の一部で L2Cache が表示されない不具合を修正 ・K7 版 Sempron のオリジナルクロックが 133MHz となる不具合を修正 ・データベース更新 ・Socket 478 を LGA775 と一部誤認識するようになっていた不具合を修正 ・データベース更新 ・データベース更新 ・E7210 と 875P の識別に対応 ・改造によって生み出される? Mobile Athlon XP-M (Thorton) に対応 ・Socket 754/A 版の Sempron に多分対応 ・LGA775 (Socket T) -> LGA755 に表記変更 ・データベース更新 → XGI Vorari をはじめ多数のデバイスに対応(久しぶり...) ・NX 対応強化 ・Socket T (LGA775) → LGA775 (Socket T) に表記変更 ・データベース更新 ・Socket 775 → Socket T (LGA775) に表記変更 ・データベース更新 ・Xeon (Nocona) への対応強化 → まさか SpeedStep が有効になるとは・・・。 ・データベース更新 ・Socket 775 を識別できない不具合を修正 ・データベース更新 ・最新デバイスに多数対応 ・x64 対応 ・データベース更新 ・Sempron (Paris) に対応 ・EM64T の検出に対応 (thanks Cappuccino 氏) ・AMD64 関連の対応強化 (thanks Cappuccino 氏) ・Pentium M (Dothan) の識別にまだ問題があったため修正 (thanks 大箸氏) ・Pentium M (Dothan) の Model は 0xC ではなく 0xD であるとのこと。急遽修正  (thanks 大箸氏) ・新コア Prescott に一部対応 → EM64T の検出は未対応(フラグの位置がまだわかりません) ・Socket 939 用の Athlon 64 FX のコードネームを誤判定する不具合を修正 ・データベース更新 ・Pentium M/Celeron M の対応ソケットを Socket 478 から Socket 479 に修正 ・Celeron M (Dothan-1024K) に対応 ・データベースを更新 ・171 リリース時に誤って 172 としていたので「欠番」となりました。 ・Pentium M 755 のオリジナルクロックが正しく取得できない不具合を修正 ・Dual K7 環境で二つ目のプロセッサの倍率を変更する前に 3000ms のウェイトを用意 → Multiplier Management は使えません!! これから調整予定 ・データベース更新 ・Pentium M (Dothan) のオリジナル倍率取得に多分対応 ・C3 の倍率変更部分を修正 ・C3 の倍率変更部分を修正 → 安定度が上がると良いのですが... ・データベース更新 ・ソースコード内コメントの微調整(著作権表記等) ・データベース更新 ・PCR がセットされていないときのみセットするように変更 ・PCI Configuration Register を変更するタイミングを倍率変更の直前に変更 ・倍率変更のたびにレジスタを設定するようにしました ・AMD 760 系で変更すべきレジスタがずれていた不具合を修正 ・KT133 系で変更すべきレジスタがずれていた不具合を修正 ・AMD-761 の Device ID を追加 ・KT133 系の倍率変更に対応 ・AMD 760 系の倍率変更に対応 ・K7 デュアル環境では両方同時に倍率変更命令を送るように変更 ・Tualatin の倍率テーブルを修正 (thanks ぶっちー 氏) ・CpuInfoX86-64.exe の高速化 ・データベース更新 ・Desktop 用電圧設定にした際、リフレッシュ後 Mobile 用電圧表示に戻る不具合を修正 ・SpeedStep への対応強化(Tualatin のみ) ・Coppermine Slot 1 を識別できない不具合を修正 ・AMD64/IA-32e 用のドライバの名前を間違っているという致命的な不具合を修正 ・K7 デスクトップ版の電圧表示のサポート ・CG リビジョンと Newcastle(??) のドキュメントが出ていたので対応。 にしても CPUID FF0h とは思い切ったことをしてくれるのぉ〜 > Newcastle いよいよ Extended Family の出番か!? ・DTR Athlon 64 でオリジナルクロックが 4 倍となる問題を修正 (thanks 大箸 氏) ・Mobile 化改造を行った Athlon XP のオリジナルシステムクロックを誤判定する問題  を一部解消(thanks ita 氏) ・Rise 系 CPU を誤判定してしまう不具合を修正 (thanks くにしこ 氏) ・データベース更新 ・IA-32e に対応 ・AMD64, IA-32e の総称として x86-64 を使用 ・CpuInfoAMD64.exe/sys を CpuInfoX86-64.exe/sys に変更 ・動作倍率の情報を更新できないことがある不具合を修正 ・K7/K8 Multiplier における電圧変更時の不具合を修正 (thanks tsukasam 氏) ・K7/K8 Multiplier において電圧を変更する際一段階ずつ変化させるようにした。 ・ProcessorSerial 関連の不具合を修正 ・Socket 情報の整理 ・データベース更新 ・新チップセット&ビデオチップセットに多数対応(たまには対応作業しないと...) ・Pentium 4 (Prescott) を Pentium 4 HT (Prescott) と誤認識する不具合を修正 ・Mobile Celeron (Northwood-256K) を誤判定する不具合を修正 ・改造 Pentium 4 に対応 ・データベース更新 ・Athlon MP の識別力を強化 ・Athlon MP (Barton) の Original System Clock を 133MHz に修正 ・Socket / Slot 識別関連の不具合を修正 ・次世代 Pentium / Xeon コードネームに対応 ( Nocona, Tejas ... ) ・次世代 K8 コードネームに対応 ( San Diego, Athens, Troy, Venus ... ) ・Prescott のキャッシュ情報に対応 ・Socket / Slot 識別関連の不具合を修正 ・Prescott の L1Data Cache サイズが表示されない問題を修正 ・Socket A / Slot A の識別機能を強化 (今更ですが...) ・AMD64 環境におけるデフォルトクロック測定法を MMT に固定(今後変更可能性アリ) ・CpuidAMD64.exe -> CpuInfoAMD64.exe にファイル名を変更 ・データベース更新 ・AMD64 環境での動作を認識できるようにした。 ・AMD64 への対応作業 ・AMD64 対応のための改良 → OS が x86 版か AMD64 版かを識別できないので、ドライバがロードできない場合は AMD64 版かもしれないということでとりあえず AMD64 バイナリを実行し、倍率等の 情報を取得する ・デバイスドライバのロードに失敗した場合に表示していたエラーメッセージを廃止。 → AMD64 版の識別に対応でき次第復活予定... なくても良いかも。 ・AMD64 非対応安定板 ・Prescott 対応最終準備 ・データベース更新 ・AMD64 への対応強化 ・cpuidamd64.exe を呼び出し、倍率&電圧の表示&変更に(多分)対応 ・(CPU/対応OS)アーキテクチャ情報の取得に対応 ・CrystalCPUID 3.0.0 への対応 ・AMD64 への対応準備 ・ドライバ読み込みに失敗した際のエラーダイアログを廃止 → 呼び出し元のアプリケーションが表示する ・データベースの更新 ・Pentium III Xeon (Tanner) を Pentium III (Katmai) と誤認識する不具合を 修正 (thanks Hon 氏) ・DMI 関連情報の取得をサポート ・データベース更新 ・Microcode ID と Platform ID に対応していない Pentium PRO/Pentium II 環境で エラーとなる不具合を修正 ・Transmeta Crusoe 5700/5900 に対応 ・AMD Athlon 64 L2=512KB 版を全て Newcastle として識別していた問題を修正 ・CpuInfo.dll と統合 NT 用のデバイスドライバに CpuInfo.sys を追加(CrystalCPUID 専用) ・Microcode Revision の取得に対応 ・Platform ID の取得に対応 ・データベース更新 ・マルチメディアタイマーの精度変更タイミングを修正 ・データベース更新 ・クロック周波数の測定機能を若干変更しました。 ・Athlon 64 (Newcastle) に対応 ・Pentium 4 SSE3 (Prescott) に暫定対応 ・Celeron M (Banias-512K) に対応 ・Mobile Athlon XP-M のオリジナル倍率の取得方法を修正 (thanks ita 氏) ・C3 関連の倍率テーブルを更新 ・データベース更新 ・Mobile Pentium 4 を Mobile Pentium 4 HT と誤判定することがある問題を修正 (thanks 氏 AGU 氏) ・データベース更新 ・Pentium 4 HT Extreme Edition (Gallatin) の HT を削除 -> さすがに冗長かなと... ・データベース更新 ・Transmeta の新 CPU Efficeon のサポートを強化 ・Mobile K7 の倍率テーブルを最新の情報に更新 ・Nehemiah の倍率テーブルを最新版に更新 ・データベース更新 ・データベースのファイル形式変更(ファイルサイズ縮小のため) ・多くの最新デバイスに対応 ・Pentium M で動作倍率が正しく取得できない問題を修正!! (thanks はせりん 氏) -> ずいぶんと長いことこの問題に苦しめられましたが、今度こそ大丈夫かと... ・K7/K8 Multiplier を実装しました。(プロジェクト LoveHammer) -> CPUID 0x80000007 に対して EDX が 0x00000007 以上の値を返す場合のみ利用可能 とはいえ、現在この機能を利用できるのは CrystalCPUID だけなんですけどね... ・Athlon 64 FX を Athlon FX としていた不具合を修正 (thanks Cappuccino 氏) ・Banias の動作倍率が正常に取得できない問題を修正 ・Banias のコードネームがいつの間にか変になっていたのを修正  (thanks はせりん 氏) ・大丈夫だと思っていた Opteron / Athlon 64 判定部分に問題があったので修正 -> 今度の今度こそ大丈夫だと思います。ご迷惑おかけして申し訳ございません。 ・Opteron / Athlon 64 において誤判定する問題を修正 -> 今度こそ大丈夫だと思う ・Optern / Athlon 64 の BrandID に対応 -> 8bit 版における上位 3 bit / 12 bit 版における上位 4 bit を表示します。 ∴他のアプリと異なる結果となる場合があるかと思います。 ・データベース更新 ・Opteron / Athlon 64 において倍率を変更した場合に Mobile Athlon 64 と  誤認識する問題を修正 ・"-M" に対応 -> Mobile Pentium III-M / Mobile Pentium 4-M / Mobile Athlon XP-M -> Mobile Pentium 4 と Mobile Pentium 4-M の識別が可能に!! ・Mobile Pentium 4 HT に対応 ・Pentium 4 HT Extreme Edtion に対応 -> HT は必要ない気もするんですが... ・Pentium M (Banias) の動作倍率取得手法を改良 ・Mobile Athlon XP-M の対応強化 ・NSC Geode に対応 ・SiS のよくわからない CPU にそれとなく対応 ・UMC のよくわからない CPU にそれとなく対応 ・386/486 の識別力強化 ・データベース更新 ・よねさん 氏の協力のおかげで Opteron / Athlon 64 の Multiplier をサポート完了 ・Opteron / Athlon 64 の Original System Clock の不具合を修正 ・Opteron の BranID に対応 -> UP/DP/MP の判別に対応 ・Athlon 64 FX にもそれとなく対応 -> 多分大丈夫 ・データベース更新 ・Celeron (Northwood-128K) と Mobile Celeron (Northwood-256K) を  誤判定するようになっていた問題を修正 (thanks 中川 氏) ・Celeron (Northwood-128K) のキャッシュサイズを随分長いこと 256K と  していた不具合を修正(最悪です。ごめんなさい) ・データベース更新 ・Xeon と Xeon MP の判別に不具合があったので修正 (thanks 啓 氏) ・データベースの更新 ・Cappuccino 氏の cpuid.pas と教えてもらった情報を元に CPU サポートを強化 ・データベースの更新 ・CPUSupport.html の更新 ・ドライバのロードに失敗したとき、誤った動作倍率を取得する問題を修正 ・WRMSR 命令発行にそれとなく対応 ・ファイル構成の変更 -> CpuInfo.dll への対応準備 ・Duron (Applebred) に対応 ・プロセスルールの表示機能を追加 ・データベース更新 ・CrystalMark09 に対応(ということにしておく) -> 実際はなにも変わっていないのですが... ・データベース更新 記念すべき Release 100 だというのに特に新要素はなし(^^; ・SSE3 の検出に対応 ・VisualC++ 7.1 にコンパイラを変更 -> 9x で正常に動作しない問題を修正しました。 ・DirectX のバージョン情報取得方法の変更 -> 過去バージョンとの互換性が一部なくなりました。 ・不必要となった項目を削除 ・変数の初期化方法を変更 ・Opteron の Socket 情報が間違っていたので修正 (thanks 前原 氏) 記念すべき Release 100 に向けて不必要な部分を除去し、構造をすっきりさせました。 ・データベースの更新 ・コンパイラを VC7 から VC6 に変更 -> 互換性向上?本質的にはソースに問題があるわけでしょうけど... ・Win9x でアクセス違反が出て起動しなくなっていた問題を修正 ・ProSavage DDR 関連のデータベースを修正 ・データベース更新 ・Feature Flag (ECX) に対応 -> いつの間にか拡張されてました。 ・AMD のキャッシュ詳細情報の取得機能を追加 ・データベース更新 ・Pentium M の動作倍率周りを修正 ・データベース更新 ・865G のグラフィックスを 855G と誤記していたのを修正 - Test Release ・Pentium M の動作倍率を正規の方法で取得 -> 今までは NameString から取得しておりました(^^; ・Pentium M の最大動作倍率だけでなく現在の動作倍率が取得可能に(未保証) Pentium M は特に資料が少なく途方に暮れていたのですが、ようやくそれっぽい資料を 見つけたので早速実装してみました。 ・データベース更新 ・Pentium M の動作モードが SDR になっていたので QDR に変更... -> 随分前に変更したつもりだったのですが、修正ミスがあり機能していませんでした。 ・Willamette のスペルを Willamete としていた個所を修正 ・Intel 852GM/855GM が同じデバイスIDで区別できないので一緒にしときました。 -> リビジョンぐらいしっかりと変えてくれぇ〜 ・データベース更新 ・Thorton (Barton の L2 256KB 版) の正式名称が Athlon FX になるらしいので対応 ・Athlon 64 にそれとなく対応 ・データベース更新 ・AMD Thorton に恐らく対応 -> いまさら新モデル(!?) Athlon 64 をさっさと出してください〜〜。 ・Opteron で動作しない(再起動する)問題を修正 -> というか動作倍率の取得をあきらめた。 ・動作倍率が取得できない場合、表示がおかしくなることがあった問題を修正 -> VirtualPC 等エミュレータ上でしか起こらない問題ですがまぁ、一応。 ・データベース更新 -> 最新デバイスにかなり対応(GeForce FX 5900 他) ・データベース更新 ・クロック周波数可変プロセッサ対策 (thanks ぬじぬじ 氏) -> 負荷をかけてからクロック周波数を測定するように変更しましたが...動作未確認 ・865G/PE/P への対応完了 ・データベース更新 ・PCI BIOS によっては PCI Device 情報取得中にコケる問題を修正 ・865PE/G/P & ICH5/R と 852GM/855GM への対応強化 ・データベース更新 ・データベース更新 ・データベース更新 ・Pentium 4 FSB 800MHz 版に今更ながら対応 -> 対応していた気でいましたが、少しもコードを書いていなかった(^^; ・データベース更新 ・Transmeta Crusoe のクロックを double -> int に変更 ・C3 Nehemiah のキャッシュサイズの取得がうまくいっていない問題を修正 ・Opteron の System Bus & Data Rate を非表示に変更 ・データベース更新 ・Opteron の倍率取得に対応 ・今度こそ Pentium !!! -> Pentium III に変更 ・バグ修正 ・データベース更新 ・Transmeta Crusoe の取得情報を強化 ・Batron の FSB に関するバグを修正 ・データベース更新 ・Celeron (Banias) -> Mobile Celeron (Banias) ・GeForce FX 関連対応強化 ・Radeon -> RADEON (RADEON 関連も対応強化) ・データベース更新 ・Pentium !!! -> Pentium III に変更 (CrystalMark06 は除く) ・データベース更新 ・Banias 関連バグ修正 ・Banias 対応強化  -> Pentium M と Celeron の識別 および Cache 情報に対応  -> 動作倍率に関しては現在情報収集中...(一応対応していますが) ・NT 系の環境では CrystalMark / CrystalCPUID を複数同時起動  できなかった問題をようやく修正 ・Banias に暫定対応 (L1 および Multiplier はデータシートが公開され次第対応) ・データベース更新 ・データベース更新 ・VIA CPU の表示不具合を修正 ・データベース更新 ・バグ修正 ・Celeron (Willamette-128K/Northwood-128K) の 2nd Cache 情報を今更サポート -> 英語のデータシートはずいぶん前に更新されていたのに気がつきませんでした。 -> 日本語のデータシートをダウンロードするのはもうやめようと思います(^^; -> 更新遅すぎ(1年以上更新ないんですけど...) ・データベース更新 ・APIC / CPU Type / Socket 情報等を新規サポート ・データベース更新 ・SiS の最新チップセットに対応 SiS 655 他 ・データベース更新 ・Radeon 9100, nForce2 内蔵 VGA に対応 ・データベース更新 ・未知の PCI デバイス数をカウントする機能を強化 ・Intel 7500/7501 に対応 ・データベース更新 ・SysInfo.sys をカレントディレクトリ以外からロードできないように修正 ・SiS South Bridge 誤判定問題解消? -> Device ID の一覧を見て確信しました!!識別できないということを。 -> North & South の組み合わせデータベースを内蔵することで解決!? -> ただし、SiS 961/962/963 を直接識別できないため誤判定の可能性あり。 なぜちゃんと ID を割り当てないのだろうか... Intel/NVIDIA はかなりまともに ID を割り当てているのですがねぇ... ・未知の PCI デバイス数をカウントする機能実装 ・Intel 82801EB (ICH5) に対応 ・Intel 865G (Springdale-G) に対応 ・VIA C3 Nehemiah に暫定対応 -> 動作確認お願いいたします。(データシートがアップされ次第検証予定) ・データベース更新 ・微調整 ・データベース更新 ・サイト移転に伴う情報更新 ・デバイスドライバ内の関数に手を加えたため以前の SysInfo.sys と組み合わせて  利用することはできません...必ず上書きコピーしてください。 -> 全て更新している方にはなんの影響もありませんが(^^; ・Mobile Pentium III と Pentium III の区別を区別できるようにした。 ・データベース更新  Pentium !!! -> Pentium III に変更したいなぁ〜と思うが互換性問題 のため踏み切れず...CrystalMark08 の正式版までにはここを変えたいなと。 ・データベース検索部にバグ(!)があったのを修正 ・データベース更新 ・仮想 CPU 数が 1 つの場合は Hyper Threading 未対応ということにした ・データベース更新 ( VIA / SiS の最新チップセット 他 ) ・ほのかなバグを修正 ・DirectX のバージョンを判定する機能を強化 (DirectX9 以降に対応) ・Release57 でデータベースに欠陥があったためアクセス違反が出てしまった問題を修正 (タブ区切りのところを一箇所スペース区切り+Cirrus Logic 情報追加部分に不具合) ・データベースに欠陥がある場合でもアクセス違反が出ないようにエラー処理を追加 ・データベース更新 (最新デバイス多数,骨董デバイス少々,Kyro 1/2 の識別が可能に) ・誤判定していた CPU の判定条件を修正 ・Intel 以外でも BrandID を評価していた問題を修正 ・データベース更新 ・Pentium 4 HT を誤判定していたのを修正 ( 200x4 FSB の対応は来年の夏かな... )  Opteron/Athlon 64 の対応はリリース直前になって情報が出てからになりそうです。 ・データベース更新 ・AMD Athlon XP FSB 333MHz 版への対応強化 (未確認) ・データベース更新 ・Crusoe 関連の問題を修正 ・データベース更新 ・Crusoe でアクセス違反が出るという致命的な問題を修正... -> 研究室のマシンで何気なく実行したことで発覚。 ・thk 氏に VisualC++ から WMI へアクセスする方法を教えていただいたので WMI_CS/WMI_VB を廃止し、直接 WMI へアクセスする方法を採用 -> ファイルサイズの減少+エラー処理の強化等のメリット ・SysInfo.dll の初期化に失敗したとき2回エラーメッセージが出る問題を修正 ・微調整 ・データベース更新 ・プライベートリリース ・PCI デバイス情報取得機能を強化 データベースは Linux PCI ID's Project (http://pciids.sf.net/) を利用させて いただいております。(現在は CrystalMarkDX.lzh にのみ同梱) ・Release 45 から Pentium !!! を Mobile Pentium !!! と誤判定するようになって いたのを修正 ・データベース更新 ・FSB 166 版 AthlonXP に(多分)対応 ・PCI デバイス情報取得機能を強化 ・データベース更新 ・デュアルプロセッサ関連のバグを修正 ・必要な機能のみを初期できるように機能強化 ・データベース更新 ・Compaq/DEC Alpha 関連の修正 ・VirtualPC for Mac に少しだけ対応 ・WMI(Windows Management Instrumentation) への対応を強化(VB6 対応) ※要 VB6 ランタイム or .NET Framework + WMI (XP/2000/Me は標準搭載) ・マルチプロセッサ環境において独立して CPU 情報を取得できるように機能強化 ・クロック周波数測定関連の仕様を一部変更 ・WMI(Windows Management Instrumentation) を利用した機能を一通り実装 ※要 .NET Framework + WMI (XP/2000/Me は標準搭載) ・Alpha / PowerPC / MIPS 等を識別可能にした(未確認) ・メモリ関連の機能を実装 ・デバイスドライバの初期化関連の問題を一部修正 ・データベース読み込み時の不具合を修正 ・データベース更新 ・データベース更新 ・データベース更新 ・PCI Device の詳細情報を取得機能を搭載 ・データベース更新 ・South Bridge 判定コードを改良...!? ・Celeron (Northwood-128K) に関する修正 ・Athlon の FSB 166x2 への対応準備...(正式対応は製品が出回ってからを予定) ・データベース更新 ・キャッシュサイズに関するバグ修正 ・デバイス識別機能を強化 ・データベース更新 ・Pentium Pro & Pentium Pro 用 OverDrive は 60/66MHz の区別が出来ないので オリジナルクロック等の表示をしないことにした。 ・HyperThreading 関連機能の強化 ・データベース更新 ・バグ修正(Mobile Athlon XP/4 & Mobile Duron) ・データベース更新 ・未知のデバイスはベンダー名を表示 ・バグ修正(Coppermine/Tualatin コア) ・データベース更新 ・Mobile Celeron (Northwood-256K) に暫定対応 ・PowerNow! な CPU の問題を一部修正 ・データベース更新 ・Mobile Athlon 4/XP / Mobile Duron (Morgan) 対応関連の調整 ・SpeedStep & PowerNow! への暫定対応(動作報告求む) ・データベースの再構築&強化 ・Mobile Athlon 4/XP / Mobile Duron (Morgan) 対応関連の調整 ・Mobile Athlon 4/XP に正式対応(昨日の今日ですが...) →ただし、省エネモード?での動作は不明...次のバージョンで最終調整予定 ・Mobile Athlon 4/XP / Mobile Duron (Morgan) の識別力強化 ・エラーチェックが甘い箇所がありアクセス違反を起こすことがあったのを修正 ・Mobile Athlon 4/XP で FSB/Multiplier を表示するのを取りやめ... (全然合っていないので)...正確に取得する方法がわかり次第復活予定!! ・データベースの更新 ・データベースの更新 ・情報収集機能の修正 ・データベースの更新 ・情報収集機能の強化 ・データベースの更新 ・Hammer にほんのり対応... Family が 0xF になるようです (Pentium4 と同じ) ・正式版に向けた調整... ・(正式版に向けて)データ登録エンジンの更新 ・Thoroughbred コアの倍率を取得できないことを確認... ・K6-IIIの OriginalFSB の表示をしないようにしました(判定不能なため) ・Code/Data と分離していない L1 Cache に対応(懐かしのCPUも正確に判定!!) ・PCI 情報は取得できているのに CPU 情報が取得できない場合があったのを修正 -多数の報告がありながら原因の特定に時間がかかってしまいました。もし、これで 問題が改善されないようだと・・・ ・Pentium 等でも L1Cache の情報表示できるように機能強化 ・Northwood がおもいっきりバグっていたのを修正 ・IA-64 への対応を強化(未確認) ・CPU 対応表を製作 ・Cache Speed 関連のバグを修正 ・Mobile Athlon 4 関連の修正 FSB=100x2MHz ・登録を自前で行うように変更 ・IDT WinChip 2/3 の動作倍率取得サポート ・Crusoe をとりあえずサポート(倍率および FSB の取得はできません) ・Cache Speed の取得をサポート (Intel 系が少々適当かも・・・) ・正式版リリースへ向けて様々な点を整備 ・Ahtlon と Northwood の倍率取得関連がバグバグだったのを修正... ・PCI 系と RDMSR 系で二つあったデバイスドライバを一つに統合。トラブルが減るはず! ・かなりバグ修正 ・かなりデータベースの更新 ・Coppermine において ECX=2Ah REMSR bit 27 が有効か無効か試してみなければわから ないという悲しい現実に直面したため、実際に両方を試し適切な方を表示するようにした。 ・Pentium 等で的外れな表示を行っていたのを修正(Pentium では CPU の動作倍率や FSB を取得することはできません!!P6以降の機能なのです) ・データベースの更新 ・データベースの追加 ・不具合の修正 ・Celeron(Willamette) の L2 Cache が正しく取得できない問題に暫定対応 ・Tualatin の倍率テーブルを修正 ・K6-2/IIIの倍率関連の問題を修正 ・データベースを更新(Intel/ATI/Trident 等) 登録していただいたデータを元にデータベースを更新 少々バグフィックス Athlon (XP/MP含む) の倍率テーブルを一応実装 XP/MP 2100,2200 による動作確認求む!! Thunderbird は FSB 200/266 の区別が出来ず!! Duron は現状では完全動作(だと思う) Northwood に関しては FSB 533 が正しく認識できるか動作確認求む!! 倍率に関しては P6/Pentium4 共に完全動作(だと思う) Pentium4 関連の問題を修正しました。おそらくこれで Northwood の動作倍率も取得 出来るはずです。残るは Athlon/Duron 関係ですね♪ <0.0.5 2002/5/23> Athlon Duron に少しも対応していなかったのを修正(^^; SafeMode を廃止。ブルーバックしたらごめんなさい。 <0.0.4 2002/5/22> 勇者様〜 by ククリ ってわけでまたしても伝説の勇者様向けリリースです!! 前回は予告どおりすんごくバグバグでホントごめいわくおかけしました。 本気でブルーバックしてしまったそうですし(^^; ようやくデバイスドライバが バグってハニー だった理由がわかったものの Pentium !!! & Celeron (共に Coppermine)しかもっていないので Pentium4 (Willamette/Northwood) や Athlon / Duron などのテストを行えませんでした。そこで、人柱精神あふれる皆様に情報提供 していただこうというわけです!! で、色々シミュレートした感じでは Win9x 系で実行するのがお奨めです。ハイ。 というのも、WinNT 系ではもしデバイスドライバ内で保護エラーが出た場合一撃 でブルーバックしてしまうのですが、Win9x では一般保護例外が出るだけ(!?)で その後普通に Windows が使えるからです。まぁなんにせよ実行する前に全ての アプリを終了しておいてください。また、とんでもない目にあっても当方責任を とることはできませんのであしからず・・・。 できるだけ Win9x での実行よろしくお願いします。 できるだけデータ登録してくださいねぇ〜動作報告はメールでもいいです。 PCI 関連も非常に強化しました。こちらは特に問題は見当たっていないです。 多数のハードウェアデータベースのおかげでかなり実用的になってきましたが、 最新デバイスには対応してません。最新デバイスで登録の際はぜひ、本当の デバイス名を書き込んでから登録してください。 ■技術的なこと■ 動作倍率を取得するために RDMSR という特権命令を使って各 CPU の固有レジスタ を読み出すわけですが、実装されていない MSR (Model Specific Register) を 読み出そうとすると一般保護例外が発生します。NT のデバイスドライバ内で 一般保護例外が発生すると一撃でブルーバック。。。まぁ、調査してみると アクセスバイオレーションでもブルーバックすることがわかりました。 考えてみれば当然ですね。カーネルモードだし。 ユーザーモードだと __try{ _asm{ mov ecx,2Ah; rdmsr; mov ulEAX,eax; } } __except( EXCEPTION_EXECUTE_HANDLER ){ _asm{ mov ulEAX,0xFFFFFFFF; } } って感じのコードで例外が発生しても実行を続けることができるのですが、カーネル モードだとこの手法が使えないんですよねぇ〜困ったことに。しかも、RDMSR は カーネルモードでなければ使えないわけで・・・どうするよ〜〜 というわけで、カーネルモードで動作するデバイスドライバ内で例外をトラップ(?)する 方法を調査中です。これができないと本気でブルーバック連発ですよ。。。ちなみに、 今日は10回位青画面を拝みました。開発用と飛ばし用のマシンがあってよかったぁ〜 ■現在とりあえず実装した P6 (PentiumPro から Tualatin まで一応一通り) Pentium4 (Willamette) Athlon (どこらへんまで対応しているかは不明) Duron (どこらへんまで対応しているかは不明) <0.0.2 2002/5/15> 勇者様のみなさまこんにちは。 最低限情報収集が可能な程度のものをでっち上げたのでリリースします。 ※NT 系では 管理者権限 を持ったユーザーでないと実行できません。 表示されている情報に間違いがあればそれぞれの項目の隣にあるエディットボックスや コンボボックスに正しい情報を記入してから POST ボタンを押してください。 今回は ShellExecute でブラウザを起動しています。文字数の都合で NN を標準ブラウザ にしている人は正常に登録できません。URL をコピーして IE 等で登録してください。 また、あまり(というか全然)エラー処理をしていないので、情報を取得できなかった場合 は -1 が表示される場合がありますが、気にせずそのまま登録してください。 んで、今回の新機能は CPU の動作倍率取得機能ですが、 ・Northwood コアの Pentium4 では正常に取得できない(x16となる) 等既にわかっている問題があります。 この原因を深く調査すると Intel / AMD は動作倍率の取得方法を BIOS 開発者クラスの 技術者を対象にしてしか公開していないという現実に直面しました。で、BIOS 関連の情 報サクッと収集すればよいと思ったのですが、少なくとも AMD は有償でした。この点、 VIA(Cyrix/IDT) は BIOS 関連の資料も無償で好感が持てます。Intel の BIOS 関連資料 は現在調査中です。が、ディベロッパーマニュアルを見る限り 動作倍率の取得は非常に アンオフィシャルな機能であることがわかります。(本当は意味があるのに[予約済み]と 表記)また、Willamete では動作倍率を取得できたのですが Northwood から場所が変更に なったことから(現在調査中) 一般のプログラマに公開する姿勢はないようです。 ・BIOS 等を解析するもしくは解析した人から情報提供を受ける ・Linux 等のソースコードを参照する 等の解決方法がありそうです... WCPUID は既に対応している模様ですし、海外のいくつ かのCPUID 系ソフトも対応しているみたいなので対応方法はどこかにあるのでしょう。 ちなみに、裏技として NameString のクロック周波数表示から倍率を取得することが基本 的には可能ですが、2.4GHz の時に区別がつかないような気がするんですよねぇ〜ふぅ。 BIOS の解析か...。Linux のソースか...。CPU の動作倍率取得機能の実装がいかに難し いかを思い知らされた今日この頃。。。企業秘密と守秘義務の壁がぁ〜