2010/8/22:本掲示板は閲覧専用です。データが一部破損しておりますがご了承ください。
  新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃ホーム  
6 / 376 ツリー ←次へ | 前へ→

【995】CrystalCPUID 感想&要望&バグ報告 ひよひよ 04/5/31(月) 0:26

【1916】Windows98SE でK8 Multiplier DULL 06/3/9(木) 22:24
【1917】Re:Windows98SE でK8 Multiplier ひよひよ 06/3/9(木) 22:44 [添付]
【1921】Re:Windows98SE でK8 Multiplier DULL 06/3/10(金) 20:25
【1922】Re:Windows98SE でK8 Multiplier ひよひよ 06/3/10(金) 21:43 [添付]
【1926】あれれ? DULL 06/3/11(土) 12:57
【1927】Re:あれれ? ひよひよ 06/3/11(土) 16:47 [添付]
【1930】Re:あれれ? DULL 06/3/11(土) 22:45
【1935】Re:あれれ? ひよひよ 06/3/12(日) 20:54
【1937】EnableK8FVID が原因かも DULL 06/3/12(日) 21:56
【1938】Re:EnableK8FVID が原因かも ひよひよ 06/3/12(日) 23:19
【1940】pciFindPciDevice() が原因? DULL 06/3/13(月) 22:41
【1941】Re:pciFindPciDevice() が原因? ひよひよ 06/3/13(月) 23:44
【1942】原因つかめず… DULL 06/3/16(木) 20:11
【1943】Re:原因つかめず… ひよひよ 06/3/17(金) 0:26
【1947】Re:原因つかめず… DULL 06/3/19(日) 18:56
【1948】Re:原因つかめず… ひよひよ 06/3/19(日) 19:20

【1916】Windows98SE でK8 Multiplier
←back ↑menu ↑top forward→
 DULL WEB  - 06/3/9(木) 22:24 -

引用なし
パスワード
   初めまして。DULLといいます。

今回、Turion64を導入しWindows98SE+CrystalCPUIDで
周波数&電圧の管理を行おうと思ったのですが
正常に動作しませんでした。
AMD純正ドライバ&ソフトは入れていません。

AMD K6/K7/K8 Multiplier で周波数および電圧を変更すると
「ペ〜ジ違反」が発生し、以下のように表示されます。
(いつも同じアドレスです。)

モジュール:不明
アドレス:0000:006ced2f
cs:eip
00 7d c7 00 10 17 12 00 00 04 00 00 00 db 6b 41

Multiplier Management の場合は周波数or電圧が
変更されると思われるタイミングでペ〜ジ違反が
発生します。

ペ〜ジ違反で落ちた後にもう一度起動すると
最小化された状態でCrystalCPUIDが起動します。

ちなみにWindowsXPでも確認しましたが
こちらでは問題なく動きましたので
Windows9x系の問題なのかと思います。


さらにCPUプログラム関係の質問をしたいのですが
こちらのBBSで良いでしょうか?

【1917】Re:Windows98SE でK8 Multiplier
←back ↑menu ↑top forward→
 ひよひよ  - 06/3/9(木) 22:44 -

引用なし
パスワード

[添付]〜添付ファイル〜
・名前 : SysInfo(2).dll
・サイズ : 136.0KB
   ▼DULLさん:
>初めまして。DULLといいます。
はじめまして。

>今回、Turion64を導入しWindows98SE+CrystalCPUIDで
>周波数&電圧の管理を行おうと思ったのですが
>正常に動作しませんでした。
>AMD純正ドライバ&ソフトは入れていません。
>
>AMD K6/K7/K8 Multiplier で周波数および電圧を変更すると
>「ペ〜ジ違反」が発生し、以下のように表示されます。
>(いつも同じアドレスです。)
>
>モジュール:不明
>アドレス:0000:006ced2f
>cs:eip
>00 7d c7 00 10 17 12 00 00 04 00 00 00 db 6b 41
>
>Multiplier Management の場合は周波数or電圧が
>変更されると思われるタイミングでペ〜ジ違反が
>発生します。
>
>ペ〜ジ違反で落ちた後にもう一度起動すると
>最小化された状態でCrystalCPUIDが起動します。
>
>ちなみにWindowsXPでも確認しましたが
>こちらでは問題なく動きましたので
>Windows9x系の問題なのかと思います。
最近というか久しく Win9x でちゃんとした動作確認をしていないので・・・。
ただ、9x 固有の部分は最近全然変更していないのですぐには原因がわかりません。
Athlon 64 X2 のメインマシンが修理中なので、それが戻り次第検証してみたいと思います。(Win 9x のインストールできるか不安ですが。。。)

