****************************************************************************
HMFiler Version 1.31
for PC-E500/1480U シリーズ
Programmed by H.Morita
****************************************************************************
§0:はじめに ============================================================
このプログラムは、おーちゃくな人のためのものです。
[COPY],[NAME],[LOAD(M)],[SET],[CALL]などのBASICのコマンドは「めんどー」 とい
う方にお薦めです。
§1:主な機能 ============================================================
・ファイルの属性変更
・ファイルのコピー
・ファイルの削除
・ファイル名の変更
・ディレクトリのソート
・各種プログラムの実行
・登録したプログラムをワンキーで呼び出す
§2:動作環境 ============================================================
PC-E500/1480U シリーズで動作すると思います(PC-E500 ROM Ver.2のみ動作確認)。
[S1:]に9KB程度の空きメモリ+機械語領域11KBがないと、インストール出来ません。
使用できるドライブは、標準ブロックデバイス、システムスロット、 及びFCSでデ
ィレクトリを得る事ができるドライブです。また、HMFで扱えるファイル数は最大254
です。
以下のプログラムによるドライブは動作確認しました。
・PLINK[*1] Ver 1.02 [L:]
・DELTA[*2] Ver 1.5,2.1 [D:]
・MAPPE[*3] Release 5 [M:]
DS[*4]による階層ディレクトリに対応しています。
(DS Ver.1.1 で確認)
LZ system[*5]がインストールされていれば、LZm によって圧縮された機械語ファ
イルは通常の機械語ファイルと同様に実行、ロードができます。
(LZ system Ver.0.85 / LZm Ver.0.36 で確認)
§3:インストール&起動方法 ===============================================
「HMF」は[S1:]に常駐して動作させるようになっています。
まず、[HMFINST]を用意し、機械語領域を11KB以上確保してください。
例:POKE &BFE03,&1A,&FD,&B,0,&2C,0:CALL &FFFD8
次に、
LOADM "HMFINST":CALL &HBD000
と、やってください。そうすると、
Complete!
と出たら、インストール成功です。
Not enough memory
と出たら、[S1:]の空き容量が足りなくて、インストールできないという事です。
Already exist
なら、すでにHMFがインストールされていることを意味します。
起動方法は、BASICから、
INIT "HMF:[DRIVE]"
と入力します。[DRIVE]はアクセスするドライブ名です。これを省略すると、HMFでア
クセスした最後のドライブになります。
§4:画面構成 ============================================================
起動したら、下図のようなファイル表示画面になります。
[1] ----> Drv S1| HMF .SYS P_D_ 4984
[2] ----> Mk 71| DATA .BAS ____ 354
[3] ----> Fr 85727| TEXT .BAS ____ 20
[4] ----> Attr>____| TOOL . P___
^ ^ ^
[5] [6] [7]
4つのファイル名の内、カレントファイルが反転します。
[1] カレントドライブ
[2] マークされているファイルの本体の合計サイズ
[3] カレントドライブの空き容量(DS でディレクトリを作成しているDRIVEは
正しい空き容量が表示されません)
[4] カレントドライブの属性
[5] マークの有無 ([*]がついているファイルはマークされています)
[6] ファイルの属性
[7] ファイルサイズ or 「」
※属性表示について
[P]rotect: 書き込み禁止
[I]nvisible: 不可視
[D]evice driver: デハイスドライバー
[O]ther driver: その他の常駐プログラム
いずれかの属性が設定されていれば、それぞれの頭文字が表示されます。
上の表示例では、[HMF.SYS]には書き込み禁止属性と、 デバイスドライバー属性が
設定されています。
また、ドライブの属性については書き込み禁止属性しかチェックしていません。
§5:操作方法 ============================================================
(1) カーソルの移動 ---------- [↑/↓] , [SHIFT]+[↑/↓] , [CTRL]+[↑/↓]
[SHIFT]を使うと、1つ前または次のページへ飛びます。
[CTRL]だと、ディレクトリの先頭または最後尾に飛びます。
また、[←/→]を使うと、1つ前または次の列へ飛びます。
(2) ファイルのマーク ----------------- [SPACE] , [C・CE] , [SHIFT]+[C・CE]
[SPACE]でカレントファイルのマークが反転します。
[C・CE]で、全てのマークがクリアされます。
[SHIFT]+[C・CE]で、全てのマークが反転します。
また、ディレクトリはマークできません。
(3) 属性の変更 ----------------------------------------------------- [A]
カレントファイルの属性を変更します。また、マークされているファイル
かあれば、それらをまとめて変更します。その時に画面に出る属性は、一番
はじめにマークされたファイルのものです。
変更したい属性の頭文字を押すと、マークが反転します。
[RETURN]で確定です。
また、[BASIC]を押すと変更せずにファイル表示へ戻ります。
例:
Attr:
MARKFILE(S) ノ ゾクセイノ ヘンコウ
*[P]rotect [D]evice driver
[I]nvisible [O]ther driver
この場合、マークされているファイル全てに書き込み禁止属性が設定され
ます。
(4) ファイルのコピー ----------------------------------------------- [C]
カレントファイルをコピーします。また、マークされたファイルがあれば、
それらをマーク順にコピーします。コピーの間、コピー先のドライブの空き
容量がドライブの属性のところに表示されます。
コピー先の空き容量が十分でない場合、まず、同名ファイルの存在を調べ、
存在したらそのサイズを含めて空き容量を再計算します。それでも十分でな
い時は、エラーになります。
また、コピー先の空き容量が十分空いていてもコピーできない場合があり
ます。これは、システムスロット[S?:] にコピーする場合ファイル本体+ヘ
ッダ34バイトが必要であり、 標準ブロックデバイスへ複数のファイルをコ
ピーする場合もセクタの関係で容量不足になる可能性があるからです。
ここでは、カレントドライブへのコピーは出来ません。また、コピー中に
エラーが出た場合は、そこで中止します。
なお、コピー先に指定できるのは、 FCSでアクセスできるドライブに限ら
れます。
[BASIC]を押すと、コピーせずにファイル表示へ戻ります。
(5) ファイルの削除 ------------------------------------------------- [D]
カレントファイルを削除します。また、マークされたファイルがあればそ
れらをマーク順に削除します。
書き込み禁止属性のファイルとディレクトリは削除できません。
(6) Editorの起動 --------------------------------------------------- [E]
カレントファイルをEditorで編集します。
使用するEditorは、カスタマイズで指定します。 デフォルトは無指定(起
動しない)です。
(7) ファイルの検索表示 --------------------------------------------- [F]
ファイルを検索し、表示します。検索には、ワイルドカードを使用します。
ワイルドカードの展開方法は、以下のようになっています。展開後の「?」
以外のところが一致するものだけを表示します。
例: 展開前 展開後(「_」はスペース)
*.* ????????.???
H*.* H???????.???
H*F.* H???????.???
H?F.* H?F_____.???
HMF.* HMF_____.???
HMF. HMF_____.___
HMF HMF?????.???
ファイルの検索表示を行うと、 ディレクトリの書き込み[W]が使用できな
くなります。また、ディレクトリ内容を変更する可能性のある機能を使用す
ると、検索表示は解除されます。
(8) 機械語FILEのアドレス変更 --------------------------------------- [G]
カレントファイルが機械語ファイルの場合、ロード番地と実行番地の変更
を行います。
番地入力は、大文字で行ってください。[BASIC]を押すと、 キャンセルし
て1つ前に戻ります。
実行番地(Call adr)が FFFFF の時は、実行番地は無指定(ロード時に実行
はしない)になります。
書き込み禁止属性のファイルは変更できません。
この機能は、ファイルの書き換えを行いますので、万が一のために変更す
る前にバックアップを取っておくことをお薦めします。
(9) コマンドの実行 ------------------------------------------------- [H]
プログラムファイルやBASICコマンドを直接入力し、実行します。
プログラムファイルを実行する時は、ドライブを指定すればそのドライブ
のプログラムを、指定していないか指定していてもそのドライブに存在しな
ければ、pathの先頭ドライブから検索していきます。また、 BASICコマンド
を実行する時は、 先頭に「;」を付けてください。pathの設定はカスタマイ
ズで行います。
BASICコマンドを実行するとき、 「HMF」 ではまずテンポラリファイルを
オープンし、そのファイルにコマンドをプログラムとして書き込み、その後
テンポラリファイルを実行させています。そのため、テンポラリファイルを
オープンできなかった時や、 「Direct command error」になるようなBASIC
コマンドは実行できません。テンポラリファイルのデフォルトは [S1:TMP]
です。テンポラリファイルの変更はカスタマイズで行います。
また、この機能は「登録コマンドの実行」のルーチンを借用しているので、
副作用として、プログラムファイルを実行させる場合は登録コマンドのマク
ロが使えてしまいます。
(10) インフォメーション -------------------------------------------- [I]
カレントファイルの種類を表示します。また、カレントファイルが機械語
の時は、ロード番地と実行番地も表示します。
例:
< 画面1>
Info:[HMFINST . ](BIN)
AREA> BD000 - BF5A7
CALL> FFFFF
Hit any key!
最初の行の( )は、そのファイルの種類です。以下のようになっています。
BAS:BASICファイル
DAT:変数ファイル
AER:数式記憶ファイル
RAM:RAMファイル
BIN:機械語ファイル
LZm:LZ で圧縮したファイル
???:その他のファイル
2、3行目は、カレントファイルが機械語ファイルの時のみ表示されます。
何かキーを押すと、ファイル選択画面に戻ります。
(11) カレントドライブの変更 ---------------------------------------- [L]
カレントドライブを変更します。
また、その時に現在のカーソル位置を保存します。 保存は5ドライブまで
で、それ以上になった場合、最後にアクセスしたドライブの情報から切り捨
てます。ただし、Find を使用した場合は保存されません。
何も入力しないか、[BASIC]を押すとファイル表示へ戻ります。
(12) ファイルの移動 ------------------------------------------------ [M]
カレントファイルを指定ドライブへコピーした後、コピー元のファイルを
削除します。マークされているファイルがあれば、それらをマーク順に移動
します。
コピー中にエラーが出ると、そこで中止し、削除は行いません。
(13) プログラムファイルのロード ------------------------------------ [O]
カレントファイルをロードし、BASICに戻ります。
(14) ファイル名の変更 ---------------------------------------------- [R]
カレントファイルのファイル名を変更します。
書き込み禁止属性のファイルは変更できません。
また、ファイル名の先頭にスペースを含ませることができません。
[BASIC]を押すとファイル表示へ戻ります。
(15) ディレクトリのソート -------------------- [INS] , [DEL] , [=] , [S]
ソートの方法は2種類あります。1つは a.自分で並べ換える方法、もう1つ
は、b.コンピュータ側にある条件で並び換えさせる方法です。
a. 自分で並べ換える方法
[INS],[DEL],[=] を使用します。
[DEL]を押すとカレントファイルをディレクトリスタックに取り
出し、 [INS]で最後にとりだしたファイルをカレントファイルの次
に戻せます。 スタックは最大6ファイル分入り、その内容は [=]に
よって見ることができます。 1番が最後にスタックに入れたファイ
ルです。なお、[DEL]で取り込むファイルがマークされている場合、
マークは解除されます。
b. コンピュータにソートさせる方法
コンピュータにソートさせるには、[S]を押します。
まず、4つのキーの中から1つを選択します。
[E]xtention 拡張子
[F]ilename ファイル名
[M]ark マーク順
[S]ize ファイルサイズ
次に、次の2条件のいずれかを選択します。
[U]p 昇順
[D]own 降順
[BASIC]で1つ前に戻ることができます。
ファイル名と拡張子のソートはキャラクター・コードに従い、マーク順で
マークしていないファイルは、全て最後にマークされたものとします。また、
スタックにファイルが入っていてもソートは可能です。
キーが同一のファイルがあった場合、それらの順序は以前の順序を保持し
ます。
「ファイル名の変更」と「ファイルの削除」 を実行した場合、 もしくは
「カレントドライブの変更」やプログラム実行関係の機能を使用しようとし
た場合、ディレクトリはドライブから新たに読み込みます。よって、ソート
結果を保存するには 「ディレクトリの書き込み[W]」を使って記録してくだ
さい。また、 システムスロット[S?:]もソートはできますが書き込みはでき
ません。
(16) ファイルの解凍、展開 ------------------------------------------ [U]
カレントファイルの拡張子が[.LZH]の時は解凍し、 それ以外の時はISHフ
ァイルとみなし、展開します。
解凍及び展開はカレントドライブに行います。
また、解凍および展開に用いるプログラムは、カスタマイズで登録します。
デフォルトは、「LHEX[*6]」,「ISHD[*7]」です。
(17) Viewerの起動 -------------------------------------------------- [V]
Viewerを使ってカレントファイルの内容を表示させます。
使用するViewerは、カスタマイズで指定します。デフォルトは「VIEW[*8]」
です。
(18) ディレクトリの書き込み ---------------------------------------- [W]
現在表示されているディレクトリをディスクに書き込みます。
ファイルの削除の際に出るゴミ(先頭がE5hのディレクトリ)の撤去も同時
に行います。
書き込みの際、マークは全て解除されます。
ディレクトリスタックが空でない場合は書き込みできません。
システムスロット[S?]では使用できません。
(19) プログラムファイルの実行 -------------------------------------- [X]
カレントファイルを実行します。
実行する前に、オプションの入力をします。特になければ、何も入力しな
くていいです。
プログラム終了後、画面左上にカーソルが点滅します。ここで何かキーを
押すと、ファイル表示画面へ戻ります。
BASICプログラムはBTEXT$のファイルにロードするので、 元々はいってい
たプログラムは消えうせます。また、アスキー形式のファイルでも実行可能
です。プログラムにバグがあってエラーが出た場合、「Error!」と表示され
ます。
機械語プログラムは、そのファイルに指定されている番地に読み込みます。
よって、機械語領域が十分でないときは実行されず、エラーが出ます。また、
実行番地がファイルに指定されてなければそのプログラムのロードされた先
頭番地からスタートします。
また、バッチファイル(後述)の実行もできます。
属性が Invisibleのファイルは実行できない事があります。また、 [S?:]
では、Device driver, Other driver のファイルも実行できません。
[BASIC]を押すとファイル表示へ戻ります。
(20) 登録コマンドの表示&実行 --------------------------- [0],[123456789]
[0]で、登録コマンドを表示します。
[123456789]で、それぞれに登録されたコマンドを実行します。
コマンドの実行についての注意は、上の「プログラムの実行」と同じです。
コマンドの登録はカスタマイズで行います。
(21) パワーオフ -------------------------------------------------- [OFF]
[ON]を押せは、パワーオフした時点から動作します。また、ファイル表示
画面で一定時間がすぎると、自動的にパワーオフします。
(22) PLINK,MAPPE の Disconnect ----------------------------------- [log]
BASICの INIT 命令でやるのと同じ動作をします。
カレントドライブが[L:]もしくは[M:]なら、その後に「カレントドライブ
の移動」になります。
(23) 表示列数の切り替え ---------------------------------------- [TITLE]
表示列数を1と2に交互に切り替えます。
2列表示の時は、ファイル名だけの表示になります。
(24) ファイルの格納番地の表示 ------------------------- [◆([MENU]の上)]
カレントドライブが[S?:]の時のみ有効な機能です。
ファイルサイズのところにファイルの格納番地が表示されます。
もう一度押せばサイズ表示に戻ります。
(25) 終了 ------------------------------------------------------ [BASIC]
BASICへ戻ります。
(26) 入力モードでの操作 -------- [←/→] , [BS] , [DEL] , [INS] , [C・CE]
BASIC上での操作と同じです。PFキーも使用できます。
バッファは80文字分ありますが、表示領域は26文字分しかないので、領域
の端で[←/→]を押すとスクロールします。また、「↑」を押すと、 以前に
入力したデータが出ます。
[RETURN]で確定です。
§6:バッチファイル ======================================================
バッチファイルとは、幾つかのコマンドを並べたテキストファイルです。例えば、
以下のようなファイルです。
------ TEST.BAT ------
EDIT D:HMF.CFG
HMFCUST D:
HMFCUST +D:
----------------------
このように、1行に1つのコマンドを書きます。HMF で処理できるバッチファイル
の形は、拡張子が「BAT」でコマンドの終端で改行「$0D+$0A」をしていて、ファイル
の終端が「$1A」である事です。たいていのエディタで編集を行っていれば、 特に意
識しなくても大丈夫だと思います。ただ、コマンドの終端で改行する事を忘れないで
下さい。改行が来る前にファイルの終端が来た場合、その行は実行されません。1行
の桁数は80文字未満です。
また、バッチファイルからバッチファイルを呼び出した場合、呼出側に処理は戻り
ません。つまり、バッチファイルを呼び出した行の次からは無視されます。しかし、
このようなバッチファイルは内部処理的に好ましくないので、できるだけそのような
バッチファイルは作らないようにお願いします。
§7:カスタマイズ ========================================================
「HMF」 では、 9つの登録コマンドと、 SHELLのテンポラリファイル、 使用する
Editor、Viewer、展開・解凍プログラムとpath、およびキー配置をカスタマイズする
ことによってユーザーの自由に指定することができます。
(1) 定義ファイルの記述形式 ---------------------------------------------
定義ファイルは付属のもしくはVersion 1.20以降の「HMF.CFG」 を使用し
てください。 1.20より前の「HMF.CFG」を使う場合は、付属のものを見て、
適当に変更して使ってください。
「HMF.CFG」を見ればわかりますが、前半がコマンド等、 後半がキー配置
のカスタマイズになっています。
a. コマンド等の記述方法
「HMF.CFG」に記述されている順序でやってください。先頭が「;」
の行は無視されます。
Viewerや登録コマンドなどのプログラム名の前にドライブ名を付
けない場合は、pathの先頭ドライブから順に検索して実行します。
pathは複数指定する場合、ドライブ名を連続して記述します。
例: S1: <=pathは[S1:]になる
S1:E: <=pathは[S1:],[E:]になる
※登録コマンドの記述方法について
コマンドの後ろにオプションも記述できます。その場合は、ファ
イル名との間にスペースを開けておいてください。全部で25文字以
内です。それ以上は無視します。
また、オプションには、以下のマクロか使えます。
$F カーソル位置のファイル名に展開します。ただ
し、そのドライブにファイルがない場合、このマ
クロは無視されます。
$D カレントドライブを展開します。
$K 登録プログラム終了後、一時停止しないでファ
イル選択画面へ戻ります。
$R 登録コマンドの起動時にオプションの入力をし
ません。
$T マークされたファイル名をできるだけオプショ
ンに並べます。並べきれなかったファイルは無視
されます。マークされたファイルが無い時はカー
ソル位置のファイル名になります。
$A マークされたファイルをオプションに並べます。
「$T」との違いは、すべてのマークファイルを何
回かに分けて実行します。実際の処理方法として
は、バッチファイルに出力し、それを実行する形
になります。ファイル名は、テンポラリファイル
と同じになります。また、「$A」以降のオプショ
ンは無視されます。 このオプションを使うと、
「$R」と同じように、入力を行いません。
上記以外の「$?」の形のオプションは無視されます。また、オプ
ションとして「$」を指定したい場合は「$$」としてください。
なお、ドライブ名とマクロは必ず大文字にしてください。また、
マクロが展開されて80文字以上になった場合、そのマクロはカット
されます。
例:カーソルが[HMF.DOC]で、カレントドライブか[L:]とする。
「$D」 = 「L:」
「$F」 = 「HMF.DOC」
「$D$F」= 「L:HMF.DOC」
b. キー配置のカスタマイズ
キー配置では、行の先頭から4文字までしか認識しません。 それ
以降は全て無視します。また、先頭が「;」の行も無視します。
順番は、付属の「HMF.CFG」の順にしてください。
キーデータのほとんどは、キーボードの上に書かれた文字と同じ
様になっています。その前に、「!」を付ければ「SHIFT」と同時に
押すキーを登録することになり、「^」を付ければ「CTRL」 を同時
に押すキーを登録することになります。 「SHIFT」と「CTRL」を同
時に押す判定はできません。
以下に、カスタマイズ用キーデータを列挙します。ほとんどは、
どれがどのキーか想像つくでしょう。全て大文字のみです。
0 1 2 3 4 5 6 7 8 9
+/- . / * + = DEL BS INS
A B C D E F G H I J
K L M N O P Q R S T
U V W X Y Z
SIN COS TAN FSE CCE HEX DEG LN LOG 1/X
TTL EXP YX ROT X2 ( )
MUP MNU BAS ON OFF カナ SPC UP DWN <-
-> , ; STO RCL RET
PF1 PF2 PF3 PF4 PF5
ROTは平方根、MUPは[MENU]の上のキー、 TTLは[C・CE]の下のキー
です。
「^OFF」は使えません。(オートパワーオフ用)
例:
!Q → SHIFT+Q
^BAS → CTRL+BASIC
!^A → 不許可!
(2) カスタマイズの方法 -------------------------------------------------
まず、[HMF.CFG]を準備します。
そして機械語領域を7KB以上確保して、[HMFCUST]を用意し、
LOADM"HMFCUST":CALL &HBE000["[+]DRIVE]
と入力します。DRIVE の指定はHMF起動時と同様です。
また、[HMFINST]を直接書き換えることもできます。書き換えると、 次回
のインストール時にそのカスタマイズが反映されています。
例:
LOADM"HMFCUST":CALL &HBE000
カレントドライブから[HMF.CFG]を読み込み、カスタマイズする。
LOADM"HMFCUST":CALL &HBE000"F:
[F:]から[HMF.CFG]を読み込み、カスタマイズする。
LOADM"HMFCUST":CALL &HBE000"+
カレントドライブから[HMF.CFG]を読み込み、 カレントドライブの
[HMFINST]を直接書き換える
LOADM"HMFCUST":CALL &HBE000"+F:
[F:]から[HMF.CFG]を読み込み、[F:]にある[HMFINST]を直接書き換
える
Complete!と表示されれば成功です。
Can't customize と表示された場合、原因として、
1) [S1:]に[HMF.SYS]が存在しない。
2) 指定ドライブに[HMF.CFG]、もしくは[HMFINST]がない。
3) [HMF.CFG]にエラーがある。
4) [HMF.SYS]もしくは[HMFINST]が旧バージョンである。
5) [HMF.SYS]もしくは[HMFINST]が破壊されている。
が考えられます。
§8:[HMF.SYS]の削除方法 =================================================
まず、[ON]+[RESET]をし、その後、以下のようにしてください。
SET "S1:HMF.SYS"," ":KILL "HMF.SYS"
§9:使用上の注意 ========================================================
・間違っても「HMF」実行中に[HMF.SYS]を削除しないでください。確実に暴走しま
す。
・ラムファイル[E:]を使う場合は、インストールする前に準備しておくか、
「EXTSLOT[*9]」を使うといいと思います。「EXTSLOT」 なしでHMFインストール
後にラムファイル[E:]を新たに作ろうとすると、 [HMF.SYS]のIOCSヘッダの位置
がずれ、暴走します。
・インストール後に、BASICで「MEM$」 を変更すると格納番地がずれる場合があり
ます。注意してください。
・機械語領域を変更するときは使用するドライブに十分な領域を確保してください。
領域が十分でない場合、そのドライブにはアクセスできません。標準ブロックデ
バイスでの必要最低限の機械語領域の大きさは、 (最大収容ファイル数)*32 +
304 Bytes です(多分(^^;)。
INIT確保容量 最大収容ファイル数
[E:],[F:] 2K 5
3K 8
5K 16
9K 24
13K 32
17K 40
29K以上 64
DELTA[D:] ------ 64 (Ver1.x),72 (Ver2.x,3.x)
PLINK[L:] ------ 128
MAPPE[M:] ------ 196
標準ブロックデバイス以外の場合は、 全てのディレクトリを読み込めなかった場
合、「Out of memory」とエラーを出してBASICに戻ります。
・登録コマンドで、マクロ「$F」を使うと、ファイル名の間のスペースがつめられ
ます。具体的には下のようになります。よって、ファイル名の間には不用意にス
ペースを入れないでください。
例:[HMF .SYS] -> [HMF.SYS]
[H M FS.Y S] -> [HMFS.YS]
§10:プログラムについて ================================================
このプログラムは、たいしたことはやってません。ほとんど、 IOCSやFCSに頼り切
ってます。そのわりにはサイズがでかくなってますが(^_^;)。
&HBFE20以降から、300byte程ワークエリアに使用しています。そこに何か置いてあ
る人は注意してください。内部ラムもつかってますが、「プログラムの実行」の時に
は「HMF.SYS」の中に退避しています。両方とも、「プログラムの実行」 で使用する
プログラムの中では自由につかっても平気です。
HMFはデバイスドライバとしてインストールされます。仕様は以下の通りです。
ドライブ名 : HMF:
デバイス番号 : 11以降
ドライブ番号 : 0
デバイス属性 : $A1
サポートするコマンド : $3F のみ
HMF内部の処理中に、IOCSまたはFCSから戻って来た時にLowBatteryになっていた場
合、強制にBASICに戻ります。LowBatteryの時は$BFCBEのBit6が1になるので、検出に
はこれを使用しました。
§11:バージョンアップの履歴 ============================================
:
Ver.0.43 92.08.30 ・初公開
0.44 92.08.31 ・機械語プログラムを読み切っていなかったバグを修正
0.45 92.09.03 ・CopyやDeleteでのカーソル移動がおかしいのを修正など
0.46 92.09.07 ・実行番地表示、オプション引渡しルーチンを修正
0.50 92.09.12 ・Copyの改良と空き容量の表示、sHell,Edit,Viewの追加
・機械語領域が十分なくても暴走しないようにした
・'wait'の解除、 ディレクトリ関係のバグの撤去
0.60 92.09.25 ・[HMFCUST.BAS],[HMFINST]の改良、コマンド表示の
bugfix
・PFキーや カナ やアルファベットの小文字を入力可能にし
た。
・CopyやDeleteでの実行順をマーク順にした。
・ドライブ名の入力で最後に「:」 がなくてもいいように
した。
・path,格納番地の表示、Unpackの追加
0.70 92.11.02 ・カスタマイズ方法の変更,[HMFCHECK]の追加
・Copyで出力先に[COM:]もできるようにした。
・マークファイルの合計サイズを表示させるようにした。
・機械語ファイルのロード番地と実行番地を変更可能にし
た
・キー配置の一部変更,Copyの改良
0.71 92.11.03 ・[HMFCUST]のバグを修正
・Write dirの追加
0.80 92.11.11 ・ディレクトリ ソート機能を追加
・[HMF.CFG]を付属
・chanGe adrのバグを消去
0.81 92.11.22 ・execでYレジスタの帰り値を修正。
・PLINKのdisconnect方法を変更
0.82 92.11.23 ・HMF終了後画面をクリアするようにした
・バージョン番号を正しくした(?)
0.83 92.11.29 ・ソートを改良
・入力モードにヒストリーをつけた
0.84 92.12.03 ・ソートの改良
・Renameの際にHMFからアクセスできなくなるようなファ
イル名をチェックするようにした
0.85 92.12.06 ・JFP (C)N.Kon との相性が悪かったのを直した
0.91 92.12.22 ・MAPPE Release 3 に対応
・キーカスタマイズを可能にし、それに伴う HMFCUST の
変更
・起動方法の変更
・登録コマンドをファイルがないドライブでも実行可能に
した
0.92 93.01.05 ・[←/→]の改良、IOCS ヘッダの位置を変更
・DS に対応
・のファイルを消せないようにした
1.00 93.02.20 ・poweroffルーチンを改善
・キーカスタマイズに、 [PF?](+SHIFTも)を使えるように
した
・Info,Moveを追加
・[HMFCUST]で[HMFINST]をカスタマイズできるようにした
・LZ system に対応
・sHellで[S?:]にあるプログラムを実行するときに、オプ
ションを付けると実行できなかったバグを修正。
1.01 93.03.02 ・docの記述ミスを訂正
・Infoで機械語ファイルをMAC->BINに変更
・Copyのキャンセル時の処理を変更
・BPの設定を強引に高めに設定するようにして、プログラ
ムで内部RAMをより多く使えるようにした。
1.10 93.03.12 ・loadを追加
・BASICへ戻ったときに、Syntax error が出るのを修正
・ほとんどの callf を call にした
1.11 93.03.26 ・PLINK使用時に、 L:にコピーすると最後のファイルのサ
イズが0と表示される不都合に対処した。
1.20 93.05.30 ・Findの追加
・$83とSystemSlot以外にもアクセスできるようにした
・ドライブ変更時、カーソル位置を記憶するようにした
・LCD OFF後にドライブの属性を再チェック
・INIT"SCRN:"をはずした(漢字仕様はそのまま)
・画面消去時に、カーソル位置を HOME にするようにした
・マクロ$Fの仕様変更
・1.11での対処ルーチンをはずした
1.21 93.06.04 ・が表示されなくなったのを修正
・FCS をつかったディレクトリ所得ルーチンを修正
1.22 93.08.01 ・マクロ$Fで拡張子がないときに「.」がないようにした
・の後ろにごみが付く事があったのを修正
・copy元のopen時にa=1でerrorがでたらa=$81でretryする
ようにした
・インストール時に、フォントの初期化をしないようにし
た。(漢字仕様はそのまま)
・終了時にもカーソル位置を記憶するようにした
1.23 93.08.27 ・ファイル名文字列作成ルーチンのバグを撤去
・ファイルカーソルの動きを高速化
・インストール時にバージョンを表示するようにした
・属性変更時に、日付と時間も返すようにした
・chanGe adr で、[basic]でキャンセルできるようにした
・「ファイルガアリマセン」に mark ができないようにし
た
1.24 93.11.20 ・多行表示に対応
・空き容量の計算の修正
1.30 94.01.06 ・マクロ$T,$Aの追加と入力バッファを80に増加
・バッチファイルを実行できるようにした
・copyで空き容量が足りなかった時、同名ファイルがあれ
ばその分も計算に加えるようにした
・LowBatteryの検出
・カスタマイザの変更
1.31 94.01.23 ・copyの改良ができていなかったのを修正
§12:著作権など ========================================================
このプログラム及びドキュメントの著作権は 森田久也 が保有します。
運用、転載、配布などに関しては、以下の通りです。
・個人的に改変するのは自由ですが、転載配布するときには、すべてのファイルを改
変せずにまとめて転載配布してください。
・配布する際は、実費以外は無償で行ってください。
・作者の著作権を侵害する恐れのあるBBSなどへの転載は禁止します。
・転載するときは、事前に連絡してください。
・バージョンアップされたときは、できるだけ最新版を配布してください。
・このプログラムやドキュメントを使用したことによって生じたいかなる損害にも作
者は免責とさせていただきます。
・このプログラムやドキュメントにミスがあっても、作者はそれを訂正する義務を負
わないものとします。
§13:参考にしたもの ====================================================
このプログラム及びドキュメントを作るのに以下のものを参考にさせていただきま
した。(敬称略)
・EXTKYBD あさそら
・FD 出射 厚
・FE こぺる
・FI こぺる
・INFO ◇TOMCAT◇
・LZ system こぺる
・PC-E500/1480U活用研究 工学社
・SLOT2 みずほ
・TRED Ryu
・VIEW あさそら
§14:ドキュメント中に出てきたプログラムについて ========================
[*1] PLINK
近成人氏によるフリーソフトウェア。 MS-DOSマシンなどをファ
イルサーバーとして使うためのプログラム。
[*2] DELTA
きゃぱ氏によるフリーソフトウェア。$10000-$3FFFFに増設され
たメモリをRAMDISKとしての利用を可能にする(Ver.1.5)。
[*3] MAPPE
きゃぱ氏によるフリーソフトウェア。PC-9801の2HDに、 ダイレ
クトアクセスしてしまうプログラム。
[*4] DS
きゃぱ氏によるフリーソフトウェア。PC-E500のブロックデバイ
スで階層ディレクトリを実現する。
[*5] LZ system
こぺる氏によるフリーソフトウェア。ファイル圧縮ツール。
[*6] LHEX
加古英児氏によるフリーソフトウェア。「LHarc(吉崎栄泰氏作)」
で凍結されたファイルをE500上で解凍するプログラム。
[*7] ISHD
加古英児氏によるフリーソフトウェア。「ISH(石塚匡哉氏作)」
でコンバートされたファイルをE500上で展開するプログラム。
[*8] VIEW
あさそら氏によるフリーソフトウェア。 ファイル閲覧プログラ
ム。
[*9] EXTSLOT
加古英児氏によるフリーソフトウェア。 メモリブロックIOCSの
うち、 「メモリブロックの作成2(48h)」というIOCSを拡張し、
機能を改善する。
§15:最後に ============================================================
このプログラムは、近 成人氏のXASMを、またこのDOCは 村上 真雄氏のXTRを使っ
て作成しました。両氏に感謝します。
今までHMFに関してご意見、ご感想などくださった方々に感謝します。また、HMFの
暴走でRAMをクリアされてしまった方(^^;)、ごめんなさい m(__)m
意見、感想、バグ、動かないプログラムとかあったら教えてください。バグにはで
きるだけ対処します。また、このドキュメントを読んでもでわからないことがあった
ら、何なりとどうぞ。不備な点が山ほどあると思いますので(^_^;)。
ASCII NET pcs50997
NIFTY-Serve JAC01304
ポケット通信 #1827 HiM