2014年6月8日日曜日

RAM PAC2フォーマット

出来上がったMRAMのRAM PAC2をパソピア7に接続して、本体付属のテープにあるフォーマットツールをかけてみた


ちゃんと64KByteと認識して、フォーマットが終了

フォーマット後、FILESでファイルを確認すると問題なし。
しかし、SAVEでファイルを書き込もうとすると、「?DF Error」で終了する
MRAMに何が書き込まれたのか、ダンプしてみた。

フォーマット後の先頭16バイトを、他の容量と比較してみる。
000102030405060708090A0B0C0D0E0F
64KB (?DF Error)AA1F0800048000020708020610000000
32KBAA1F0400048000010404010308000000
16KBAA0F0400044000010404010308000000
8KBAA070400042000010404010308000000
4KBAA030400041000010404010308000000
やはり64KBのみ色々変わっているので、この辺に原因がありそう。。

初代パソピアのフォーマッタから、各アドレスの意味を予測してみる
アドレス変数式/値
00
0x00 :初代パソピア
0xAA :パソピア7
01最大トラック数0x03 :4KB
0x07 :8KB
0x0F :16KB
0x1F :32KB
0x1F :64KB
0x3F :128KB
0x7F :256KB
0x7F :512KB
0x7F :1MB
0x7F :2MB
0x7F :4MB
02セクタ数0x04 :4KB
0x04 :8KB
0x04 :16KB
0x04 :32KB
0x08 :64KB
0x08 :128KB
0x08 :256KB
0x10 :512KB
0x20 :1MB
0x40 :2MB
0x80 :4MB
03両面0固定
04クラスタトラック128/(最大トラック数+1)
※但しセクタ数以下
05クラスタ数クラスタトラック×(最大トラック数+1)
06DIRトラック0固定
07クラスタサイズセクタ数/クラスタトラック
08FAT先頭FAT終了-FAT数+1
09FAT終了セクタ数
0AFAT数0x01:セクター数が1-4の場合
0x02:セクター数が5-8の場合
0x03:セクター数が9以上の場合
0BDISK情報FAT先頭-1
0Cモディファイカウントセクタ数×2

64KBフォーマットの場合、32KB以下に比べてセクタ数が倍になっており、それに応じてFAT情報なとも変わっている様子。

MRAM本体側の問題であることも捨てきれないので、エミュレータとを改造して試してみたところ、実機と同じように?DF Errorになった。
T-BASIC1.0/1.1、T-BASIC7、いずれも同じ結果。

MRAMのRAM PAC2にこのフォーマットを書き込んでおくと、32KBに制限されるがBASICでの読み書きが出来たので、MRAM側は問題なさそう。

32KBのフォーマットは、以下の通り。
アドレス000102030405060708090A0B0C0D0E0F
0000-000FヘッダAA1F0400048000010404010308000000
0010-001F00000000000000000000000000000000
0020-021FディレクトリFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
0220-02FF属性00000000000000000000000000000000
0300-030FFATFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF
0310-037FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
0380-03FF00000000000000000000000000000000
0400-7FFFデータ領域00000000000000000000000000000000

つづく

0 件のコメント:

コメントを投稿