アプリ活用 ファイラ編



ファイラについてお話しますが、私にとってファイラとは
 ・MS-DOS時代・・・エコロジー 〜 GF
 ・Windows以降・・・GF for Win 〜 まめファイル
という感じです。ファイラも、市販アプリからフリーウェアまで、いろいろなものが存在し、 ユーザーごとに好みもあることでしょう。私個人の主観+経歴としてお読み下さい。


CUIの弱点とファイラのありがたみ


「ファイラ」と言うと、Windowsユーザーにはエクスプローラーのようなもの、と説明すればイメージしやすいかも知れません。 このファイラの歴史は意外に古く、MS-DOS 2.11の時代には、すでに「エコロジー」というソフトが存在していました。 当時PC-9801を使っていた人なら、「エコロジー」を知らないという人は少なかったと思います。 フリーソフトを含め、類似のアプリケーションもいくつか存在しましたが、私は比較的早い段階から「エコロジー」を使い始め、 MS-DOS 3.3の時代には、ほぼ「エコロジー」一辺倒で運用していました。 正確に言えば、「エコロジーU」です。私が最初に手に入れたのは「エコロジーU Ver.1.11」でした。 なお、「エコロジーU」の原型とも言える「EC98」も所有しています。 これは後年、おそらくジャンクショップで偶然見つけて購入したもので、 入手時点ですでに実用価値はなく、ほぼ歴史的資料として保管しているものです。
エコロジーのバージョンごとの変化を、見た目だけですが以下に示します。
エコロジー98 エコロジーU エコロジーV

「エコロジーU」を起動すると、画面左側にカレントドライブのディレクトリ構造がツリー形式で表示され、 上下キーでディレクトリを移動すると、画面右側にそのディレクトリ内のファイル一覧が表示されます。 MS-DOSはCUI(キャラクタ・ユーザー・インターフェース)ベースのOSであり、 基本的な操作はすべてコマンド入力で行う必要がありました。 たとえば、ファイル一覧を見るには DIR、ディレクトリを移動するには CD XXXX、 ファイルの中身を見るには TYPE XXXXXXXX.XXX など、 一つ一つコマンドを打ち込む必要があります。 しかし、「エコロジーU」を使えば、矢印キー、リターンキー、ESCキー、 そして操作名の頭文字(例:COPYなら「C」キー)程度の操作で、大抵の作業が完結します。 まさに「キーボードのみで操作するエクスプローラー」と言える存在でした。

現代ではコピー&ペーストを「コピペ」と呼び、誰もが当たり前のように使っていますが、 当時のコンソール環境にはそのような機能は存在せず、コマンドやファイル名・ディレクトリ名は 毎回手入力するしかありませんでした。 ヒストリー機能が使えるようになってからは、過去のコマンドを再利用できるようになりましたが、 入力ミスが頻発したり、ファイル名の手入力に手間取ったりと、操作は非常に煩雑でした。

特に、他人のPCを借りて作業しなければならない状況では様々な苦労を経験しました。 たとえば、ファイル名に漢字が含まれているのに、FEP(Front-End Processor:日本語入力システム)が入っていない、 といったこともありました。 そうした事態に備えて、私は「緊急ディスク」を常備しており、その中には必ず「エコロジーU」が入っていました。 いざというとき、このファイラの存在がどれだけありがたかったことでしょう。

MS-DOSを本格的に使いこなしたいなら、基本的なコマンドは習得しておくべきですが、 日常的な操作には、このような便利ツールを使うことで、作業効率が大幅に向上します。



エコロジーUの付随機能


ファイラとしての基本機能には直接関係しませんが、エコロジーUにはいくつかの「付随機能」も搭載されており、 それらがまた面白く、当時の私にとっては魅力の一つでもありました。 特に印象に残っているのが、「ディスク編集」や「FAT編集」といった、非常にマニアックな機能です。 購入当初は、こういった機能があることすら知らずに使い始めたのですが、 その後、他のファイラが登場し始めた頃になって、 「基本操作だけなら他のツールでもできるけど、こういうディープな操作はエコロジーUでないと無理だよな」 と、密かに優越感を持っていたのを覚えています。 とはいえ、実際にそれらの機能を頻繁に使いこなしていたかというと、正直なところそうでもありません。 ただ、こうした機能に触れたことが、パソコンを「より深く理解する」きっかけになったのは確かです。

