* 16 Jan 2001 ・CC/7700-PCI の存在しないクレートを選択しても offline が検知され ない不具合を修正。 * 7 Jan 2001 主に Vine-2.1 (RedHat-6.2) で利用できるように色々書き換えた。 ・各種デバイスドライバの更新 主には kernel 2.0.x → 2.2.x の変更。基本的に両方をサポート。 - 東陽 CC/7x00 CAMAC crate controller CC/7000, CC/7700-ISA|PCI の三種を統一。 mars では使わないが IRQ の共有やブロック転送モドキもサポート。 - Kinetics 2915/3922 CAMAC crate controller/PCI インターフェース - Bit3 617/618 VME-PCI host bridge これまでの書き換えられた vmehb-1.2 を更に書き換えるのでなく、 vmehb-2.2.7 に乗り換え、HSM 制御部分を従属ドライバとして分離 した。ただし、vmehb-2.2.7 には相当に不具合があったのでパッチ を当てて使う (詳しくは vmehb/MEMO)。VME bus に SYSRESET を出す ioctl も加えたが、今回は scheduler を使って一命令にまとめた。 IRQ も共有できるように変更。 - CES HSM-8170 従属ドライバは multi-HSM をサポートするようにした。 各 HSM に別の VME IRQ (1-7) を割り当て、バッファフルになり次第 各々独立に割り込みをかけてバッファを切り替えて DMA を起動する。 従ってイベントヘッダにシリアルナンバーを書き込むようなハードと イベントビルダーが必要。スケーラは各々の割り込み毎に毎回読むの で、ブロック毎のスケーラとデータの整合性は無くなる。各々の HSM には 0 から始まる識別子を付け、ブロックヘッダ (これまでは 0 だ った) の上位 8 ビットに書き込む。従って 1 台しか HSM を使わない 時は、これまでと全く互換。不具合対策として、recorder に対する sleep_on を interruptible_sleep_on に変更し、rescue を廃止した。 また ioctl 関係も整理し、併せて commander/recorder を変更。 ・各種ライブラリ・ツールのバージョン依存性への対応 - svipc-2.2.0 (tcl の IPC サポート) 共有メモリ (shm) と変数割り付け (linkvar) 部分だけを取り出し、 svipc-2.2.0-Lite として mars に含める事にした。各種構造体が glibc-2 で変っているので、システムヘッダのマクロ (これは un- documented なので将来変更されるかも) を見て自動分岐するように した。 - blt-2.3 → blt-2.4u PostScript 出力のバグ対策パッチを当てたものを RPM として供給 する事にしたので、mars に含めない事にした。2.4 では名前空間が 分離されているので、run_sheet に tcl バージョン が 8.0 以上で ある時に namespace を export する個所を追加。stripchart のオ プションの変更 [-range → -autorange (これは本来バグ)、 -limits → -limitsformat, -limitscolor, -limitsfont] に両対応。 - tcl7.6/tk4.2p2 → tcl/tk-8.0.5_jp9 clock format が環境変数 LANG/LANGUAGE/LC_ALL を見て日本語出力 してしまうので、ヘッダ (マジックナンバー) を変更、先ず /bin/sh を起動して環境変数を unset してから wish を exec で起動するよ うにした。wish の location にも依存しなくなったし一挙両得。 - gcc 2.7.2.1 → 2.91.66 (a.k.a. egcs-1.1.2) - libc-5.4.23 → glibc-2.1.3 gets を使うと怒られるので fgets によるマクロで代用。 cuserid は無くなったし、利便性を考え getenv("LOGNAME") に変更。 void main() でも文句を言われるようになったので対処。 本来エラーになるはずなのに、旧版では正常動作してしまっていた popen(…,"r+") を popen(…,"r") に修正。 - g77-0.5.19.1 → 0.5.24 write() 実行後に fflush() してくれなくなったので必要に応じて fflush() を追加 (tcl/tk の subprocess として使う時には hbook や handypak の起動メッセージを先に flush しないと後で困る)。 - ImageMagick 3.9.0 → 5.1.1 旧版の convert は何故かデフォルトで A4 に丁度良い PostScript 出力を生成してくれたが、新版は letter サイズである上に全くマ ージンをとらなくなったので、明示的にサイズ指定するように変更 (fera4300b 等、HCOPY ボタンを持つもの)。 - ipcs の出力が変更された (key フィールドが増えた) ので、ipcclr を新旧両対応に変更 ・その他、細かい改善 - fera4300b 等に -Z オプションを追加 (実は電源投入直後の 4300B は正常に応答しない事がある?)