見出し画像

AppleDOSが扱うファイルたち

そもそもなんですが、DOSで必要になる機能とは何でしょう?基本的にはファイル処理です。何らかの規則でデータが並べられたファイルというものに名前をつけ、このファイルの名前を管理し、ファイルに並べられたデータを読み書きする機能がDOSに求められます。

またディスクというメディアは、トラックとセクタという2次元の構造を持つので、好きな場所からアクセスをはじめることができます。ですからファイルに含まれるデータも先頭ではなく好きな場所からアクセスができます(ここがテープとは違うところですね)。

DOSの「中の人のお仕事」としては、ファイルの名前だけではなく、属性と呼ばれる種類であるとか性質を記録したり、ファイルがどの順番でどのセクターに入っているのか、まだデータが書き込まれていない空いているセクターはどれなのかという情報も知っている必要があります。

さて、AppleDOSの話に戻ります。事実上パソコン初のDOSですから、過去の資産のことを考える必要はありません。DOSに必要な機能は何かというのを、極めてシンプルに実装したものになっています。

AppleDOSのクイックガイド(表)
AppleDOSのクイックガイド(裏)

ファイル名は30文字以内のアルファベットで始まる文字列で記号のコンマ”,”と改行文字であるCTRL-Mだけは使えません。なおファイル名に30文字より長い文字列を指定しても、余分な部分が捨てられるだけでエラーになるわけではありません。

複数のドライブを接続することができるので、区別するために、拡張カードが刺さっている拡張スロットの番号。それぞれの拡張カードには2つのドライブを接続できるので、ドライブの番号。これらをファイル名を指定するコマンドと初期化の際には指定します。省略した場合には、最後に指定したそれぞれの番号が使われます。

それからボリューム番号という数字があって、これは初期化の際にフロッピーに固有の番号をつけることにより、アクセスの際にフロッピーを区別するために使用されます。フロッピーを不用意に入れ替えられていないか、目的とするフロッピーなのかを確認することが出来ます。アクセスの際に指定したボリューム番号がフロッピーに書かれているボリューム番号と一致しなければ、エラーが出ます。フロッピーのボリュームをチェックする必要がなければ、アクセスの際にボリューム番号として0を指定します。これでフロッピーのボリューム番号がいくつであってもエラーにはなりません。

またファイルにはロックを掛けることができます。これでファイルに書き込んだりファイル名を変更することができなくなります。

このあたりの機能は形が変わっているものが多いですが、今のOSにも含まれている機能なので、見当はつくと思います。

ところでAppleDOSのファイルには拡張子がありません。ファイルごとにファイルタイプの指定があります。

  • T - テキストファイル

  • B - バイナリファイル

  • I - 整数BASICプログラム

  • A - 10K BASICプログラム

2つのBASICプログラムファイルは、走らせると(“RUN”すると)、自動的にファイルタイプに合わせたBASICインタプリタが起動されます。もちろん無印Appleには10K BASICが組み込まれていないので、(接続されているいずれかのドライブ内の)フロッピーには予め10 BASICのインタプリタをコピーしておく必要があります。

このBASICの自動的な起動でもわかるように、DOSが目指したのは、ディスク固有の機能だけではなく処理の自動化で、フロッピーをドライブに入れて電源をいれるだけで、ゲームが出来るようにしたり、アプリを使えるようにするための仕組みがあります。

まずフロッピーからDOSが起動されると”HELLO”というファイル名を持つプログラムが自動的に実行されます。起動して自動的に実行したいプログラムがあれば、そのプログラムのファイル名を”HELLO”という名前に変更しておけば良いだけです(MS-DOSのAUTOEXEC.BATのようなものです)。

さらにテキストファイルをあたかもキーボードからの入力のように実行することが出来るEXECというコマンドもありました(こちらはMS-DOSでいうところのバッチファイルですね)。もっともコマンドを実行するだけなので、条件判断などが必要であればプログラムを書く必要はありました。

フロッピーにDOSを組み込んで起動可能にする機能(起動可能なフロッピーはマスターディスク、起動できないフロッピーはスレーブディスクと読んでいました)は、実はDOS自身には無くて、そのためのプログラムが用意されていました。確かに、この機能はメモリに置いておく必要はないので、リーズナブルな解決策かもしれません。

さて、具体的なデータの読み書きとランダムアクセスについても説明しておきたかったのですが、これらは次の機会にします。

ヘッダ写真はJPLUSと一緒に手に入れたDISK][。だいぶヨレヨレです。

この記事が気に入ったらサポートをしてみませんか?