「FAT編集なんて、本当に使うことあるの?」と、今の感覚では思われるかもしれません。 しかし、これは当時の記憶媒体が主にフロッピーディスクだったことが大きく関係しています。 フロッピーは非常に繊細で、書き込み時にエラーが発生したり、保管中にホコリ・磁気・カビなどで データが破損することが日常茶飯事でした。 破損した箇所がデータ領域であれば、該当ファイルだけの問題で済みますが(それでも痛い時はあります)、 もしFAT(File Allocation Table)部分が壊れてしまうと、最悪ディスク全体が読み込めなくなります。

このリスクに備えて、FATは通常2系統が用意されており、片方が壊れてももう一方を使って修復可能という設計になっています。 「なっています」という表現だと他人事に聞こえますが、実際私はFAT破損に遭遇したことはなく、 仮に起きても、当時の私に修復できたかどうかは正直疑問です。

とはいえ、「FATを手動で編集できるファイラ」を持っているということが、 当時の自分にとっては安心感や満足感の象徴でした。 実用性というよりも、「いざという時に役立つかもしれない」という保険のような存在だったのです。


もう一つ、遊び心をくすぐられた機能が「ベンチマーク」です。 これで自分のマシンの性能を数値化し、他と比べることができるのですが、 正直なところ、スコアの差を競うことそのものが楽しかったという記憶があります。

Neko Project 21/Wのようなエミュレータ環境では、少なくともCPUは80486相当以上が前提になります。 そのため、当時のCPU判定機能(80286、80386など)にはもはや実用的な意味はありません。 それでも、処理速度が「80286比で何倍」という表示を見るのは面白く、 最新バージョンで最速に設定すると200倍とかいう数値が出たりします。 「俺のは1.3倍」「こっちは1.5倍!」なんて小競り合いも起きましたが、 今振り返ると、小学生が小遣いの金額で友人と張り合っていたような、微笑ましいやり取りでした。


エミュレータ上でのCPU速度設定については、次のような3つの目的で使い分けると良いと思います。
@できるだけ速く
 ソフト・ハード問わず、処理速度の向上は常に追求されてきたもので、特に問題が起きない限りは「速ければ速いほど良い」です。
A実機に近づける
 特にゲームなど、当時の挙動やタイミングに依存するソフトでは、処理速度を実機相当に落とすことで、より正確な動作を再現できます。
Bわざと遅くする
 これはごく稀なケースですが、たとえば画面描画のタイミングを詳細に分析したい、
 あるいは決定的な瞬間をスクリーンショットに収めたい場合、意図的に遅延させて処理を「見える化」することがあります。

このように、速度設定一つとっても、用途に応じた工夫があるというのも、 PC-98エミュレータの奥深い楽しみ方の一つだと思います。 動画再生でも等速が基本ですが、時にはスロー再生や早送りを使うように、 エミュレータのCPU速度も「使い分け」が大切です。


FDの記憶〜ファイラ派閥戦争〜


「フリーソフト」という言葉が、まだ一般には十分浸透していなかった時代、 そんな中で一世を風靡したのが、ファイル管理ツール「FD」でした。 当時、私はパソコン通信を利用していなかったものの、その存在はよく知られており、 実際に職場の共有PCなどにFDがインストールされているものも存在したため、使用する機会もありました。 私個人用のPCには「エコロジーU」を入れていましたが、FDを使ってみると、 正直なところ「これでも十分だな」と感じることもありました。 同じように感じた人は多かったようで、「全日本ファイラにお金をかけない連盟」なる勢力が拡大していくのも納得です。
(※このネタが分からない方は、別稿「エディタ編」をご参照ください)

FD最大の魅力は、何と言ってもその「軽さと高速動作」でした。 そのスピードの理由は、主に以下の2点に集約されます。
 ・アセンブラで記述されていること
 ・ディレクトリのツリー表示を行わないこと
アセンブラで開発すれば、実行ファイルは非常にコンパクトになり、処理も速くなります。 その分、開発者には高度な技術力と相当な労力が求められますが、 それを実現した出射 厚(いでい あつし)氏には、ただただ敬意を表するばかりです。

