2010/8/20 23:28 |
で、24時間稼働のメビウスノートがさすがに2kのサポート終了後も運用し続ける訳にもいかないので、 レッツノートを買った。CF-R4。無論中古。 とりあえずHDDをSSDとかに換装したいわけだが、こいつに乗っているのはロジック3.3V、モーター5V(逆かも)という、微妙にレアなもの。 まあちょっとググれば、HDDへの供給電圧の変更はジャンパー設定で簡単にできることはわかる。 が、本当にそれでいいのか? IDEコントローラーに5Vの信号かけていいのか?と。 まあこれに関しては、以前PT1のPCI規格を調べたときに、あまりにも5Vトレラントというものを理解してない人が世の中多すぎる。 よって、これ系の動作報告はあてにならん。 つまり、まあ調べるしか無いですよね、と。 まあさくっと調べてみると、IDEコントローラーはintelの82801FBMが乗ってる。 http://ark.intel.com/Product.aspx?id=27677 こいつですねー。 ここからデータシートも落とせるので、確認してみると、 736ページ(DC特性のあたり)に、 IDE Signalsは5V tolerantですよー、と書いてある。 というわけで大丈夫そうという結論。 ところで、データシート見る限り、SATAとかPCI-Expressとか頑張ったら乗るのか? BIOS書き換えないととかBGAから信号引き出さないととか現実的にかなり無理くさいけど。 |
2010/8/7 6:25 | ||||||||||||
やっぱりC言語って難しい。 (裕之はC言語に関しては結構初心者レベルです) C言語を始めると、まずポインタにつまずくって言うけど、 ポインタの概念はアセンブラとか組めるので全然気にならない。 むしろよくわからないのが「型」の定義。 たとえば、MSDNから丸々引用してくると、
で、問題なのはこの「型」。ここにあるだけでも、 DWORD,LPCTSTR,int,HWND,HMENU,HINSTANCE,LPVOID がある。 アセンブラ的解釈で言えば、これは全部「32bitの値」というだけで、それ以上の型は持たないわけですよ。 まあ、たとえば、「LPCTSTR」は「文字列が収納されている先頭アドレスの32bit値」という意味なんだけども、 なんでここまで型が区別されているのか、というか、なんで中途半端に区別されているか、という。 (32bitWindows以外はとりあえず置いておくとして) intといえば、「符号付32bit数値」、DWORDといえば「符号無し32bit数値」。 で、たとえば、「ウィンドウの幅」は「int、すなわち、符号付32bit数値」として定義されているのであり、 「ウィンドウ幅を示す32bit数値」という「型」は無いのである。 でも、「HWND」は「ウィンドウハンドルを示す32bit数値」という「型」が定義されているあたりが中途半端。 結局のところ、型がよくわからないが、内部的にはどれも32bit数値、という事で、「文句言われたらキャストする」という、 実に根本を理解していないような気がする書き方をしてる状況。 確かに、その「32bit数値」が何を意味してるか、というのは当然把握はしてるんだけどねえ。 |