>さらにCPUプログラム関係の質問をしたいのですが
>こちらのBBSで良いでしょうか?
遠慮なくこちらでどーぞ。

もし、VisualC++ 6.0 をお持ちでしたらデバッグモードコンパイルで簡単解決なんですが・・・

とりあえず、倍率変更部分にデバッグ用メッセージボックス表示を加えた SysInfo.dll を添付させていただきますので、これに差し替えたときどのメッセージのあとページ違反が発生するか教えてください。お手数をおかけいたしますがよろしくお願いいたします。

        case 8:
            MessageBox(NULL, "EnableK8FVID", "Debug", MB_OK);
            EnableK8FVID();
            for( i = 1; i <= Number; i++ ){
                DWORD mask;
                if( IsNT() ){
                    mask = (DWORD)SetThreadAffinityMask(GetCurrentThread(), 1<<(i-1));
                    if( i >= 2 ){
                        Sleep(DualWaitTime);
                    }
                }
                MessageBox(NULL, "ReadMSR(0xC0010041,&EAX,&EDX);", "Debug", MB_OK);
                ReadMSR(0xC0010041,&EAX,&EDX);
                EDX = 0x7D0;        // Allow minimum 10 us setting time
                EAX &= 0xFFFFFFC0;
                EAX |= (1<<16);    // Set bit 16
                EAX |= data;
                MessageBox(NULL, "WriteMSR(0xC0010041,&EAX,&EDX);", "Debug", MB_OK);
                WriteMSR(0xC0010041,&EAX,&EDX);
                int loop = 0;
                do{
                    ReadMSR(0xC0010042,&EAX,&EDX);
                    loop++;
                }while( (EAX >> 31) & 0x1 && loop < LOOP_MAX );
                if( IsNT() ){SetThreadAffinityMask(GetCurrentThread(), mask);}
                // for Athlon 64 X2
                if(Number == 2 && PhysicalCoreNum == 2){break;}
            }
            break;

【1921】Re:Windows98SE でK8 Multiplier
←back ↑menu ↑top forward→
 DULL WEB  - 06/3/10(金) 20:25 -

引用なし
パスワード
   こんばんは。

早速試してみたところ
EnableK8FVID()
で落ちているようです。
RDMSRのメッセ〜ジまでは到達しませんでした。