一方、エコロジーUのようにツリー表示を行うファイラは、起動時にドライブ全体をスキャンする必要があり、 この処理が重くなりがちです。ディスク容量が増えるほどその影響は顕著になり、 FDのようにあえてツリー表示を省いたファイラが好まれるようになった背景も理解できます。

ツリー表示機能を実装するには、単純に画面にディレクトリ構造を描くだけでなく、
 ・ドライブ全体のディレクトリを再帰的に読み込む
 ・メモリ上に動的な文字列配列を確保し管理する
 ・ディレクトリ作成・削除に応じてリストを更新する
といった複雑な処理が必要です。これはC言語で記述しても決して容易ではなく、 メモリ制約の厳しいDOS環境ではなおさら大変な作業でした。

FDでは、ファイルとディレクトリを区別なく一覧表示し、 選択した項目がディレクトリであればその階層へ移動、ファイルであれば関連操作を行う、という方式が採られています。 このスタイルは、MIFESのファイル選択メニューなどでもよく見られました。

この方式は「考え抜かれて作られたUI」というより、 DOSのファイルシステム構造に自然に沿った設計といえるでしょう。 具体的には、C言語の findfirst() や findnext() のような関数で、 現在のディレクトリ内だけを読み取ればよく、階層の深さに関係なく非常に高速な表示が可能です。 これらはDOSのINT 21hファンクションを使っており、アセンブラでも問題なく実装できます。

「マニアックな機能なんか要らない、速くて安ければそれでいい」 そんな「某牛丼屋」のような哲学を体現したのがFDでした。 そして、それに共感するユーザー層は確実に増えていきました。 フリーソフト界隈でも、次第に多種多様なファイラが登場し、 「全日本ファイラにお金をかけない連盟」の勢力争いは熾烈を極めていたように思います。
定番「FD」 2画面が魅力の「FS」 よく見かけた「FILMTN」 NEWTON98(市販)
私はと言えば、完全に「エコロジーU派」で、他のファイラにはあまり目もくれないオブザーバーでしたが。



「エコジロー」って何?


MS-DOS 5.0にアップデートしたとき、突然事件が起きました。 エコロジーUを起動しようとすると、画面にこう表示されるのです。
「Incorrect DOS version」
つまり、エコロジーUが起動しません。 私が使っていたのは Ver.1.24 でしたが、比較的早い段階で MS-DOS 5.0 に対応した Ver.1.32 がリリースされ、 それにバージョンアップすることで問題は解決しました。

ところが、MS-DOS 6.2 に上げたとき、再び「事件」は起きます。 今度はこんなメッセージが
「DOSのバージョンが違います」
メッセージが英語から日本語に変わりましたが、そんなことはどうでもよく、 問題はまたしても起動できないということです。

この時期、MICRO DATA社 は「エコロジーU」の後継として「エコロジーV」をリリースしており、 それは MS-DOS 6.2 にも対応していました。 しかし、エコロジーVは見た目や操作性が大きく変わっており、 長年慣れ親しんだUとは別物のように感じられたのです。 そのため、私はすぐにはバージョンアップに踏み切れませんでした。


こんな時に、ちょっとしたテクニックが役に立ちます。 MS-DOSアプリではよくある話ですが、起動時にDOSのバージョンを確認し、 想定外だと強制終了するという処理を行っているものがあり、エコロジーもそのひとつです。 アセンブラの知識があるユーザーは、無理矢理「そのチェック部分を無効化」することができます。

たとえば、EC.COM の実行ファイルを逆アセンブルすると、 バージョンチェックに相当する処理がわかります。 そこをパッチして書き換えることで、チェックをスキップさせてしまうのです。
具体的な例を見てみましょう。 EC.COMをバイナリエディタで見ると、こんな感じの部分があります。

これを逆アセンブルすると、上記の青い部分は、下記の71〜80行目となります。

75〜80行目 : バージョンが違うと表示してプログラムを強制終了する処理
71〜72行目 : MS-DOSのバージョンと2.11を比べ、それより小さければ上記の強制終了処理へ
73〜74行目 : MS-DOSのバージョンと5.XXを比べ、それより大きくなければ強制終了の次へ

