![]()
旧世代小型電脳活用第一弾。
最後のDOSマシンといわれる富士通InterTop Model20からオリジナルのシェルをはずし、純然たるDOS機として活用する方法について。
富士通InterTopは1997年に登場したDOSベースの小型携帯端末である。
特徴としては、
・タッチパネルを採用した360°回転可能なカラー液晶画面
・モデムを内蔵しインターネットにも対応
といったところだろうか。
さらにスタイルの面では1997年度グッドデザイン金賞授賞という輝かしい経歴も持っている。(ちなみに、twentieth anniversary MacintoshとNINTENDO 64 も同年金賞を授賞した。)
発表当時は小型端末愛好者からは携帯型ワープロの傑作機OasisPocket(オアポケ)の後継機とも見なされ、その登場は大きな期待をもって迎えられたが、そのハードウェア・ソフトウェアの両面にわたる妙な中途半端さゆえか、その期待を見事に裏切った機種でもあった。(初登場後一年も経過しないうちにハード・ソフト両方のブラッシュアップ版ともいえるmodel20が投入されたってことは、相当大変だったんでしょうね。)
その後DOS版InterTopは大きなモデルチェンジを迎えることもなく、WindowsCE版InterTop CXシリーズへその道を譲ることとなるわけで、当時すでにキーボード付き小型端末のOSはほとんどWindowsCEで占められており、ノートパソコンでもWindows98が登場しようという時期であったことから、DOSをオリジナルのOSで搭載するマシンは一般ユーザの向けとしてはほとんど存在しなかった。そんなわけでInterTopは「最後のDOSマシン」の称号を冠されるに至る。(初めてこの称号を使ったのはどなたなのかは存じません。)
さて、2003年2月。秋葉原の某中古販売店でそのInterTop model20にめぐり合う好機を得た。登場当時からの不人気がここまで影響しているのか、同じ棚に並べられたモバイルギアのMKシリーズが2万円以上の値をつけているのに比べ、InterTop君は約\8,500。いくらタッチペンが欠品とはいえ、あんまりといえばあんまりな差である。その落差に心が動いたわけじゃないのだが、一期一会がアキバの掟。その日からInterTop君は新たなる旅路へ就いたわけだ。
プロセッサ:1Chip PC/AT互換CPU(486SX相当)
記憶主記憶:4MB
補助記憶:12MB(コンパクトフラッシュ)
液晶方式:透過型(バックライト付)カラーSTN *タッチパネル装備
液晶サイズ/表示色:7.2型/256色
解像度:VGA(640×480ドット)
入力キーボード:本体一体式(キーピッチ15mm)
ポインティングデバイス:タッチパネル
本体設計構造方式:ATアーキテクチャー準拠
内蔵モデム速度:DATA:最大33.6Kbps/FAX:最大14.4Kbps
インターフェース:PCカードJEIDA Ver.4.2(PCMCIA2.1)TypeII仕様準拠×1スロット、赤外線ポートIrDA Ver.1.0(115Kbps)/通信可能距離20〜50cm、RS-232C MINI-10Pin
電源供給方式:ACアダプタ(100V 50/60Hz)または内蔵リチウムイオンバッテリ
バッテリ稼動時間:約2.5〜3時間(フル充電の状態でバックライトが低輝度の場合)
バッテリ充電時間:電源オフ/サスペンド状態で2.5〜3時間、電源オンで6〜7時間
消費電力:約9W以下(ACアダプタ入力)
※定格消費電力:約4W(バッテリ使用時でバックライトが低輝度の場合)
温湿度条件温度:5〜35℃、湿度:30〜80%(ただし結露しないこと)
外形寸法(mm): 210.0(W)×149.5(D)×29.0※突起部含まず
重量:約750g(バッテリ含む)
今回のInterTopの利用においては、基本的に二度と標準のシェル(メニュー)は利用しないということを前提にしているので、オリジナルのコンパクトフラッシュカードにある不要なファイルは全部削除してしまっていいわけだが、いきなり全部消しちゃうというのも怖いので、様子を見ながら適宜削除していくことにする。
![]()
(「システム破壊の恐れがありますのでカードは抜かないでください」<キツい脅し文句の割には簡単にフタは開く。)
念のためだが、以下に述べることはメーカの認めている保証の範囲を逸脱している。したがって、実際に行う場合は自己責任になることをしっかりと認識のこと。 また、ここに書いてあることを実行して、あなたが何らかの損害を被ったとしてもワタシは一切責任を負うものではない。
さて、最近はコンパクトフラッシュも随分安くなったし、このさいオリジナルよりも容量の大きい64MBのものに交換することにした。(いずれにせよ、オリジナルのファイルはPCカード経由でパソコンにでもバックアップしておく。)
なお、InterTopの稼働には、おそらく本体内蔵のROMに入っているDOS(MS-DOS6.2)以外のDOS(PC-DOSとか)でも可能と思うのだが、ここはオリジナルのリソースを有効利用するということで、システムについてはできるだけ本体内蔵ROMのものを利用することにする。
とりあえずは、オリジナルのコンパクトフラッシュに入っているファイルは残したままで、新しいCFカードをアダプタを使ってInterTop本体のPCカードスロットでフォーマットし、システムもコピーしておく。このときフォーマットはInterTopのスロットでやった方がいい。Windows9xマシンなどで行うと、システムが異なるのであとからInterTopの起動ドライブに出来なくなってしまう。
DOSの基本的に必要なファイルは内蔵のROM(Dドライブ)に書き込まれているので、コンパクトフラッシュに最低限必要なのは、command.comのほかは、config.sys、autoexec.batぐらいのはずである。
そのほかに、オリジナルのconfig.sysに記述のある\oak、\sheet、\sysdataの各ディレクトリは残しておくことにする。これらの中のファイルが具体的にどのような働きをしているかよく知らないのだが、後々消しても大丈夫かを確かめながら削除していくことにする。
config.sysとautoexec.batについてはオリジナルのものをコピーして、必要な部分だけを残しておく。とりあえずは、config.sysからはinterlinkとタッチパネル、および電源管理に関すると思われる部分以外、autoexec.batからは環境変数とディレクトリを作っている部分以外は残しておいた。また、オリジナルのconfig.sysはこのままでも利用できるが、DEVICEで指定されているパラメータはオリジナルの状態で最適化されたものなので、いろいろ追加するのであればDEVICEのパラメータは外しておいたほうがいいように思う(下の例のように外さなくてもあんまりかわんないようにも思う。とりあえずこれで動くことは動いた。)。
ここまでで、とりあえず、起動した段階でプレーンなDOSが立ち上がることになるはずなので、このカードを本体基板上のCFカードと交換する。
> SWITCHES=/F/N
DEVICE=D:\DOS\HIMEM.SYS /TESTMEM:OFF
DEVICE=D:\DOS\EMM386.EXE RAM HIGHSCAN I=B000-B7FF I=D000-D6FF I=DC00-EBFF 1824 FRAME=DC00 X=D700-D7FF X=D800-DBFF
BUFFERS=30,0
FILES=30
DOS=HIGH,UMB
LASTDRIVE=J
FCBS=1,0
DEVICEHIGH /L:1,4976 =C:\SYSDATA\INT10FK.SYS
DEVICEHIGH /L:1,12464 =D:\DOS\BILING.SYS
REM パワーマネージメントドライバ
> DEVICEHIGH /L:0;1,9024 /S =D:\DOS\POWER.EXE
> DEVICEHIGH /L:1,288 =C:\SYSDATA\SUSRJC.SYS
DEVICEHIGH /L:2,22336 =D:\DOS\JFONT.SYS /P=D:\FJFONT\ /U=0
DEVICEHIGH /L:2,17744 =D:\DOS\JKEYB.SYS /106 D:\DOS\JKEYBRD.SYS
DEVICEHIGH /L:1,4672 =D:\DOS\KKCFUNC.SYS
REM ramドライブ
> DEVICEHIGH /L:2,6800 =D:\DOS\RAMDRIVE.SYS 1056 /E
REM PCMCIAドライバ
DEVICEHIGH /L:1,1312 =D:\PICOCARD\CNFIGNAM.EXE /DEFAULT
DEVICE=D:\PICOCARD\PCMSS.EXE
DEVICE=D:\PICOCARD\PCMCS.EXE
DEVICEHIGH=D:\PICOCARD\PCMSCD.EXE
DEVICE=D:\PICOCARD\PCMATA.SYS
REM パッチドライバ
DEVICEHIGH /L:1,3456 =C:\SYSDATA\PATCH.SYS
> DEVICEHIGH /L:0;2,7648 /S =D:\DOS\INTERLNK.EXE /DRIVES:3 /NOPRINTER /NOSCAN
> DEVICEHIGH /L:2,2064 =C:\INET\AVEDPH.SYS
DEVICEHIGH /L:2,21600 =D:\DOS\JDISP.SYS
DEVICEHIGH /L:2,9680 =D:\DOS\ANSI.SYS
REM OAKV用の設定
DEVICE=C:\OAK\FJFPV.SYS
DEVICE=C:\OAK\FJIAE.SYS
DEVICE=C:\OAK\FJOAK.SYS -D=C:\OAK\OASYS.DIC
REM タッチドライバ
> DEVICEHIGH /L:2,3632 =C:\SYSDATA\SYSTPNL.SYS
REM DOS画面用バッテリ残量表示ドライバ
rem DEVICEHIGH =C:\SHEET\DOSBATRY.SYS
[autoexec.bat]
(>をつけた行はコメントアウトした行。実際には削除するか、rem を入れておいてください。)
@rem INTERTop-V1.2L10 (JISキ-ボ-ド)
@prompt $p$g
@path c:\sheet;d:\dos;d:\picocard;c:\inet;
@LH /L:2,8080 d:\dos\nlsfunc.exe d:\dos\country.sys
@d:\dos\chev.com jp
> @set aveconf=c:\envdata
> @set ppp=c:\envdata
> @set $HRDENV=DB2
> @set BF4=e:\work
> @set TMP=e:\work
> @if not exist e:\clipdata\nul md e:\clipdata > nul
> @if not exist e:\output\nul md e:\output > nul
> @if not exist e:\work\nul md e:\work > nul
@c:\sheet\sysinit.exe >nul
@c:\sysdata\dspon
> @c:\sheet\menu
タッチパネルはInterTopの最大の特徴といってもいいデバイスなのだが、皮肉なことにそのタッチパネルが最大のウィークポイントであるともいえる。これのおかげでただでさえ見えにくいカラー液晶が更に見にくくなっているのだ。
ネット上においても、このタッチパネル取り外しの事例はいくつかみられ、取り外し後に液晶の視認性が大きく向上したことが述べられている。
ワタシ的には、これまで使ってきた新旧モバイル・ギア(MK-12とMC-R300)やThinkPad220、CassiopeiaA-60などの経験からタッチパネルは特に必要ないということが分かっていたし、今回は二度とオリジナルのメニュー環境には回帰しないという前提があることから、購入時から取り外すことを念頭においていた。
DOSでもポインティングデバイス(主にマウスだが)を利用するアプリケーションやゲームは少なくなく、もし、このInterTopのタッチパネルのドライバが標準的なマウスのドライバと互換性があったなら、すこしはその視認性の悪さをカバーしたかも知れないのにと思うと残念だ。
以降の記述はメーカの補償範囲を逸脱する内容を含んでいます。また、以降の内容は決してその実行を推奨するものではありません。もし実行してみようという場合は、あくまで自己責任において行ってください。
取り外しの実際はこちらのサイトに写真入りで詳しく述べられているので参考にさせていただいた。ただ、このページで記述されているものとワタシの持っているIT20ではタッチパネルを固定しているテープの貼られかたが裏表反対で、ワタシのものはタッチパネルは液晶パネルの方に貼り付けられていた。おなじInterTopでも形式の違いや生産時期によって仕様の異なるものがあるということかもしれない。
それと、注意すべき点としては、液晶パネル裏のアルミの外装を外してから出てくる液晶パネルを固定しているネジのいくつかが、非常に強固に止められていたということだ(カタいのなんの)。かなり注意深くやったつもりだったが、ワタシは2つほどナメてしまい後からずいぶん苦労した。ドライバのサイズや品質にも十分気をつけた方がいいかもしれない。
タッチパネルを取り外してみると、液晶の表面はややマットな処理がされているため映り込みが少なく、視認性はかなり向上する。
さすがに直射日光下では何もみえないが、昼間の屋外でも輝度を上げれば見えるようになったし、白っぽい服装などで操作すると、それがタッチパネルの表面に映り込んで見にくかったことなどが大幅に改善された。
ワタシにとって、タッチパネルははじめから必要のないものであったが、そもそもInterTopにとってタッチパネルはどうしても必要なものだったのだろうか。もしもタッチパネルを全面に押し出すのであれば、液晶とタッチパネルそのものの品質をもっと向上させ、OSあるいはシェルについてもタッチパネルによるコントロールにふさわしいものを載せるべきであった。一方、まともなキーボードが使えてテキスト入力のできる小型携帯端末としてアピールするのであれば、ポインティングデバイスとしてのタッチパネルは最善の選択であったとは思えない。液晶の視認性を犠牲にしてまでタッチパネルに固執せず、なにか他のポインティングデバイスを提案すべきであっただろう。
オリジナルのメニュー画面からは、CPUの動作速度について高速、低速それぞれの継続時間や、「電源」キーの機能を電源オン/オフかサスペンドにするかの設定することが出来た。そしてそこで設定した低速モードの継続時間が切れるとサスペンドするわけである。
オリジナルのメニューを削除してしまったので、このプログラムを呼び出して設定することは出来なくなってしまったが、これらはBIOSの設定画面からも設定可能である。(起動時に「F2」キーを押し続けることでBIOS画面の呼び出しが可能。)
しかし、ワタシの経験では内蔵のコンパクトフラッシュからオリジナルのconfig.sysでpower.exeをロードすると、このBIOSの設定がいずれも「Disable」になってしまった。APMの仕様とpower.exeの関係についてよく分かっていないので、こういうことは当たり前なのかもしれないのだが、少しばかりハマってしまった点だった。そのため、現在は電源管理系のドライバはconfig.sysからはずしてある。
もうひとつ、オリジナルのメニューを利用しないことで少し困るのが、電池残量の表示がなくなることだった。
ワタシの入手したInterTopでは、config.sys内に「DOS画面用バッテリ残量表示ドライバ(DOSBATRY.SYS)」というオリジナルではコメントアウトされているエントリがあって、これを有効にすると画面の左下隅に電源状態がパーセント表示された。
通常、これをそのまま使うことで、たぶんまったく問題ないと思うのだけれど、ワタシはなんとなく左下隅という場所がイマイチ気に入らなかったことから、以前 ThinkPad220 で利用していたfuelgageというソフトを利用して、画面右上隅に表示されるようにした。
fuelgageは更新間隔のタイミングや表示場所を指定可能であるし、コマンドラインから常駐させるので、取り外しも可能である。電池残量は100%から20%きざみで表示される。
InterTopのバッテリはSony製のビデオカメラなどでも使われているのと同じカマボコ型のリチウムイオン充電池で、カタログスペック上では一回の充電で可能な利用時間は2.5〜3時間ということになっている。が、いろいろ利用してみて、これは妥当かやや控え目な数字であるように思えた。(電池保持時間のカタログスペック上の数値が妥当か控え目な数字であるというのは、きわめて珍しいことであると思える。)
経験的には、東京ー大阪の新幹線内での連続使用(約2.5時間)でも電池残量は40%までしか低下しなかったし(途中、PHSカードをつかって2回ほどメールの送受信をおこなっている)、通勤の行き帰りで片道小一時間の利用であれば途中で充電の必要を感じることはない。
たしかに電池の継続時間は長いに越したことはないが、ワタシの日常の利用に対しては必要にして十分といったところだ。(そして、これは電源に限ったことではなく他の点でも言えることで、このマシンはいろいろな面でワタシの「必要にして十分」という条件を満たしたマシンになっている。ただし、条件を満たすためにいろいろな工夫が必要ではあるのだが。)
![]()
InterTopのセールスポイントのひとつに「親指シフト」による日本語入力が可能なキーボードをもつモデルをラインナップしたということがあった。同時にJIS配列によるキーボードのモデルもあって(ワタシのマシンはJIS配列の方だ)、両者のキーボードは共通で、単にキートップのプリントを変え、親指シフトモデルはソフト的にキー配列をエミュレートしたものであったと思われる。(まともに親指シフトのものを観察していないので、あくまで推測。オリジナルの内蔵コンパクトフラッシュの\oakディレクトリにはJIS配列のキーボードを親指シフトに変換するドライバが納められていた。)
そのような親指シフトへの対応のためか、JIS配列モデルではキーの配列がややおかしなことになっている。これがそのキーボードのキー配列だが、最下列が「無変換」「変換」「空白」の並びになっており、真ん中に「変換」キーが大きな顔をして納まっているのだ。
親指シフトのキー配列についてよく知らないので、あてずっぽうの域を出ないが、両方の配列で「空白」キーを共通にしなければならないような理由があったということだろうか。
ワタシはそれほどタッチタイピングができるほうではないのだが、さすがにスペースキーぐらいは見なくても指が覚えている。ところがInterTopではスペースキーが右にオフセットされている上にサイズも小さいため、それはそれは激しく打ち間違ってしまうのだ。入力者の意欲と集中力を大きく損なう非常によくない仕様だ。
と、そんなことを考えながらWEBを見ていると、InterTopには「変換」キーと「空白」キーを入れ替えることのできるドライバが納められているとの情報を得た。それが、オリジナルの内蔵コンパクトフラッシュの\OAKディレクトリ内のctrl$key.sysである。これをconfig.sysで有効にすることでスペースが真ん中に来て「変換」がその右にくるという使いなれた配置におさまった。
しかし、考えてみればおかしな話である。こんなことが出来るのならば、そもそもキートップの印刷を変えて、このドライバを有効にして出荷すれば良かったのだ。いやいや、それ以前にそもそも親指シフトとJIS配列の二股をかけようとした時点でJIS配列の方はスペースが真ん中に来るようにすべきだったのだ。JIS配列キーボードを求めた人は、ほとんどの場合この配置の方に親しみがあると思うのだが、そうではないのだろうか。謎である。
単にこの変更を実施する時点ですでにキートップが出来上がっていて、富士通にキートップを取り替えるだけの余力がなかったということだとすれば、なんとも情けない話である。
スタンドアロンでDOSの動く環境が出来上がったら、次はネットワーク接続環境の構築を考えることにする。
自宅でも仕事場でもWindowsのネットワークが使える環境があるから、それに接続することができればLAN上のマシンのHDDやCD-ROM、フロッピードライブなどをInterTopから利用することができるようになる。また、DOSのドライバさえあればプリンタをつかうことも可能になる。
また、ここで述べるようなDOSによるLAN接続の方法は、CD-ROMドライブのないノートマシンのネットワークを使ったリカバリ方法として、ネット上でも多く紹介されているので、そのようなページもご覧になっていただけば、より理解も深まるのではないかと思う。
ネットワークカードの選択
さて、ワタシの手持ちのネットワークカードで、DOSで利用可能なものは、pci製のENW-3503-TおよびENW-3503-TX(3503-Tのカプラレス版)とMELCO製のLPC2-Tの3種類(実質2種類)であった。
結論から書くと、InterTopでの利用については、LPC2-Tでは使えて、ENW-3503-T(TX)は使えなかった。(※その後、ENW-3503-TXが何故かLPC2-Tとまったく同じ設定、すなわち同じドライバで動作することが確認された。)
ENW-3503-Tのドライバディスクは、DOSで使えるNDISドライバ、ODIドライバ、パケットドライバと、およそ必要なものは全部入っていて、おまけにカードイネーブラも含まれているというまったく至れり尽せりな代物で、ジャンクマシンをとりあえずネットに繋ぎたいときなど、とても重宝する。だがしかし、残念ながらInterTopでは、まずこのカードイネーブラが利用できないようだ。ドライバ付属のドキュメントにはマザーボードのチップセットに制限があることが書かれていたので、多分それに引っ掛かっているのだろう。
そこで、正攻法でInterTopのカードドライバで試してみると「power」のランプは点灯するのだが、そのあとのLanManagerでのndisドライバの設定が悪いのか、使えるようにセットアップすることができなかった。(これは単にワタシの設定の問題であって、動く可能性は残っているのではないかと思う。)
さて、そんなわけで今回はLPC2-Tのほうを利用することにする。ENW-3503-TXでカプラレスでかっこよく決めたかったがしかたがない。
LPC2-Tの製品パッケージのなかにODIのドライバは含まれているはずで、NDISドライバもMELCOのサイトからダウンロード可能である。
この製品も最近はあまり店頭でみかけなくなってしまったが、いずれにせよ量販店で売られているネットワークカードでDOSに正式に対応しているものは少なくなってしまった。
Microsoft LAN Managerの利用
日本国内では、Windows95の登場によってMicrosoftのネットワークサービス(いわゆるLANサービス)が一般にも一気に普及した感があり、Windows3.1以前のOSでは簡単にはLANは構築できないように思われているフシがあるが(というより、そのように宣伝されたというべきだろうか。特に日本では。)、DOSやWindows3.1でも利用可能な複数のネットワークサービスがMicrosoftによって提供されている。それらはMicrosoft LAN Manager、Network Client for DOS、Workgroup Connectionであり、いずれもMicrosoftのFTPサーバから無料でダウンロード可能である。
これら3種類は、少しずつ内容が異なるものの、いずれもいわゆるWindows95以降に登場したWindowsネットワークに接続して、ファイルを共有することが可能であるという点では違わない。(3種類の違いなどについては、こちらのサイトが詳しい。)
とりあえず、今回はLAN Managerを利用することにしたのだが、これは何回かの試行錯誤を経た上での選択であった。
まず、前提としては「できることならLANの利用と後述するパケットドライバをつかったインターネットへの接続を同時に(同じconfigで)実現したい」ということがあった。
パケットドライバを用いたインターネットへの接続には、LANマネージャで使われるNDIS2ドライバにさらにDIS_PKTというパケットドライバをかぶせて利用することになるのだが、LAN Managerを使うといくつかのドライバ群がUMB領域にうまい具合に追い出せて、比較的コンベンショナルメモリを広く確保できたというのが大きな理由である。
ということなので、必ずしもLAN Managerが3種類の中でベストというわけではなく、今回の利用環境と利用目的にたまたまよく適合したというだけのことであり、いずれもDIS_PKTを用いることができるはずである。
さて、LAN Managerのインストールの実際などについては前出のサイトがよく整理されており、参考にさせていただいた。
なお、今回のセットアップではLAN Managerの設定はBasicでプロトコルはNetBEUIのみとした。
もし、接続したいと考えているLAN環境でプロトコルにTCP/IPしか用いられていないということであっても、ワタシとしては母艦となるマシンにだけでもNetBEUIを入れて、NetBeuiで運用してみることを推奨したい。なぜならTCP/IPを用いると、とにかくコンベンショナルメモリがたくさん費やされてしまい、動かせないアプリケーションがいろいろと出てきてしまうからだ。InterTopの場合はそのうえカードサービスなどもロードしなければならず、テスト的にLAN ManagerでTCP/IPを導入してみたところ、コンベンショナルメモリが350Kを切ってしまった。
LAN Managerのセットアップがうまくいけば、手持ちのWindowsマシンとのファイルの受け渡しが非常にやりやすくなり、いわば母艦としてWindowsマシンを利用できるようになる。
単なるファイルのコピーにとどまらず、バックアップツールなどでバックアップを行ったり、母艦とのファイルの同期を行ったりと、母艦と連携させることでモバイルマシンとしての活用の幅が一段と広がるように思う。
DOSにおけるメールやFTP、WWWなどの利用については既に多くのサイトにおいて語られており、あえてここでくりかえすまでもないと思うので、それらのツールを利用できるようにするためのパケットドライバの導入についてまとめておきたいと思う。
ここでは、前項で紹介したLAN Manegerが導入されている環境にパケットドライバを導入するものとする。
(なお、LAN Managerはc:\lanmanにインストールされているものとしている。)
まず、DIS_PKT9.DOSというドライバをダウンロードしてくる。(適当にこの名前で検索すればヒットするはず。)
つぎに適当な場所にdis_pkt9.dosを置く(ここでは、c:\lanmanの直下に置いた)。
config.sysのLAN Managerの該当部分に、以下のようにdis_pktの記述を書き加える。
config.sys(該当部分)
devicehigh=c:\lanman\drivers\protman\protman.dos /i:c:\lanman
devicehigh=c:\lanman\dis_pkt9.dos <--- 書き加えた行
devicehigh=c:\lanman\drivers\ethernet\lpca2\lpca2.dos
さらに、c:\lanman\protocol.iniにもパケットドライバに関する記述を加える。
protocol.ini(全文)
[PROTMAN]
DRIVERNAME = PROTMAN$
DYNAMIC = YES
PRIORITY = NETBEUI
[NETBEUI_XIF]
Drivername = netbeui$
SESSIONS = 6
NCBS = 12
BINDINGS = "LPCA2_NIF"
LANABASE = 0
[pktdrv] <--- 追加したエントリ
drivername = pktdrv$
bindings = LPCA2_NIF
intvec = 0x60
chainvec = 0x66
[LPCA2_NIF]
DRIVERNAME = LPCA2$
IOBASE = 0x0240
INTERRUPT = 10
以上である。(やってみると、ダイアルアップによる設定よりもはるかにシンプルに済んでしまい、少々拍子抜けの感がないでもない。)
ちなみに、このようなパケットドライバを導入した上でのテキストブラウザBobcat-Jに関する設定は次のようなものだ(Bobcat-JはC:\WWW\BOBCATにインストールされているものとする)。
[c:\www\bobcat\wattcp.in_]
hostname = IT20 ; machine name
nameserver = 210.***.***.*** ; 適当なDNSのアドレスを記述
gateway = 192.168.1.1 ; 適切なGatewayのアドレスを記述
domainslist="hogehoge.jp" ; 適当なドメイン名を記述
SOCKDELAY=100
[bobcat.bat]
@echo off
set WATTCP.CFG=c:\www\bobcat
c:
cd \www\bobcat
if exist wattcp.cfg del wattcp.cfg
rem DHCP利用
copy wattcp.in_ wattcp.cfg
dhcpc >> wattcp.cfg
set TEMP=c:\_temp
lynx
cd \
dhcpc -r
以上。
ここでは、naohiro nishikawa氏によるdhcpc.exeを利用して、DHCPを用いたIPアドレスの指定を受けている。このdhcpc.exeというソフトウェアはパケットドライバで利用できる数少ないDHCPクライアントであり(ワタシの知る限りでは唯一のもの)、作者のnaohiro nishikawa氏には深く感謝したい。
ただし、このクライアントではgatewayやdnsについての情報は取得できないので要注意である。dhcpc.exe同梱のドキュメントにもあるように、このdhcpc.exeはアルファ版であって、必要最小限の機能しか実装されていないということなのであろう。
gatewayが取れないことで、すこし都合の悪いこともあって、それは別の方法で回避することができたのだが、それはまた別項を設けて書きたいと思う。
メールクライアントにはDOS用のメーラーとして広く使われているD-Mailを利用することにした。D-Mailは非常に洗練されたソフトであり、その機能はWindowsで利用されている多くのメールクライアントにひけをとらないものだと思うが、登場した時期が早かったために最近のメール事情が反映されていない点があるように思う。
ワタシが感じた点としては、
・APOPの利用ができない
・POP before SMTP ができない
の2点である。
また、複数アカウントをひとつのメールボックスで扱うことができない点も、変えられればうれしい部分である。
今回はHmsm氏のpop3.exeというソフトをD-Mailと組み合わせて利用することで、それらを改善することを試みた。
pop3.exeはHP100/200LXでの利用を念頭に開発されたもののようで、POPサーバにアクセスしてメールを取得し、それをD-MAIL形式のメールボックスで出力するプログラムである。APOPの利用ができたり、個別のメールを指定して取得できたり、取得するメールのサイズを指定できたりと、大変高機能で利用価値の高いプログラムである。
ワタシにとってのモバイルマシンの価値は、メールの使い勝手に左右される部分が大きいので、このプログラムなしでは、モバイルマシンをDOSで動かそうとは考えなかっただろう。
pop3.exeとD-Mailの組み合わせはある意味ワタシにとってのキラープログラムである。
APOPの利用は、このpop3.exeが元来持っている機能であり、「/a」オプションを有効にすることによって利用出来る。pop3.exeのドキュメントにもあるとおり、メールの取得と取得できたファイルのD-Mailのメールボックスへのマージは以下の通り。(すでにpop3でhogehogeという設定が作成済みであるものとする。)
rem APOPをつかったメール取得
set wattcp.cfg=c:\dmail
cd \pop3
if exist hogehoge.box del hogehoge.box
if exist hogehoge.idx del hogehoge.idx
pop3 /a /b /g hogehoge 0 10000
copy \dmail\mailbox\inbox/a+hogehoge.box/a \dmail\mailbox\inbox/b
copy \dmail\mailbox\inbox.idx/b+hogehoge.idx/b \dmail\mailbox\inbox.idx/b
つぎに、POP before SMTP。これはpop3.exeとD-Mailの合わせ技によっておこなうのだが、単純にpop3を動かした後にD-Mailで送信を行っているだけである。
すなわち、pop3.exeでメールを一件だけサイズ0で受信するように動かした後、d-mailでバッチモードで送信だけ行うようにするというだけのものである。
rem POP before SMTP のためのバッチファイル
@echo off
set dmail=c:\dmail
set tmp=c:\_temp
if exist wattcp.cfg del wattcp.cfg
rem DHCP利用
copy wattcp.in_ wattcp.cfg
dhcpc >> wattcp.cfg
set wattcp.cfg=c:\dmail
rem pop3 による送信前チェック
cd \pop3
pop3 /a /b /q hogehoge 1 0
del hogehoge.box
del hogehoge.idx
rem dmailで送信
cd \dmail\bin
dmail -b2
dhcpc -r
(wattcp.in_は前項で書いたものと同じもの。これをc:\dmailのディレクトリにも置いておく。)
ここまでご覧になればお判りかとも思うが、複数アカウントのメールを同じメールボックスで扱うというのも、メール取得のバッチプログラムを複数つくって動かせばよいだけのことである。
D-Mailという扱いなれたメールソフトに組み合わせるだけで、こんなに利用の幅を広げてくれたpop3.exe。ほんとうに感謝感謝である。
WEBの利用は、テキストブラウザのBobcat-Jを使うことでかなりのことができるが、やはりグラフィカルなブラウザが利用できると楽しいし、なにかと役に立つこともある。
DOSで利用できるグラフィカルなWEBブラウザとなると非常に選択肢は少なくて、現実的な選択は、やはりIBMのWebBoyの導入しかないように思える。WebBoyは市販ソフトウェアであり、価格も安いとはいえないものなので、あまり強く推奨もできないのだが、他に選択肢がないというのが現実だ。IBMのサイトから体験版がダウンロード可能なはずなので、いちどどんなものか試してから決めるのが良いのではないかと思う。
先日、IBMのサイトにアクセスしてみたところ、Webboyのページは削除されていました。「検索」ではヒットするのに・・・。
したがって、現在試用版やアップデータなどはダウンロードできないようです。(2005/02/17)
2005年2月24日、M's FolderのコメントとしてpanzervorさんからFTPのアドレスを教えていただきました。
ftp://ftp.jp.ibm.com/pub/pspj/webboy/
です。
WEBBOY Ver.4は高機能版と標準機能版をインストール時に選択でき、マニュアルに示された仕様では、高機能版は8MB、標準機能版では4MBの拡張メモリが必要であるとされている。
高機能版では、JavaScript、SSL、Cookieなどが利用できるので、インストールするのであれば、ぜひこちらを選択したいものだが、InterTopには拡張メモリは4MBしか装備されていないので、この要求仕様に従えば標準機能版しかインストールできない。
だが、ここは敢えてダメもとで高機能版のインストールを行ってみることにする。もし動かなければ全部消去して、標準機能版を入れなおせばよい話なのだから。
WEBBOYのインストールはフロッピーディスクから行うことになるので、LAN Managerを使って構築したネットワーク接続を使って、母艦のフロッピードライブを用いておこなう。インストールの途中で搭載されているメモリのチェックなどは行われないので、無茶に思える高機能版でもインストール自体は最後まで行われ、必要なファイルは所定の場所にコピーされる。
インストールしてみた実感から言えば、InterTopの4MBのメモリであっても、高機能版の詳細設定でDesktop-On-Callの機能をはずせば、標準機能版とほぼ同様の感覚でブラウジングできたといってもよく、とくにメモリ不足の警告が多く出るという感じではなかった。(いずれにせよ、容量の大きなページに対してメモリ不足の警告が出てしまうのは覚悟の上で利用しなければならないのだが。)
厳密に言えば高機能版ではより多くのメモリが要求されているのだろうが、一般的なページの閲覧に際しては、JavaScriptやSSLの設定を有効にしたかどうかよりも、画像を表示するかどうかを変更したほうがメモリ不足を引き起こす影響が大きいように思えた。
最近ではパソコンの処理能力も通信回線の環境も一昔前に比べて格段に向上し、それにともなってWEBページのコンテンツの容量も大きくなる傾向が顕著なため、非力なマシン(言い換えればWebBoyぐらいしかブラウザの選択肢のないようなマシン)では、閲覧の困難なページが増えているのが実情だろう。しかし、その一方で小さい容量であることが要求されるPDAや携帯電話向けのコンテンツも増えつつあり、そのようなコンテンツをうまく利用することでWebBoyでも十分に活躍の余地は残されていると思う。
また、動作の軽快さからいえばテキストブラウザであるBobcat-Jのほうが優る点も多く、画像や画面のデザインを見なければならないページと、テキストの情報だけで十分なページとで両者を使い分けることで、より効率のよいブラウジングができるようになるのではないだろうか。
マウスについて
WebBoyはマウスに対応したアプリケーションであるが、InterTopのタッチパネルで代用することはできない。(マウス互換のドライバも存在するやに聞いているが、ワタシは確認していない。)
そもそも、ワタシの場合タッチパネルは取り外してしまっているので、ポインティングデバイスは全くない状態である。
WebBoyはマウスがなくても操作できるようにつくられたソフトなので、InterTopでも決定的に困るということはないのだが、リンクの多いポータルサイトやニュースサイトなどでは、目的とするリンクは真ん中に見えているにもかかわらず、左側に縦にナビゲーション用のリンクなどがいっぱい並んでいるために、HTMLのソース上で先に記述されているそれらのリンクをTabキーで一つずつ移動させていかなければ目的のリンクにたどりつけないということもよくある。
そんなときのために、キーボードでマウスの動きをエミュレートするソフトを探したのだが、Windows用のものはいろいろあるものの、DOS版のものでグラフィック画面でも利用できるものは一つしか見つからなかった。Nakov Mouseというもので、マウスドライバとともにこれを常駐させることにした。
これはAlt+矢印キーで上下左右、Alt+Enterで左クリックをエミュレートするのだが、残念なことに右クリックのエミュレートがない。WebBoyでは画像上の右クリックで保存のメニューが出るようになっているので、これができないのは非常に残念である。どこかにいいソフトはないだろうか・・・。
LANカードを用いて、有線でネットに接続することはできた。となると次は無線でというのが人情(?)というもの。
しかし、手に入りやすい無線LANカードでDOSをサポートしている製品は見たことがない。(有線LANカードでさえ、DOSサポートを明示した製品は非常に少なくなってきてる今日このごろ)
DOSで無線LANというのは、話には聞いたことがあったので「無線LAN DOS」で検索すると、いろいろと情報が得られた。
それらの情報を総合すると、どうやら「Lucent社製のチップを用いたカードであれば、同社が提供するDOS用のドライバが利用可能」ということである。
ラッキーなことに、ワタシが持っていたMelco製のPCI-WL-11GPというカードは、このLucentチップを使った製品ということがわかった。
いろいろと検索しているうちに発見したこちらのサイトに従い、さっそくここからドライバをダウンロードしてくる。
このアーカイブに含まれているのは、ダイレクトカードイネーブラ、ODIドライバ、パケットドライバなどだ。DOSによるLANでよく利用されるMicrosoftのLAN Managerなどで必要なNDISドライバは含まれていない。
ここで参考にさせていただいた「Wireless LAN on DOS by FakeSE」というサイトは、おもに無線LANカードをつかったリカバリディスクの作成に主眼がおかれているが、ドライバの入手から様々なマシンでの設定など、非常に参考になる情報が多く記載されている。結局ワタシはほとんどここからの情報だけですべて設定できた。
とりあえず、やりたいことはメールの送受信とか、ブラウザの利用とかなのだが、ダイレクトイネーブラとパケットドライバがあるので、とりあえずパケットドライバを使うWATTCPに対応したアプリケーションを動かすのは何とかなりそうだ。上記のサイトにあったパケットドライバの利用の部分を参考にして設定してみた。
config.sys
DEVICEHIGH=D:\PICOCARD\CNFIGNAM.EXE /DEFAULT
DEVICE=D:\PICOCARD\PCMSS.EXE
DEVICE=D:\PICOCARD\PCMCS.EXE
DEVICE=D:\PICOCARD\PCMSCD.EXE
DEVICE=C:\wvlancad.sys <- 追加行
参考にしたサイトでは、これをダイレクトカードイネーブラとして利用しているので、オプションを添えてロードする例が書かれているのだが、ここではInterTopオリジナルのPCMCIAドライバも同時に用いているので特にオプションは指定しなくても大丈夫である。
autoexec.bat
C:\wvlan42 /l
packet.ini
Wireless_Network_Name = ANY <- SSIDにあわせてやる
packet.iniに関しては、これの他はオプションのまま。
当然、無線LANの設定でWEPの設定がされているのであれば、
Enable_Encryption = Y
Keyx = xxxxxx
などの設定を加える必要がある。
これで、あとは通常のLANを利用するときと同じようにWATTCP.CFGなどを設定してやればOKだ。
これは、ここに書いたのと同様、あまり苦労なくできた。パケットドライバさえ動かせれば、今までのWATTCPを用いるソフトが利用できるというのは便利だ。
ただ、この設定では、無線LANの醍醐味(?)である、フリースポット(ホットスポット)などでの利用が出来ない。DHCPでのアドレスの取得などが出来ないからだ。
通常フリースポットではDHCPを使って、マシンのIPアドレス、ゲートウェイのIPアドレス、DNSのIPアドレスなどを取得する。
WATTCP環境化では、前述したdhcpc.exeは利用できるものの、それではゲートウェイのアドレスは取れない。 さて、どうしようか?
実はMS LAN Maneger や Network Client for DOS などでプロトコルにTCP/IPを選択するとDHCPを利用することが出来るのだ。
だが、別項で書いたようにTCP/IPを利用しようとすると、おそろしくメモリを消費してしまうので、単純に組み込むというわけにもいかない。そこで、TCP/IPを利用する設定を独立して作ってしまうことにした。
LAN Manegerはすでに利用したので、勉強のためにもと思って、Network Client for DOSを新たにインストールし、プロトコルでTCP/IPを組み込んだ。そしてこれを無線LANでも使えるようにして(詳細は前記サイトを参考にした)、DHCPのクライアントでIPを取得し、その後にipconfigコマンドで確認する。そしてその値をwattcp.cfgに書き込んでおいて、一旦リセットし、無線LANでパケットドライバを利用する設定で起動し直すという手順だ。
回りくどいが、一旦IPを取得してしまえば、通常はしばらくリースは切れないので問題なく利用可能である。
前項でも参考にさせていただいたこちらのサイトでは、無線LAN用のODIドライバを用いてNDISドライバが必要なMS Workgroup Connectionを利用する方法が解説されている。
つまり、ODIドライバとNDISドライバをブリッジする方法が書かれているわけだが、それなら、起動時に「Microsoft LAN Manager」のクレジットが流れるWEBBOYでも使えそうである。
まず、またしてもこちらのサイトの解説に従い、ODIとNDISの橋渡しになるODINSUP.COMを入手。同時にNetware関係のファイル(LSL.COM)も入手。
さらにWorkgroup Connection用の設定を参考に、いろいろ試行錯誤をしてみて、次のような設定に落ち着いた。
config.sys
REM PCMCIAドライバ
DEVICEHIGH=D:\PICOCARD\CNFIGNAM.EXE /DEFAULT
DEVICE=D:\PICOCARD\PCMSS.EXE
DEVICE=D:\PICOCARD\PCMCS.EXE
DEVICE=D:\PICOCARD\PCMSCD.EXE
DEVICEHIGH=C:\wvlancad.sys <−無線LANカードドライバ
DEVICEHIGH=C:\WEBBOY\NTSDOS\BIN\PROTMAN.DOS /I:C:\WEBBOY\NTSDOS\WL\
DEVICEHIGH=C:\WEBBOY\NTSDOS\BIN\NTSTS.DOS
autoexec.bat
SET PATH=C:\WEBBOY;C:\WEBBOY\NTSDOS\BIN;%PATH%;
lsl.com
wvlan43.com <−無線LANカードドライバ
odinsup.com
SET MPM_INI=C:\WEBBOY\DATA\MICROPM.INI
SET MW_INI=C:\WEBBOY\DATA\WEBBOY.INI
SET SOCKET=0
C:\WEBBOY\NTSDOS\BIN\NETBIND
c:\webboy\ntsdos\wl\protocol.ini(\ntsdos以下に\wlというディレクトリを作った)
[PROTMAN]
Drivername = PROTMAN$
Dynamic = Yes[NTSTS_XIF]
DriverName = NTSTS$
UseMemory = HMA,EMM,UMB
RcvWindow = 2920
VCs = 12
VCReceiveLarge = 6
VCSends = 6
Load = NTSTS.DOS[cbr]
LANABASE = 0
;
; Uncomment (Remove the";") from the BootpFlag if you
; choose DHCP.
;
BootpFlag = DHCP <-DHCPの利用のためにこの行を生かす
;
; Comment out the next 4 lines if using DHCP
;
; IPAddr = [] <-DHCPを利用するためにここから4行コメントアウト
; DNSAddr = []
; DNSBackAddr = []
; GatewayAddr = []
DefaultDomain = hogehoge.com
NetSubNetMask = [255.255.255.0]
NetworkName = Local
Bindings = "WVLAN43" <-変更
;Uncomment if using token-ring LAN connection.
; TOKEN-RING = Yes[DRIVER_NIF]
; IOADDRESS = 0x300
; INTERRUPT = 0x5
; DriverName = EXP16$
c:\webboy\ntsdos\bin\net.cfg
Link support
MAX stacks 8
BUFFERS 10 1518
Link Driver WVLAN43
Wireless_Network_Name ANY
FRAME ETHERNET_802.2
FRAME ETHERNET_II
FRAME ETHERNET_SNAP
PROTOCOL IP 0800 ETHERNET_II
PROTOCOL ARP 0806 ETHERNET_II
Protocol odinsup
BIND WVLAN43
BUFFERED
また、
lsl.com
odinsup.com
wvlan43.com
net.cfg
の4ファイルは、
c:\webboy\ntsdos\bin 以下に配置した。
それから、DHCPを利用するために、起動ドライブのルートに\ETCというディレクトリを作成しておく必要がある。
以上でWEBBOYでも無線LANカードが利用できるようになったはずである。
これで、Linux cafeにも持って行け・・・るかな?
オフラインでWEBをブラウジングするといっても、INTERTopなので、電車でちょこちょこと新聞サイトを見たり、ニュースを見たり、というPDA的な目的ではあんまり使わないような気がするわけで、どちらかというと、旅行に行くとき関係サイトをごっそりダウンロードしておいてガイド代わりにして電車の中で読みながら行くとか、お好みのblogとかテキストぎっしりなサイトをダウンロードしておいて、暇なときにまとめて読むとか、なんかそんな使い方のほうがありそうな感じがしたりするわけで。
設定ファイルの編集
まあ、ともかくINTERTop + WebBoyでオフラインブラウズするための設定を考えてみる。
まず、オフラインの場合、ネットワーク関係のドライバとかその類は必要ないわけで、WebBoyの動作に関係のないものについては外してしまう。
config.sysの中の、
REM --- 以下の行は WebBoy for DOS 用に加えられました ---
から
REM --- 以上の行は WebBoy for DOS 用に加えられました ---
までの部分をコメントアウトして無効にする。つぎに、autoexec.batの
C:\WEBBOY\NTSDOS\BIN\NETBIND
の行をコメントアウトして無効にする。
以上でWebBoy起動時のコンベンショナルメモリの確保できる量はだいぶ増やすことが出来る。
また、もしオフラインで見るコンテンツが、すべて本体内のCFカード(c:ドライブ)に収まっているのならば、PCカードドライバの部分も無効にしても大丈夫なわけだが、私の場合、母艦となるマシンからCFカードをつかってコンテンツを持ってくるつもりなので、これはやめておく。
コンテンツの作成
つぎに、見るべきコンテンツを用意することにする。
基本的には、コンテンツのダウンロードは母艦となるマシン(Windows)でおこない、その結果をINTERTopに持ってきて見るという方法で行うことを想定している。
というわけで、まずWindowsマシンでほしいコンテンツをダウンロードする。これに関しては優れた自動巡回ソフトがいろいろとあるので、なんでもお好きなのを使ってもらえばいい。・・・というわけにはいかない。
なぜなら、INTERTopに持っていく場合、これらのコンテンツのファイルがすべてDOSの8.3形式のファイル名になっていなければならないという大きな壁があるわけで。
これがファイルの数が少なければ、手作業で置換したり、Perlなどのスクリプトで置き換えたりということも考えられなくもないのだけど、ファイル総数が何百という数になると、とてもやっていられない。
そこで見つけたのが、WinHTTrackというWEBサイトをミラーリングするというフリーウェアだ。もとはHTTrackというUnix系OSのコマンドラインで利用するツールのようで、それをWindows向けにPortされたものらしい。
嬉しいことにDOSの8.3形式で保存するというオプションがあり、それを指定することによってそのままDOSで使えるデータを得ることが出来る。
さらに保存時に元のサイトのディレクトリ構成を保持することも出来れば、ある一つのディレクトリにHTMLファイルをすべて収め、他の\imagesというディレクトリにすべての画像ファイルを収めるというような保存方法も指定することが出来る。
元々が英語のソフトなので、ワタシなぞはドキュメントを読んでも100%理解できるわけではないのだけど、WinHTTrackはGUIで操作可能なので、通常の操作ではある程度想像力を豊かにしながら操作すれば、だいたいのことは出来ると思う。またこちらのサイトではWinHTtrackについて、かなり詳しく説明されており大いに参考にさせていただいた。
もうひとひねり
以上の作業で、一応INTERTop+WebBoyを使ってオフライン・ブラウズができるようなデータはできあがった。しかし、ここはメモリの少ないINTERTop対応ということで、さらに画像の再圧縮を行っておく。たぶんメモリを8MBぐらい積んだマシンであれば、何の問題もないと思われるし、INTERTopでもとくに画像が欠けたりしなければ必要はないのだけど。
画像の変換にはIrfan Viewを用いた。このツールは大変有名なツールなのでもはやここで何も書くこともないのだけれど、サブディレクトリまで含めて指定ファイルを一括で変換できるという素晴らしい機能を持っている。
これを使って、jpgは20以下ぐらいまで品質を落とし、gifなども色数を減少させて少しでもメモリの使用を少なくするようにしてみた。
厳密にどの程度の改善があったのかは定かではないのだけど、実感として変換後には表示可能な画像の数やサイズが改善されているようだったので、画像がまったく表示されないよりは、美しくないものの情報としての画像があった方がいいというような場合には、手間をかけるだけのことはあるように思う。
また、Irfan Viewはコマンドラインでも多数のオプションを指定可能なので、WinHTTrackに同梱されるコマンドライン版のHTTrackと組み合わせることによって、たびたびダウンロードしたいようなサイトに関してはスクリプトにまとめることによってバッチ処理が可能なのではないかとも思う。(たぶん、そんなときにHTTrackのすべての画像を一つのディレクトリに収めるようなオプションが活きてくるのではないかと思う。)
INTERTopの母艦マシンとしてWindowsのマシンを使用していると、Windowsのロング・ファイルネームとDOSの8.3形式のファイルネームの差が徐々に気になってくる。
はじめは、そこに差があるということを意識して使っているので、DOSで使うためのファイルには出来るだけ8.3形式のファイル名を付けるように気を付けているのだけど、だんだん慣れてきて、はじめはDOSのほうに持ち出すつもりでなかったファイルまで、ついでにCFカード経由でコピーしたりしていると、DOSでファイラを開いてみて「あっ」と思ったりすることがある。
別にファイル自体が壊れるわけではないので、致命的とまでは言えないのだけど、DOSに持っていって編集すると名前が変わってしまうというのは、やはり気持ちの良いものではない。
というわけで、なんとかファイルネームに互換性を持たせることが出来ればと思い、いろいろやってみた(というほど、大したことはしないけど)。
まずは、必要なツールを集めることから。
DOSLFN
DOSでロング・ファイルネームを有効にするためのドライバであるDOSLFNを導入。
このドライバはHennis Heimatseiteで公開されており、比較的メモリの消費も少なく導入も容易。
日本語のドキュメント:としきのやしきの「ソフトウェアライブラリ」内
K-Launcher
LFNに対応したファイル管理ツール。TORO's Libraryで公開されている。また、同サイトではLFNの詳しい説明や上で紹介したDOSLFNについても触れられている。
以上を導入することによって、とりあえずWindowsで作成したファイルをDOS上で移動したりコピーしたりする事が可能になる。
いままでニョロニョロ(~)が付いてしまうのを「仕方ない」とあきらめていたことを考えると、殆ど何も気にせずにファイルのやりとりや編集ができるようになるというのは本当に気持ちの良いことで、精神衛生上の観点からもきわめて健康的になれる。
つぎに、ちょっとオマケっぽい話。
Vz
こういう風にロング・ファイルネームが使えるとなると、どんなソフトでも使いたくなるのが人情というものだけど、さすがになんでもかんでもというわけにはいかない。ところがワタシ的にDOSでの使用頻度No.1ソフトであるVzエディタでは、パッチをあてれば、なんとロング・ファイルネームが使えてしまうことがわかった(というより、単にWindowsでVzをつかわなかったので知らなかっただけ。有名なパッチである)。全面的にというわけではないけど、ファイラ画面でしっかり使えるので大変有り難い。
Vzエディタ1.6機能拡張差分(高橋版):「テキスト主義の楽園」内の「Vz Editor関連 - ライブラリ」より
Perl5
ロング・ファイルネームの必要性を感じた理由の一つがPerlを利用したかったということにもある。
で、ロング・ファイルネームが使えるとなると、perl5のドキュメントにある「perldos - Perl under DOS, W31, W95」ってやつに倣って最新のPerlをコンパイルすることも可能ではないかと思えてくる。
たぶん、きちんとdjgppを導入することができて、コンパイルのオプションもきっちり指定できれば、それも可能なのだとは思うけど、ワタシの現状のスキルとしてはちょっと心許ない。
そんなわけで、見つけだしたのがLaszlo Molnarさんが作られたdjgpp版のバイナリ。バージョンがちょっと古いけど、まあ基本的には問題なし。ドキュメントを読めば導入もめちゃめちゃ簡単。(djgppのDPMIサーバまで同梱されてる。)
とりあえず、モジュールが使えれば、ちょっとは役に立つってもんでしょう。
一番手っ取り早いのは、Windows環境で展開して、DOSLFNを有効にした状態でDOS環境にコピーして使うという方法だと思う。そして使用時には環境変数LFNを set LFN=y としておくことによってロング・ファイルネームに対応する。
これで、簡単なプログラムならINTERTopに入れておいて、ちょこちょこいじくりながらデバッグしたり出来るようになった。
ちなみに、djgppの/v2gnuディレクトリにあるPerl5.6はfpuが必要であるらしくINTERTopでは利用できなかった。
残念なこと
こういう風にロング・ファイルネームが使えて、じっさいWindowsとの垣根がだいぶ低くなったわけだけど、残念ながらネットワーク経由でのファイル共有ではロング・ファイルネームが有効にならない。これの解決方法があれば、相当幸せになれるんだけどなぁ。