Visual C++6.0 は使っていますが
DDKが無いのでSysinfoをビルドできないです(-_-;

Win9x系をサポ〜トするメリットはあまり無いので
時間に余裕がある時で構わないです。

プログラムの質問もOKとの事で嬉しいです。
後日、MSR関係の質問させて頂きますm(_ _)m

【1922】Re:Windows98SE でK8 Multiplier
←back ↑menu ↑top forward→
 ひよひよ  - 06/3/10(金) 21:43 -

引用なし
パスワード

[添付]〜添付ファイル〜
・名前 : SysInfo(3).dll
・サイズ : 136.0KB
   ▼DULLさん:
>こんばんは。
>
>早速試してみたところ
>EnableK8FVID()
>で落ちているようです。
>RDMSRのメッセ〜ジまでは到達しませんでした。
テストありがとうございます。
というわけで、EnableK8FVID にアレコレ埋め込んでみました。
例によって、どのメッセージの後にエラーが出るか教えてください。

    if( gK8FVID == TRUE ){
        return;
    }
    gK8FVID = TRUE;

    DWORD address;
    UCHAR c;
    MessageBox(NULL, "_pciFindPciDevice(0x1022, 0x1103, 0)", "Debug", MB_OK);
    address = _pciFindPciDevice(0x1022, 0x1103, 0);
    if(address == 0x86){
        MessageBox(NULL, "", "", MB_OK);
        return;
    }
    char temp[256];
    sprintf(temp, "%08X", address);
    MessageBox(NULL, temp, "Debug", MB_OK);
    MessageBox(NULL, "_pciConfigReadChar( address >> 16, 0x82)", "Debug", MB_OK);
    c = _pciConfigReadChar( address >> 16, 0x82);
    c |= 0x04;
    MessageBox(NULL, "_pciConfigWriteChar( address >> 16, 0x82, c)", "Debug", MB_OK);
    _pciConfigWriteChar( address >> 16, 0x82, c);


>Visual C++6.0 は使っていますが
>DDKが無いのでSysinfoをビルドできないです(-_-;
と、SysInfo.dll はただの DLL なので DDK は必要ありません。

>Win9x系をサポ〜トするメリットはあまり無いので
>時間に余裕がある時で構わないです。
いえ、今直さないと永遠にこのままかと思います。
何せ私自身 9x 使いませんし。。。

>プログラムの質問もOKとの事で嬉しいです。
>後日、MSR関係の質問させて頂きますm(_ _)m
はい、マニアックなお友達は大歓迎ですよ。

【1926】あれれ?
←back ↑menu ↑top forward→
 DULL WEB  - 06/3/11(土) 12:57 -

引用なし
パスワード
   こんにちはぁ。

cpuinfo(3).dll に差し替えてみました。
困った事になぜか正常に動作してしまいました(-_-;

メッセ〜ジボックスの待ちでウエイトが発生して
タイミング・バグを避けたのかと思いましたが
メッセ〜ジの出ない電圧変更でも正常に動作しました。

cpuinfo.dllを元に戻すとやはり「ペ〜ジ違反」で落ちます。
どこかでバッファオ〜バ〜フロ〜してるかなと…?

>と、SysInfo.dll はただの DLL なので DDK は必要ありません。
プロジェクトのsysinfo.vxdとsyinfo.sysの依存を削除したら
途中までビルドできました。

でもPROCESSOR_ARCHITECTURE_AMD64等の定義や
msrnt.cpp(msrnt.h)の
#define IOCTL_READ_MSR \
    CTL_CODE(MSR_TYPE, 0x981, METHOD_BUFFERED, FILE_ANY_ACCESS)
でもCTL_CODE等が定義なしで引っかかるので
最新のプラットフォ〜ムSDKが必要みたいですね。(DirectX SDKも)

こちらでもバッファ周りのコ〜ドを調べてみたいと思います。
ではでは。

【1927】Re:あれれ?
←back ↑menu ↑top forward→
 ひよひよ  - 06/3/11(土) 16:47 -

引用なし
パスワード

[添付]〜添付ファイル〜
・名前 : SysInfo(4).dll
・サイズ : 136.0KB
   ▼DULLさん:
>cpuinfo(3).dll に差し替えてみました。
>困った事になぜか正常に動作してしまいました(-_-;
>
>メッセ〜ジボックスの待ちでウエイトが発生して
>タイミング・バグを避けたのかと思いましたが
>メッセ〜ジの出ない電圧変更でも正常に動作しました。
えと、電圧変更時にメッセージが出なかったのは最初に倍率変更したときに、EnableK8FVID 関数が呼ばれており、二回目は即座にリターンするようになっているからです。

>cpuinfo.dllを元に戻すとやはり「ペ〜ジ違反」で落ちます。
>どこかでバッファオ〜バ〜フロ〜してるかなと…?
実は、PCI デバイスチェック部分にエラー処理を追加していました。そこで、回避できているのであれば今回添付のバージョンで、メッセージボックスが出ない&倍率電圧変更がうまくいくことになります。今回添付ので駄目だと、メッセージボックスを表示されることでエラーが出なくなる=どこかにバグが・・・ということになります。

>>と、SysInfo.dll はただの DLL なので DDK は必要ありません。
>プロジェクトのsysinfo.vxdとsyinfo.sysの依存を削除したら
>途中までビルドできました。
あれ、もしかして SysInfo ディレクトリのプロジェクト使ってますよね・・・。最近は、CrystalCPUID ディレクトリ内のプロジェクトを使ってビルドしているのでそちらのほうが良いかと・・・。(まぁ、そのうち独立させる予定ですが。)

>でもPROCESSOR_ARCHITECTURE_AMD64等の定義や
>msrnt.cpp(msrnt.h)の
>#define IOCTL_READ_MSR \
>    CTL_CODE(MSR_TYPE, 0x981, METHOD_BUFFERED, FILE_ANY_ACCESS)
>でもCTL_CODE等が定義なしで引っかかるので
>最新のプラットフォ〜ムSDKが必要みたいですね。(DirectX SDKも)
お察しのとおり、新しい PlatformSDK と DirectX SDK が必要です。

>こちらでもバッファ周りのコ〜ドを調べてみたいと思います。
>ではでは。
さすがにそろそろ再構築したいなぁ〜と思う今日この頃です。

【1930】Re:あれれ?
←back ↑menu ↑top forward→
 DULL WEB  - 06/3/11(土) 22:45 -

引用なし
パスワード
   cpuinfo(4).dll を試してみましたがダメでした。
ペ〜ジ違反で落ちてしまいました。
何が原因なのか…

ソ〜スを眺めていたんですが _pciFindPciDevice() は
すごく面倒な処理をしているように思えました。

現在、DOS用の倍率電圧変換ソフトを作っていますが
(いろいろ苦戦していましたがDOS用ソフトで
今日やっと倍率電圧変更に成功しました。)
PCI-BIOSでPCIデバイス検索する時は
mov ax,0b102H
mov cx,デバイスID
mov dx,ベンダID
int 1aH
で出来るんです。
多分、NT側との互換性の為にあのような処理に
なってるのかなと思いました。

sysinfo.dllもビルドできるようになりましたので
いろいろ実験して明日報告したいと思います。
でも実はデバッガは使った事がなかったりします(-_-;

【1935】Re:あれれ?
←back ↑menu ↑top forward→
 ひよひよ  - 06/3/12(日) 20:54 -

引用なし
パスワード
   ▼DULLさん:
>cpuinfo(4).dll を試してみましたがダメでした。
>ペ〜ジ違反で落ちてしまいました。
>何が原因なのか…
>
>ソ〜スを眺めていたんですが _pciFindPciDevice() は
>すごく面倒な処理をしているように思えました。
う〜んと、ここら辺はベースライブラリの PCI Debug Library for Win32 とほとんど変わっていないはずです。。。私自身 PCI の扱いに習熟しているわけでないのが痛いところであります。

>現在、DOS用の倍率電圧変換ソフトを作っていますが
>(いろいろ苦戦していましたがDOS用ソフトで
>今日やっと倍率電圧変更に成功しました。)
おめでとうございます!!

>PCI-BIOSでPCIデバイス検索する時は
>mov ax,0b102H
>mov cx,デバイスID
>mov dx,ベンダID
>int 1aH
>で出来るんです。
私もいま勉強中なんですが、これって、プロテクトモードだと使えませんよね?

>多分、NT側との互換性の為にあのような処理に
>なってるのかなと思いました。
NT と 9x で同じになるようにドライバは作られています。

>sysinfo.dllもビルドできるようになりましたので
>いろいろ実験して明日報告したいと思います。
ぜひお願いいたします。

>でも実はデバッガは使った事がなかったりします(-_-;
あっ、デバッガは便利ですよ。

【1937】EnableK8FVID が原因かも
←back ↑menu ↑top forward→
 DULL WEB  - 06/3/12(日) 21:56 -

引用なし
パスワード
   ▼ひよひよさん:

sysinfo.dllを少しいじってみましたが
単純に EnableK8FVID() を実行しないようにしたら
落ちなくなりました。

内部処理ではホストブリッヂ(?)を検索して
該当レジスタのBit2を立てていますが
私の環境では起動段階でBit2は立っているので
この処理をパスしても問題ありませんでした。

しかし、これでは根本的な解決にはならないので
PCIアクセス周りを調べて見ようかと思います。

>>PCI-BIOSでPCIデバイス検索する時は
>>mov ax,0b102H
>>mov cx,デバイスID
>>mov dx,ベンダID
>>int 1aH
>>で出来るんです。
>私もいま勉強中なんですが、これって、プロテクトモードだと使えませんよね?
PCI Debug Library の処理もこれと同じようにPCI-BIOSをコ〜ルして
レジスタの書き換えやメモリ空間の読み書きを行っているので
sysinfo.vxd 内部では使えるハズです。

もし処理を追加するとすれば sysinfo.vxd と sysinfo.sys に
新しく「デバイス検索命令」を追加する形になります。
sysinfo.vxd はPCI-BIOSコ〜ルで検索して
sysinfo.sys は現在の _pciFindPciDevice() の処理を
内臓すれば互換性は取れるような気がします。

過去にWin98 DDKをダウンロ〜ドして保存してあったCD-Rを
見つけたので sysinfo.vxd もビルドできるようになりましたし、
NT4 DDK も見つけたので sysinfo.sys も試してみようと思います。

もう少しいじってまた報告します。

>>でも実はデバッガは使った事がなかったりします(-_-;
>あっ、デバッガは便利ですよ。
独学プログラマでして実務経験ゼロだったりします(T_T)
デバッガって難しそうな気がして触れないんですよね。

【1938】Re:EnableK8FVID が原因かも
←back ↑menu ↑top forward→
 ひよひよ  - 06/3/12(日) 23:19 -

引用なし
パスワード
   ▼DULLさん:
>▼ひよひよさん:
>sysinfo.dllを少しいじってみましたが
>単純に EnableK8FVID() を実行しないようにしたら
>落ちなくなりました。
動作検証ありがとうございます。
つーか、スタック周りだったりして。

EnableK8FVID() の呼び出し位置に関数の中身をコピーして試してみるというのはいかがでしょうか?これで落ちないようだと・・・。

>内部処理ではホストブリッヂ(?)を検索して
>該当レジスタのBit2を立てていますが
>私の環境では起動段階でBit2は立っているので
>この処理をパスしても問題ありませんでした。
うっ、確かにそれはそうなんですよね。
たまに、Bit 2 が立っていない環境があるので。。。

>しかし、これでは根本的な解決にはならないので
>PCIアクセス周りを調べて見ようかと思います。
MessageBox デバッグもいいので、どの関数まで呼ばなければ動くかのか?
がはっきりすれば対応できるかもしれません。

>>>PCI-BIOSでPCIデバイス検索する時は
>>>mov ax,0b102H
>>>mov cx,デバイスID
>>>mov dx,ベンダID
>>>int 1aH
>>>で出来るんです。
>>私もいま勉強中なんですが、これって、プロテクトモードだと使えませんよね?
>PCI Debug Library の処理もこれと同じようにPCI-BIOSをコ〜ルして
>レジスタの書き換えやメモリ空間の読み書きを行っているので
>sysinfo.vxd 内部では使えるハズです。
ほんとだ。かなりそれっぽい asm がいっぱいありますね。
これって、自作 OS でも役に立つ知識なのかも。(気早っ)

>もし処理を追加するとすれば sysinfo.vxd と sysinfo.sys に
>新しく「デバイス検索命令」を追加する形になります。
>sysinfo.vxd はPCI-BIOSコ〜ルで検索して
>sysinfo.sys は現在の _pciFindPciDevice() の処理を
>内臓すれば互換性は取れるような気がします。
なんかここら辺はかなり改善の余地がありそうですね。
全部探索してる感じになってるし。

>過去にWin98 DDKをダウンロ〜ドして保存してあったCD-Rを
>見つけたので sysinfo.vxd もビルドできるようになりましたし、
>NT4 DDK も見つけたので sysinfo.sys も試してみようと思います。
SysInfo.sys をビルドするときは、
#define _NT4
を有効にしておいてください。こうすると、NT4 では対応していない? Kernel mode SEH が無効になります。

詳しくは
http://crystalmark.info/BBS/c-board.cgi?cmd=one;no=1406;id=

>もう少しいじってまた報告します。
>
>>>でも実はデバッガは使った事がなかったりします(-_-;
>>あっ、デバッガは便利ですよ。
>独学プログラマでして実務経験ゼロだったりします(T_T)
>デバッガって難しそうな気がして触れないんですよね。
私も独学?プログラマです。仲間ですね(笑)
私も実務経験0です。つーか、ホビープログラマっていうやつですね。

そういえば、質問があるとかいう話はどうなりましたか?

【1940】pciFindPciDevice() が原因?
←back ↑menu ↑top forward→
 DULL WEB  - 06/3/13(月) 22:41 -

引用なし
パスワード
   ▼ひよひよさん:

>つーか、スタック周りだったりして。
>
>EnableK8FVID() の呼び出し位置に関数の中身をコピーして試してみるというのはいかがでしょうか?これで落ちないようだと・・・。
_pciFindPciDevice() で落ちているのは確実です。
再起呼び出し等は行っていないのでコ〜ド的には
スタック不足は発生しないように私は見えますが…?
今日はTurion機の「HDD入れ替え&OS入れ」をしているので
検証できないですm(_ _)m

私が使っているK8V-MXのBIOSはAMIなのでAWAROとは
PCI-BIOS実装が異なっているんじゃないか…なんて?
存在しないバス番号、デバイス番号のレジスタ読みで
落ちてるとしたら悲しい実装ではありますが…(-_-;

>これって、自作 OS でも役に立つ知識なのかも。(気早っ)
多分、役に立つと思いますよ。
PCIをI/Oポ〜トで制御するのは面倒なので
PCI-BIOSは有効な手段だと思います。

私はCQ出版社の「TECH I Vol3 PCIデバイス設計入門」を
参考にしてPCI-BIOSを使いました。
後半のソフトウェア部分はPCI-BIOSの存在有無のチェックから
使い方まで書いてあります。
PCI Debug Library の作者 kashiwanoさんも記事を書いています。
でも9割がハ〜ドウェアの資料なのでほとんど(私には)使えません。

>私も実務経験0です。つーか、ホビープログラマっていうやつですね。
そういう風に言うですね。初めて知りました。
ひよひよさんは職業プログラマなんだろうと勝手に思ってました(^_^;

>そういえば、質問があるとかいう話はどうなりましたか?
実は自己解決してしまいました。
なので今は次のステップのために資料を集めて勉強中です。

【1941】Re:pciFindPciDevice() が原因?
←back ↑menu ↑top forward→
 ひよひよ  - 06/3/13(月) 23:44 -

引用なし
パスワード
   ▼DULLさん:
>▼ひよひよさん:
>
>>つーか、スタック周りだったりして。
>>
>>EnableK8FVID() の呼び出し位置に関数の中身をコピーして試してみるというのはいかがでしょうか?これで落ちないようだと・・・。
>_pciFindPciDevice() で落ちているのは確実です。
でも、この関数って他の部分でも呼び出しているように思うんですよね。。。
PCI Device List とかは表示できますか???

>再起呼び出し等は行っていないのでコ〜ド的には
>スタック不足は発生しないように私は見えますが…?
>今日はTurion機の「HDD入れ替え&OS入れ」をしているので
>検証できないですm(_ _)m
えっと、スタック周りというのは、以前(今もそのまま)何の変哲もない関数を呼び出すところで実行が止まる?というレポートをいただき、色々デバッグを試みたのですが、その方の環境ではやっぱり動かなかったというのがあったんですよね。自分の環境で再現しないバグって、結構根本的に不具合の素があるんだろうなぁ〜と。

>私が使っているK8V-MXのBIOSはAMIなのでAWAROとは
>PCI-BIOS実装が異なっているんじゃないか…なんて?
>存在しないバス番号、デバイス番号のレジスタ読みで
>落ちてるとしたら悲しい実装ではありますが…(-_-;
う〜ん。それはないかな。。。
やっぱり、Crystal 側に問題があると考えるのが普通かなと。
はぁ・・・。バグばっかりだよ。

>>これって、自作 OS でも役に立つ知識なのかも。(気早っ)
>多分、役に立つと思いますよ。
>PCIをI/Oポ〜トで制御するのは面倒なので
>PCI-BIOSは有効な手段だと思います。
直接、I/O ポートだと、環境によってはブルースクリーンだったりするんですよね。。。(SysInfoの前身はI/O直接アクセスでがんばってました。)

>私はCQ出版社の「TECH I Vol3 PCIデバイス設計入門」を
>参考にしてPCI-BIOSを使いました。
>後半のソフトウェア部分はPCI-BIOSの存在有無のチェックから
>使い方まで書いてあります。
私もこの本で勉強しました。

>PCI Debug Library の作者 kashiwanoさんも記事を書いています。
>でも9割がハ〜ドウェアの資料なのでほとんど(私には)使えません。
あっ、私もです。最後の方しかちゃんと読んでません。
PCI デバイスの自作をするほどマニアではないので(笑)

>>私も実務経験0です。つーか、ホビープログラマっていうやつですね。
>そういう風に言うですね。初めて知りました。
>ひよひよさんは職業プログラマなんだろうと勝手に思ってました(^_^;
褒め言葉と受け取っておきます。

【1942】原因つかめず…
←back ↑menu ↑top forward→
 DULL WEB  - 06/3/16(木) 20:11 -

引用なし
パスワード
   ▼ひよひよさん:

>PCI Device List とかは表示できますか???
あれれ?
表示できますね…

どこかでメモリリ〜クしてて
メモリの内容を壊しているのでしょうかね?

ちなみにスタック不足を考えてリンカの設定で
スタックサイズを2倍にしても変化はありませんでした。

もう少し調べてみようと思います。
ではでは。

【1943】Re:原因つかめず…
←back ↑menu ↑top forward→
 ひよひよ  - 06/3/17(金) 0:26 -

引用なし
パスワード
   ▼DULLさん:
>▼ひよひよさん:
>
>>PCI Device List とかは表示できますか???
>あれれ?
>表示できますね…
正直、CrystalCPUID.exe 側に問題があると思うんですよね。。。
5.x は全てリセットして再構築しようとしているので、それで結構解決するんじゃないかと思っています。一部の環境で正常に動作しないというレポートは以前からいただいているんですが、自分の環境では再現しないので何が原因か未だにつかめておりません。

あまり深追いするよりも、自分の必要な機能だけ抜き出して SysInfo.dll をコールする GUI を作ったほうが有意義かも。。。

といいつつ、SysInfo.dll も再構築しなければならないと思う今日この頃。
第一 MessageBox を間に挟むとうまく動くという時点で何かが間違ってる・・・Sleep(0); を間に挟めばうまくいったりしませんかねぇ〜(根本的な解決にはならないけど。)

【1947】Re:原因つかめず…
←back ↑menu ↑top forward→
 DULL WEB  - 06/3/19(日) 18:56 -

引用なし
パスワード
   ▼ひよひよさん:
>あまり深追いするよりも、自分の必要な機能だけ抜き出して SysInfo.dll をコールする GUI を作ったほうが有意義かも。。。
自分でソフトを作ってしまいました。
9x専用、ブリッヂ初期化なしと本当に自分専用です(-_-;

>といいつつ、SysInfo.dll も再構築しなければならないと思う今日この頃。
win9x のRDMSR/WRMSRをVxd側に移しても動きそうな気がするのですが
どうでしょう?(試して見ないとわかりませんが…)
セレクタ情報を読み取って無理矢理Ring0よりはスマ〜トかなと思ったりします。
そうすればMSR操作はNT系と共通になるのでコ〜ドの簡略になるかも?

>第一 MessageBox を間に挟むとうまく動くという時点で何かが間違ってる・・・Sleep(0); を間に挟めばうまくいったりしませんかねぇ〜(根本的な解決にはならないけど。)
Sleep(1000)を試した時はダメでした。

他に疑うとしたらスレッド周りでしょうか…

【1948】Re:原因つかめず…
←back ↑menu ↑top forward→
 ひよひよ  - 06/3/19(日) 19:20 -

引用なし
パスワード
   ▼DULLさん:
>▼ひよひよさん:
>>あまり深追いするよりも、自分の必要な機能だけ抜き出して SysInfo.dll をコールする GUI を作ったほうが有意義かも。。。
>自分でソフトを作ってしまいました。
>9x専用、ブリッヂ初期化なしと本当に自分専用です(-_-;
いやはや恐れ入ります。
ホント原因がわからないんでなんとも・・・
申し訳ない。

>>といいつつ、SysInfo.dll も再構築しなければならないと思う今日この頃。
>win9x のRDMSR/WRMSRをVxd側に移しても動きそうな気がするのですが
>どうでしょう?(試して見ないとわかりませんが…)
>セレクタ情報を読み取って無理矢理Ring0よりはスマ〜トかなと思ったりします。
>そうすればMSR操作はNT系と共通になるのでコ〜ドの簡略になるかも?
そうですね。

現在、Windows 以外のプラットフォームに CrystalCPUID を移植すべく準備を始めたところです。その中で、SysInfo.dll は相当変更する予定なので、そのときは Vxd 側でやるようにしようと思います。(今すぐやれって感じですが。)

6 / 376 ツリー ←次へ | 前へ→
  新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃ホーム  
ページ:  ┃  記事番号:   
51982
(SS)C-BOARD v3.8(とほほ改ver2.1) is Free