つまり、オリジナルのプログラムは、2.11〜5.XXでないなら起動しないようになっています。 なので、「0B 02」を「00 00」に、「99 05」を「FF FF」に書き換えてしまえば、 どんなバージョンでもこのチェック処理で強制終了することはなくなります。 なお、エコロジーUでは EC.COM と EC.EXE の両方がありますので、 両方に同様の処理を施す必要があります。

オリジナルを改造する場合は、「これは改造版だよ」と自分でわかるようにしておかないと、何か起きた時に収集がつかなくなります。 バージョン情報に目印を入れるのは定番の手法で、よく見られたのが、バージョン番号の末尾に「E」を付けるというものです。 たとえば Ver.1.32 → Ver.1.32E という具合にです。 「E」はおそらく「Edited(編集済み)」の意味でしょう。 もちろん、バージョン番号の末尾にアルファベットを順番に付けているソフトもあったため、 完全な安全策とは言えませんが、そんな細かいことはここでは割愛します。

私はというと、ちょっとした遊び心で「エコロジー」という表記を「エコジロー」に変えていました。 ある日、私が真剣に仕事していた最中、それに気づいた同僚が 「太田さん、何遊んでるんですか〜(笑)」と声をかけてきたことがありました。 今となっては、それも懐かしい思い出のひとつです。 当時のPCユーザーならではの「いたずらと工夫」が混じり合った時代でした。

ちなみに、この起動時のバージョンチェックは「顔パス」となったエコジローですが、 元のバージョンで未対応のドライブにアクセスしようとすると
 ・FATの大きさが64Kバイト以上です
 ・ネットワークドライブにはアクセスできません
などと言って、結局使えません。

今後はエコロジーUでは厳しい、という判断になり、次期ファイラの模索を始めます。 それからしばらくしてWindows時代に突入していきますが、それは次の章でお話します。



GFの登場、そしてWindows時代に


前述の通り、「エコロジーU」から「エコロジーV」への移行は、操作性や画面デザインの大きな変化があり、 正直なところ、あまり積極的に使う気にはなれませんでした。

そんな折に登場したのが、「GF」というファイラです。 軽快な動作が魅力で、基本的なファイル操作はほとんどGFで済ませるようになりました。 エコロジーVが必要になるのは、より特殊な機能を使いたいときだけだったと記憶しています。

Windows 3.1 では、OS標準で「ファイルマネージャー」が搭載されましたが、 正直なところ、機能も操作性もそれほど優れているとは言えず、使い勝手はいまひとつでした。 このため、私は「GF」のWindows版(GF/Win)を使っていました。
MS-DOS時代には、数々の有用アプリをリリースしてきたMICRO DATA社は、 Windows時代になると、すっかり影を潜めました。エコロジーのWindows版はなかったと記憶しています。
また、「D-Console」というアプリも登場しましたが、 特に目立った利点があるわけでもなかったため、GFの牙城を崩すことはできませんでした。 もっと評価されてもいいアプリですが、Windows 3.1を使わなくなってから知ったため、 ほとんど使っていないのが残念です。仮想環境ではメインのファイラにしたいと思います。
GF GF for Windows D-Console

Windows 95 になると、いよいよ OS標準で「エクスプローラ(Explorer)」が搭載されます。 GFもこの時期にバージョンアップを重ねてはいましたが、 エクスプローラでほとんどの操作が可能になったことで、 サードパーティ製のファイラは次第に姿を消していきました。

実際、私自身も別途ファイラを用意しない日常が当たり前になり、 知らぬ間に「全日本ファイラにお金をかけない連盟」の一員になっていたようです。

そんな私が最後に気に入って使っているファイラがあります。それが、フリーソフトの「まめファイル」です。 私の手元にある最古のバージョンは、2003年の Ver.3.36。 この頃から使い始め、最終バージョンである2012年の Ver.6.52まで、長く愛用しています。 驚くべきことに、このまめファイルは Windows 11 でも問題なく動作しています。 とはいえ、後継の「ASR」にその座を譲って開発は終了していますので、いつか動かなくなる日が来るのかもしれません。 また別のアプリを探すのか、エクスプローラのみを使っていくのか、選択を迫られることになりそうです。

エディタは今でも多種多様な選択肢がありますが、ファイラについては、 OS標準アプリで十分と感じる人が大多数になっているのでしょう。 こう考えると、「メモ帳」よりも「エクスプローラ」の方が完成度が高い標準アプリといえるかも知れません。



戻る