ハングアップの日々

2001年 12月分

2001/12/27

 Mistress9 ボードの USB ドライバのためにいろいろと調べているところだが、なかなか進まない。これのおかげでかなり体力・精神力を消耗しているのかも。風邪が完治しない。1週間以上返事を書いていないメールも何通かあったような気もするが・・・どうも返事を書こうという気が起こらない。さてどうしようか。
 WDM ドライバ用の API(?) にはマクロで書かれているものがかなりたくさんあるようだ。普通にドライバを書いているだけなら、マクロかそうでないかはいちいち気にする必要などないのだろうが・・・。
 0xDEADBEAF? 何だ、この値は?

2001/12/26

 HDD の動作が少し怪しい。再起動時に scandisk が実行され、その結果、不良セクタが3つも見つかってしまった。やはり修理の必要ありか? だが修理に出している間に使うための予備の HDD がない。そろそろ新しい HDD を買わねばならないか。次は流体軸受けの 40GB などがいいかな。EXIDE32G を使ってノートでも 32GB の壁を越えられるかが気になるところだが。(どうしてもダメだったら ICC で 32GB に容量を制限してしまえば問題もないだろうから特に心配はしていないが。) CHANPON3 も欲しいのだが、さてどうしよう。

2001/12/22

 ICC を NetBSD, FreeBSD に移植したという方からメールが来た。公開することを許可して欲しいということと、*BSD での利用を前提にしているので可能ならば BSD ライセンスで公開したいという内容である。公開の方は良いとして、ライセンスの方をどうするか悩んでいる。BSD ライセンスだとソース公開の義務もなく、ソフトを営利目的に利用することも禁じていない。*BSD 用のソフトだから BSD ライセンスで公開するというのは自然な発想ではあるが、ICC がそうなることなどは全く予想していなかった。さてどうしたものだろうか。
 いずれにしても、こうやってソフトを他の OS に移植してくれる人がいるというのは嬉しいことである。ソースを公開した甲斐があったというものである。(実際のところ、AT 互換機での手抜きのウェイトルーチンを誰かがまともなものに直してくれることへの期待はあったが、他の OS への移植というのは全く考えていなかったのだが・・・。)

2001/12/15

 某 OFF 会に参加。CHANPON3 の実物を見せてもらった。CHANPON1 以上に部品がぎっしりと並んでいた。とりあえず CHANPON3 ではどれだけの容量の HDD まで扱えるのかが気になるところ。あとは La13 のバッテリーパックを2つ頂いた。

2001/12/13

 CANON のプリンタドライバの機能で複数ページを縮小して1つのページに印刷する機能は非常に重宝しているのだが、それを使うと両面印刷ができないのはかなり面倒である。(縮小印刷機能を使わなければ各アプリの両面印刷機能が使えるのだが。) 何とかできないものかと調べてみたところ、FinePrint 2000縮小印刷98/2000 というソフトが見つかった。どちらもプリンタドライバとして動作するソフトのようである。どちらも便利そうだが・・・、シェアウェアか。確かにプリンタドライバなんて個人が趣味で開発するような代物でもないし、Win9x だと 16bit コンパイラを使って開発しなければならないので、シェアウェアになってしまうのも仕方のないことなのかもしれないが。とりあえず FinePrint 2000 をインストールしてみた。ドキュメントやヘルプファイルまで \windows\system に放り込むのはどうかと思った。

2001/12/11

 Win95 の挙動が少し怪しい。コマンドラインで VC を使ってプログラムをコンパイル中に、cl.exe がハングアップしてしまった。DOS 窓を強制終了させてから、もう一度コンパイルしようとしたが、今度は Win32 コンソールアプリがすべて動かなくなってしまった。何度か試していると OS ごとハングアップしてしまった。再起動してからもう一度同じプログラムをコンパイルしてみたがやはり cl.exe がハングアップ。また DOS 窓を強制終了させてから、ソースを一部書き換えてからコンパイルし直すと今度はようやくまともにコンパイルが終了した。しかし、今度は .chm 形式のヘルプの挙動が怪しい。リンク先を開くのに数十秒もかかる。もう一度再起動したらようやくヘルプもまともに動くようになった。だが今度はあるアプリで音飛びが発生するように・・・。
 Windows はバージョンに関わらずコンソールや DOS 窓回りにかなりのバグがあるように思われる。最近では Win2k/XP で特定の文字列をコンソールに出力すると OS ごと逝ってしまうという強烈なバグも発覚しているし・・・。

