高度な検索
Developer Connection
Member Login ログイン | ご入会 ADC連絡先

Technical Q&A QA1106
FCode & OS X


Q:前の Macintosh コンピュータでは利用できていたいくつか Open Firmware のメソッドが、2001 年の後半に出荷されたマシンではなくなっているようです。どのようにすれば、これらのメソッドを使わずに今後 FCode ドライバをデバッグしたり作成したりできるのでしょうか?

A:デバッグするときは、Open Firmware の設定変数、 fcode-debug? を使います。

fcode-debug? は、true のときにはヘッダを有効にすることを意味し、false のときはその逆を意味するブール値です。デフォルト値は false です。次に、 fcode-debug? を有効および無効にする方法を示します。

Command-Option-O-F のキーを押しながら、Macintosh コンピュータを起動することによって、Open Firmware ユーザインタフェースに入ります。ヘッダを有効にするには、次のコマンドを入力します。

setenv fcode-debug? true

作業が済んだら、次のように入力してこの変数を無効にします。

setenv fcode-debug? false

コードの出荷前にこの変数を無効にしておくのはとても大事なことです。この変数を無効にするのが、FCode における隠しメソッドが使用できることを確認できる唯一の方法です。メソッドは、fcode-debug? が false のときだけ隠されます。

出荷するコードでは、隠しメソッドが使えなくなりました。なぜなら、ユーザが、コンピュータを起動するときに Command-Option-P-R のキーを押して NVRAM をリセットすることによって、このフラグを簡単に無効にできるからです。

また、現在では、エクスポートするすべてのメソッドを EXTERNAL と明示することが大事です。詳細については、1275 の仕様を参照してください。


[2002 年 1 月 15 日]