* 15 Feb 2009 ・run_sheet の日本語表示・入力と LOCALE (日付を"*月"→"Jan","Feb") の整合性を修正 (ただし Run_sheet.ad は UTF8 にする必要有り)。 ・Makefile sys.install を /etc/{modules.conf,modprobe.conf} に適応 (他、マイナーな修正) ・ipcclr を shmid/semid から key を使用する新しい書式に変更 * 7 Aug 2008 ・Vine-3.2 (kernel-2.4.x) 対応版として文書を整備。 * 6 Aug 2008 ・東陽 CC/NET のための cnaf と libtclcam.so を作成。 * 4 Aug 2008 ・Kinetics 2915/3922 CAMAC crate controller/PCI インターフェース デバイスドライバを 2.2.x → 2.4.x へ対応。 wait_queue の扱いと MODULE_LICENSE のみの簡単な変更。 * 21 Jul 2008 ・run_sheet の文字大きさ不具合の修正 (PostScript 72dpi に対し 昔は X が 75dpi がデフォルトだったので顕在化しなかったが、 gnome が 96dpi になった為、印刷時の不一致が目立った)。 tk scaling [expr 75.0/72.0] の一行を挿入して簡単に対応。 blt-2.4z stripchart の PostScript 出力を pstops で簡単に 重ね描きするのは断念。psoverlay は fig2dev を使って実現。 ただし日本語表示・入力は相変わらず駄目 (tcl/tk-8.4.6 の問題?) * 29 Jun 2008 主に Vine-3.2 (RedHat-7.x) で利用できるように色々書き換えた。 ・各種デバイスドライバの更新 主には kernel 2.2.x → 2.4.x の変更。基本的に両方をサポート。 - Bit3 617/618 VME-PCI host bridge 9 Jul 2003 に対応済み (MODULE_LICENSE のみ追加) ただし、最初に使用する時だけ DMA と mmap の衝突エラーが起こる。 vme_ctrl reset すれば、その後は正常 (optimize によるレジスタ 初期化の問題か?) - CES HSM-8170 従属ドライバ wait_queue の扱いと MODULE_LICENSE のみの簡単な変更。 - 東陽 CC/7x00 CAMAC crate controller 19 Mar 2002 に対応済み (MODULE_LICENSE のみ追加) ・各種ライブラリ・ツールのバージョン依存性への対応 - blt-2.4u → blt-2.4z (ただし不具合の解決は後日) - tcl/tk-8.0.5_jp9 → tcl/tk-8.4.6 (一部の不具合解決は後日) Tcl_CreateCommand の引数 (Tcl_CmdProcの型) が変更されたので対応。 tcl.h が /usr/include-tcl-private/generic/ に用意されたので利用。 2000年問題バグが解消されたので run_sheet の clock scan を変更。 - svipc-2.2.0 (tcl の IPC サポート) tcl/tk の Tcl_GetInt 等々の引数(型)変更に合わせて修正。 - gcc-2.91.66 → gcc-3.3.2 文法チェックが厳密化し、文字列定数に改行を入れられなくなったので \n\ 等々で対応。 - glibc-2.1.3 → glibc-2.3.3 - ImageMagick 5.1.1 → 6.0.8.3 * 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 は正常に応答しない事がある?)