pbsd-mg2@bronze.is.titech.ac.jpMC-R700での動作状況と私の作業状況について簡単に報告します。[動作状況]主にdisklessで動作させています。FlashATAをルートファイルシステムにしての起動も成功していますが、条件によってCFスロット(ソケット)のデバイスを認識しないことがあるため、普段は使っていません。CFスロットが認識されない件については調査中です。GPIO関係の設定状況に依存するのかもしれません。(CEの動作状況によって認識する/しないが変化するようなので。)コンソールはシリアルです。シリアルを有効にすると思われるGPIOのビットは何とか捜し当てました。GIUの割り込みがCEが設定したままになっているとハンドリングできない割り込みが入って止まってしまうようなので、GIUの割り込みは最初に全部無効にするように変更したところ、安定してブートするようになりました。不特定のタイミングで止まっていた。)disklessでの動作ですが、今一つ不安定です。調子がいいときは1時間くらいかけてカーネルのコンパイルをしても大丈夫だったり、emacsのmakeができたりします。謎のpanicを起こしたりします。buildを行なっていますが、2時間くらい経過した現在、快調にmakeが続いています。(だめなときは10分でダウンするのですが。errorを起こします。HDDそのものは認識されています。(ベンダ名や容量などの情報は表示される。Microdriveを認識しないため、Microdriveはお休みしています。様なアダプタだとMicrodriveの動作確認リストに載っているため、Melcoのアダプタは今度買ってくるつもりです。作を検証してみるつもりです。(340MBあれば結構入るので、カーネルやらemacsやらのコンパイルテストくらいはできると思います。buildできるようになったのは既にお伝えしたとおりです。自分でmakeしたバイナリでdiskless環境を作る際に、さらに修正点を見つけました。etc/etc.hpcmips/MAKEDEVはi386用のものが入っているため、これを使ってデバイスファイルを作ると当然動作しません。カーネルのソースでは、メジャー番号はpmaxと基本的には同じになっているので、pmax用をベースに修正する必要があります。distributionでdisklessのルートファイルシステムを作成したところ、全然動かなくてしばらく悩みました。-msoft-floatに関する件ですが、libcのsoftfloatライブラリを呼ばないのはegcs(gcc)のコンフィグファイルでそのように書いてあるのが原因であることがわかりました。SoftwaregoFast"ライブラリの名前を呼び出すようになります。したがって、コンフィグファイルを修正するか、別のコンフィグファイルを使うかしないとlibc.aの関数は呼び出されません。dp-bit.cがリンクされるようにしてしまった次第です。(libgccのMakefileについても同様に修正しました。"gofast.h"をなくしたらlibc.aが使われるかどうかはこれから検証してみます。-msoft-floatをデフォルトにする方法ですが、CC1SPECを変更するよりも、TARGET_DEFAULTを変更するほうが良いのではないでしょうか?こんな感じです。(MASK_GAS|MASK_DEBUG_A|MASK_SOFT_FLOAT)デフォルトがどうなっていても、必要があれば-mhard-float/-msoft-floatをオプションで指定すれば望みの動作に変更できます。CC1SPECを修正すると、デフォルト動作と異なる動作を指定したい場合に、たとえば以下のように、相反する二つのオプションが同時に指定されてしまいます。.....こういうのを見ると、果たしてどのように動作するのか不安になるので、TARGET_DEFAULTを変えるほうがわかりやすいと思うのですが、いかがでしょうか。*NetBSD/hpcmipsの(将来の)配布形態と利用形態について少し考えてみました。プロジェクトがターゲットとしているマシンは、PDAやHPCなどの、比較的非力なマシンです。HDDを内蔵していないのが普通なので、二次記憶装置の容量がノートPCなどと比較しても圧倒的に少ないのが特徴です。したがって、利用形態としては、利用者の用途に合わせた必要最小限のサブセットを入れて使うというものが考えられます。要するに、サンダーバード2号方式ですね:-)また、インストール方法等を考えても、ターゲットマシン単体でできるようにするのは無理があるので、ホストマシンを用意して、そのマシンがCF等のメディアにインストールするというのが合理的だと思います。いうことで、配布形態としては、フルセットのバイナリ(とソース)を作り、その中から利用者の必要とするサブセットが容易に取り出せるようにするのがいいのではないかと思います。外出先でmailを読むためのお出かけmailキットとかを作ると思います。どこでもソースを読むためのソース読みキットとか:-)動かしたいアプリケーションの動作環境の依存関係を調べるのは結構大変かもしれませんが、利用者が作ったキットの作成情報を集めるようにすれば、どんどん便利になっていくような気がします。PocketBSDについては実は内容をほとんど把握していないので、すでにこういうことがなされているようでしたら失礼。statusIndex(es):DateThread。