2001/12/09

 VBS = Virus Breeding Script?
 ラジオデパートで ROM ライターが売られているのを発見。RS-232C 接続のものが、\39,800、C バス/ISA 接続のものが \20,000。若松だと \49,800 だったと思うので、これは安いかも。買うべきだろうか?

2001/12/08

 WinMe DDK の cl.exe は、バージョンから考えると VC++ 1.0 に付属のものと同じものだろうか。実行ファイルは PE 形式になっているのだが、これはその頃からそうだったのだろうか。少し気になっている。
 WinMe DDK の cl.exe で実際に DOS プログラムを作れるかを試してみた。ヘッダファイルの場所に \NTDDK\inc\win_me\inc16 を指定し、ライブラリファイルの位置に \NTDDK\lib\win_me を指定したところ、何の問題もなく DOS プログラムが作れた。ライブラリファイルを見ていると DOS プログラムはスモールモデルのものしか作れなさそうな感じである。ヘルプファイルがないので詳しいことは全く分からないが・・・。メッセージファイルがないためにコマンドラインヘルプや、エラーメッセージさえも表示されないというのは少し辛い。

2001/12/03

 Windows DDK のうち、WinMe DDK のファイルを眺めていると、bin16 ディレクトリ(\NTDDK\bin\win_me\bin16)の中に、cl.exe を発見。実行してみると Ver.8.00x と表示された。同じディレクトリには 16bit 用の link.exe などもある。さらに Win98 DDK と同じように、Win16 用のヘッダファイルやライブラリも含まれているようだ。もしかして WinMe DDK があれば、Win16 アプリが作成可能なのか?
 ということで実際に試してみた。Win16 の頃の本を見ながらメッセージボックスを表示するだけのプログラムを書いてみた。Win16 プログラムを書いたのは今回が初めてである。何もオプションを指定せずにコンパイルしてみると、DOS プログラムとしてコンパイルしようとしていたようで、main が見つからないというエラーが出た。libw.lib, mlibcew.lib を指定するとそのエラーは出なくなったが、代わりにスタックセグメントがないというエラーが出た。そこで /stack:10240 を指定してみたところ、そのエラーは出なくなったが、できたプログラムを実行するとエラーが出る。そういえば Win16 プログラムでは DEF ファイルというものが必要だったはず。ということで DEF ファイルを書いてみたところ、まともに動く Win16 プログラムができあがった。Win16 プログラムの作成は面倒だということがよく分かった。しかし、Win9x では低レベル(もちろんここではハードウェアに近いという意味)なことに手を出そうとすると 16bit コードで書かなければいけないことが結構ある。(例えば CD-ROM のセクタ読み出しなど。) これがあればいろいろと遊べそうである。

2001/12/02

 BJC-430J の新しいプリンタドライバがないか、CANON のサイトへ見に行った。Ver.6.81 が公開されていた。ちなみに今まで使っていたバージョンは・・・ Ver.4.21。よく考えると今まで一度もプリンタドライバのバージョンアップをしたことがなかった。割り付け印刷で1枚に4ページ分を印刷できるようになっていた。大量のページを印刷したいときに便利だと思ったが、実際に使ってみると文字が小さくて読みにくい。両面印刷に対応したようなことが書かれていたのだが、BJC-430J ではその機能は使えないようだ。残念である。せめて、奇数ページまたは偶数ページのみの印刷でもできればよいのだが。

2001/12/01

 dvipsk-w32.txt を読んでいると、Distiller への入力用 PS ファイルを作成するときには -P dl オプションを指定すると良いと書かれていた。このオプションを指定するとフォントを出力ファイルに埋め込むようである。どうやら昨日行った Distiller のフォント位置の設定は無駄だったようである。


Copyright (C) 2001 K.Takata