[リストへもどる]

一括表示

▼ 8MBのSRAMカード - としき@家主 2005/08/03 00:07 No.418
  ┗Re: 8MBのSRAMカード - としき@家主 2005/08/03 12:39 No.420
   ┣Re^2: 8MBのSRAMカード - 酸化 金 2005/08/04 00:50 No.421
   ┃┗Re^3: 8MBのSRAMカード - としき@家主 2005/08/04 08:43 No.422
   ┗Re^2: 8MBのSRAMカード - としき@家主 2005/08/08 16:01 No.435
    ┗Re^3: 8MBのSRAMカード - konno 2005/08/10 01:34 No.437
     ┗Re^4: SRAMカードのパラメータ書き換え - としき@家主 2005/08/10 11:37 No.438
      ┗Re^5: SRAMカードのパラメータ書き換え - konno 2005/08/11 01:23 No.439
       ┗Re^6: SRAMカードのパラメータ書き換え - としき@家主 2005/08/11 04:06 No.440
        ┣Re^7: SRAMカードのパラメータ書き換え - としき@家主 2005/08/11 12:14 No.441
        ┃┗Re^8: SRAMカードのパラメータ書き換え - konno 2005/08/12 00:49 No.443
        ┗Re^7: SRAMカードのパラメータ書き換え - konno 2005/08/12 00:38 No.442
         ┗Re^8: SRAMカードのパラメータ書き換え - としき@家主 2005/08/12 01:49 No.444
          ┗Re^9: SRAMカードのパラメータ書き換え - konno 2005/08/13 02:53 No.445
           ┗Re^10: SRAMカードのパラメータ書き換え - としき@家主 2005/08/13 12:04 No.446
            ┣Re^11: SRAMカードのパラメータ書き換え - konno 2005/08/14 00:50 No.448
            ┃┗Re^12: SRAMカードのパラメータ書き換え - としき@家主 2005/08/14 08:44 No.449
            ┗Re^11: SRAMカードのパラメータ書き換えツール公開 - としき@家主 2005/08/25 22:30 No.454
             ┣Re^12: SRAMカードのパラメータ書き換えツール公開 - konno 2005/08/29 00:43 No.456
             ┃┗Re^13: ドキュメントの書き方 - としき@家主 2005/08/29 20:24 No.457
             ┗EXMCの動作報告 - konno 2005/09/12 02:47 No.461
              ┗Re: EXMCの動作報告 - としき@家主 2005/09/12 14:12 No.462
               ┗Re^2: EXMCの動作報告 - konno 2005/09/12 23:51 No.463
タイトル8MBのSRAMカード
記事No418
投稿日: 2005/08/03(Wed) 00:07
投稿者としき@家主
参照先http://www.hinocatv.ne.jp/~toshiki/
標記について、いろいろといじってみました。
まず、いきなりポケ3のBスロットに入れてみましたが、あえなくハングアップ。
と思ったら、裏表逆に刺さっているよ。おいおい、普通、コネクタ部分の形状が
工夫してあって、絶対に裏返しではささらないようになっているはずなんだけど。
不良品なのかカードの角の部分が欠けていて、ささってしまうのはまずいなぁ。

で、まぁ、さしなおしてからフォーマット開始。・・・が、失敗。
フォーマットを開始して数秒してから「メモリカードにエラーが発生しました」
というつれないメッセージ。
もしかしてこれはライトプロテクトになっているのかな、と、まったく説明のな
い後のスライドスイッチをずらしてから再度フォーマットをかけると、今度は開
始したら即座に「書き込み保護されているので、書き込みできません」のメッセ
ージ。うん、尻尾のスイッチはライトプロテクトスイッチで間違いないようです。

では、ということで、PC-9821のMS-DOS6.2でフォーマット実行。
おぉ、こいつでは一発成功。
そのままポケ3に持ってきてchkdskをかけると、やた、8MBを認識している。
ここでもう一度、ポケ3でフォーマットをかけてみようとしたのですが、やはり
「メモリカードにエラーが発生しました」というメッセージ。どうやら、ポケ3
のformat.comは8MBのメモリカードに対応していないようです。

さて、ほんの数分、メモリカードを放置したままこの文章を打っていました。
そして再びポケ3に入れてテストしようとしたところ、なんと、エラーになって
しまうではありませんか。もう一度98のほうにさしてみたのですが、こちらで
もやはりエラー。が、再度フォーマットをかけてみたところ、きちんとフォーマ
ットできるし、フォーマット後はアクセス可能。
ははぁ、わかったぞ。内蔵のバッテリーが十分充電されていなかったな。という
ことで、5分ほど98のカードスロットに入れたままにしておきました。フル充
電になるまでどのくらい時間がかかるのか、また、フル充電でどのくらい記憶を
保持しているのか、というのはまったくわかりません。
その後、再びポケ3に持ってきて、とりあえず読み書きともに正常にアクセスで
きることを確認。で、一旦ポケ3の電源を切りました。電源の落ちたポケ3で充
電できるのかどうかということを知りたかったのです。もし充電できないのなら、
次に立ち上げたときには、また中の情報が全て消えてしまっているはずです。

さて、順序が逆かもしれませんが、この間にメーカーのWEBサイトでスペック
を調査することにしました。
以下、http://www.synchrotech.com/products/sram_01.htmlより、関係のあり
そうな部分の引用です。

・Onboard rechargeable L-ION battery for date retention
→なるほど、コンデンサではなく、ちゃんとバッテリーが入っているのね。

Electrical Characteristics
* Operational Voltage: 5 Volts ± 5% (256KB to 6MB cards)
* Operational Voltage: 3.3/5 Volts ± 5% (8MB cards)
→もしかして、ポケ3でフォーマットできなかったのは、format.comのせいでは
 なく、この電圧の関係かもしれません。ただ、単なる読み書きだけのアクセス
 には関係ないようです。

Lithium Ion Battery
* Recharges at standby voltage
  o Typical 2mA for fully charged @ 2.0V
* Backup battery average charge 7 months for 4MB card (256KB to 6MB cards)
* Backup battery average charge 18 months for 4MB card (8MB cards)
→英語力が足りないのでよくわかりません。充電電流が2mAというのはわかったけ
 ど、フル充電まで18ヶ月かかるということなのかな。それとも、フル充電さ
 れたら18ヶ月持つ、ということなのかな。

Card Life Expectancy
* Battery Use: 10 year minimum
→バッテリー寿命は最低10年、ということは、実用的には全く問題なしですね。

次いで、FAQのページを見たら、少しは疑問が解けました。

All SRAM cards should charge up 100% within 8 hours or if left in 
the system overnight. Only 2 hours will still charge the card 50%.
→8時間でフル充電、2時間でも50%充電、ということね。

さて、英語というわけのわからん文章と格闘してここまで調べるのに、約30分
かかってしまいました。この間、電源の切られたポケ3の中で待機していたメモ
リカードはどうなっていたかとポケ3を起動してみると・・・おぉ、きちんと読
み書きできる。ポケ3は電源が切られていてもきちんと充電可能なだけの電力が
カードスロットに供給されているのか、それともさっき98に入れていただけで
かなり充電されたのかはわかりませんが、とにかく、あっという間に中身の情報
が消えてしまうような軟弱なつくりにはなっていないということがわかりました。


ということで、夜もふけてきたので今日はここまで。明日は、ポケ3で8MB全
てエラーなく読み書きできるのか、というようなことを調べてみましょう。
 

タイトルRe: 8MBのSRAMカード
記事No420
投稿日: 2005/08/03(Wed) 12:39
投稿者としき@家主
参照先http://www.hinocatv.ne.jp/~toshiki/
レス元418
> ということで、夜もふけてきたので今日はここまで。明日は、ポケ3で8MB全
> てエラーなく読み書きできるのか、というようなことを調べてみましょう。

今日は会社がお休みなので、朝からいろいろといじっています。

まず、電源を切ったポケ3の中で9時間ほど寝ていたカード、情報が消えていな
いか見てみましたが、きちんと残っていました。また、ポケ3での読み書きも可
能でした。もし電源が切れたポケ3でも充電できているようなら、これでフル充
電になっているはずですから、向こう18ヶ月は情報が消えないはずです。

> と思ったら、裏表逆に刺さっているよ。おいおい、普通、コネクタ部分の形状が
> 工夫してあって、絶対に裏返しではささらないようになっているはずなんだけど。
> 不良品なのかカードの角の部分が欠けていて、ささってしまうのはまずいなぁ。

これは、私のポケ3のほうが不良品というか壊れているらしいことが判明しまし
た。Bスロットは、手持ちのカードも全て、裏表逆に刺さってしまいます。一方、
Aスロットのほうは、今回のカードを含め、全て逆差しはできませんでした。

次に、icmutyを使って、メモリカードの諸元を表示させて見ました。以下はコピ
ペではなく手打ちで入力しているので、転記ミスがあるかもしれません。

byte/sec 200h  root dir   200h
sec/clus   8h  total sec 4000h
rsv sec    1h  ID          f8h
FAT num    2h  sec/FAT      6h

どちらかというとこれは、母艦であるPC−98のフォーマッタがどのようにカー
ドを認識して、そしてこのように値を設定した、ということの表示かもしれません。
byte/secが200h→512Byteというのは、最近はHDDだろうがフロッピーだろうが
みんな同じですね。total secは4000h→16384個ですから、掛け算すれば、間違い
なく8MBになります。
クラスタサイズは512*8で4KBですか。1バイトのファイルでも4KB消費してしまう
わけですから、これは後でなんとかしましょう。ルートディレクトリも、ここに
512個もファイルを置くような事はないでしょうから、これもなんとか削減したい
ものです。

さらに、ポケ3でchkdskを実行してみました。

8364032 バイト:全ディスク容量

ぅぉぉ、なんかうれしさの雄叫びを上げてしまいます。
が、これが全部使えないと洒落にならない。
ということで、次はメモリカードの最後の部分の読み書きチェック。
方法は、まずポケ3でnomoreというツールを使います。
これは、ディスクの管理領域をいじって、空き領域を全てまとめた1個のファイ
ルを作ってくれます。結果は

8364032 バイト:全ディスク容量
8364032 バイト:1 個のユーザーファイル
      0 バイト:使用可能ディスク容量

となりました。これで、少なくともメモリカードの管理領域の操作は、8MBのカー
ドでも不都合なく行える事が確認できました。ただ、管理領域の操作が8MB分でき
るとしても、管理領域そのものはメモリカードの先頭の部分にあります。つまり、
これだけでは本当にメモリカードの最後の部分の読み書きができるかどうかはわ
からないのです。
そこで、ここからがちょっと面倒。
この8364032バイトのファイルを母艦に持ってきて、8359936バイトのファイルと
4096バイトのファイルに分割しました。そして、これをメモリカードに書き戻し
ます。こうすると、その4096バイトのファイルがメモリカードの末尾に来るはず
だから、これの読み書き試験をすればOK。と思ったんだけど、実際に書き戻し
てから大きい方のファイルにchkdskをかけたところ、なんと、不連続ブロックを
含む、と表示されてしまった。不連続という事は、もしかするとメモリカードの
真ん中あたりに小さい方のファイルの実体が存在している可能性があるという事
で、あまり面白くありません。仕方ないので、母艦の側でデフラグをかけて何と
か連続にしよう・・・と思ったら、空き領域がないとデフラグがかけられないと
のメッセージ。では、ということで小さい方のファイルを消してからもう一度デ
フラグ実行、その後にもう一度小さいファイルをコピーという段取を踏みました。
これで、小さい方のファイルがメモリカードの末尾にあることが確認できました。

ようやっとポケ3にカードを戻し、Vzエディタで小さい方のファイルを開き、
末尾1バイトを書き換えてセーブしてクローズ。再度オープンして・・・OK、
きちんと書き換えが機能しています。
念のため、もう一度母艦に持ってきて、ファイルの中身が私が書き換えた通りで
あることを確認しました。 

ふぅ、ここまでで2時間強。
疲れたから午前中はこれでおしまい。
っていうか、すでに昼過ぎ。
 

タイトルRe^2: 8MBのSRAMカード
記事No421
投稿日: 2005/08/04(Thu) 00:50
投稿者酸化 金
レス元420
無事動作したようで、良かったですね。
おめでとうございます。

うちも、ポケ3のみならず、FMR-CARD/E用に容量の大きいのが欲しいです。
16MBとか32MB(あったようななかったような)のSRAMカードを入手する機会が出来たら、
購入してみたいです。

話は変わりますが、デフラグを使う代わりにフリーソフトのFORGをポケ3に入れてみたらい
かがでしょう。
あれなら、DOS3でも動きますよ。DOS汎用ですし、FAT16であれば、VFATのロングファイルネー
ムも壊れずに使えますから。
うちではDOSから実行する場合はFORGを使ってます。

タイトルRe^3: 8MBのSRAMカード
記事No422
投稿日: 2005/08/04(Thu) 08:43
投稿者としき@家主
参照先http://www.hinocatv.ne.jp/~toshiki/
レス元421
> おめでとうございます。

ありがとうございます。飾りものにならずに済みました。

> 話は変わりますが、デフラグを使う代わりにフリーソフトのFORGをポケ3に入れてみたらい
> かがでしょう。

いいソフトですよね。実は、既にポケ3に入っています。
ポケ3でEMSを使うときにはファイルの連続性が必要だとマニュアルに書いて
ありますので、使った事も何回かあります。ただ、今回、初物だという事と、低
速なポケ3だと所要時間がどのくらいかかるかわからなかったという事で、母艦
の方でファイルの連続化を行うことにしたのです。なにしろ、クロック周波数で
17倍以上の差があるのですから。
 

タイトルRe^2: 8MBのSRAMカード
記事No435
投稿日: 2005/08/08(Mon) 16:01
投稿者としき@家主
参照先http://www.hinocatv.ne.jp/~toshiki/
レス元420
今回は、メモリカードの論理的な構造に関わる小難しいお話。

> クラスタサイズは512*8で4KBですか。1バイトのファイルでも4KB消費してしまう
> わけですから、これは後でなんとかしましょう。ルートディレクトリも、ここに
> 512個もファイルを置くような事はないでしょうから、これもなんとか削減したい

ちょっと計算してみたのですが、クラスタサイズの縮小はあまり効果がないよう
です。総セクタ数16384個に対して、システムで使っているセクタ数の初期値とい
うか現在の値は

> byte/sec 200h  root dir   200h
> sec/clus   8h  total sec 4000h
> rsv sec    1h  ID          f8h
> FAT num    2h  sec/FAT      6h

予約セクタ                  1
ルートディレクトリ用セクタ  32(=512/16)
FAT用セクタ              12(=6*2)
合計                       45
クラスタ数換算(4KB)        6→約24KB

ということで、約24KBがシステムにとられています。
仮に2KBクラスタにしてみた場合を計算してみます。すると今度はクラスタ数が増
えてしまうので、ルートディレクトリをぎりぎりまで切り詰めたとしてもトータ
ルでのシステムの使用量が増えてしまいます。素直に計算すると、クラスタ数は
8MB/2KB=4096個となります。1クラスタに必要なFATのバイト数は2バイトなので、
このとき必要なFAT用のセクタ数は1セクタ512バイトから4096*2/512=16セクタ。

予約セクタ                 1
ルートディレクトリ用セクタ  1
FAT用セクタ             16
合計                      18
クラスタ数換算(2KB)       5→約10KB

う〜ん、14KBしか増えないのか。
ためしに、4KBクラスタのままでルートディレクトリだけ減らしてみると

予約セクタ                 1
ルートディレクトリ用セクタ  1
FAT用セクタ              6
合計                       8
クラスタ数換算(4KB)       1→約4KB

なんだ、こっちのほうがよっぽどシステム領域が減らせるじゃないの。
つまりユーザ領域が増えるということで。

ということで、icmutyを改造したメモリカードのパラメータを書き換えるツール
を作って、さくっと書き換えてみました。chkdskをかけてみても異常はないし、
ほかのマシンに持っていっても読み書きできているので特に問題はないでしょう。
この状態で、実戦投入というか、しばらく常用してみることにします。
 

タイトルRe^3: 8MBのSRAMカード
記事No437
投稿日: 2005/08/10(Wed) 01:34
投稿者konno
レス元435
> ということで、icmutyを改造したメモリカードのパラメータを書き換えるツール
> を作って、さくっと書き換えてみました。chkdskをかけてみても異常はないし、
> ほかのマシンに持っていっても読み書きできているので特に問題はないでしょう。
> この状態で、実戦投入というか、しばらく常用してみることにします。

このツール、公開の予定はないのでしょうか。あ、いや、ちょっと良さそうだなと
思いまして。1〜2メガのメモリカードでも効果有るんですよね。書き換えた場合
ルートに置けるファイル数は幾つになるのでしょうか。いや、ちょっと小難しい
話しで混乱しているもので。

タイトルRe^4: SRAMカードのパラメータ書き換え
記事No438
投稿日: 2005/08/10(Wed) 11:37
投稿者としき@家主
参照先http://www.hinocatv.ne.jp/~toshiki/
レス元437
> このツール、公開の予定はないのでしょうか。あ、いや、ちょっと良さそうだなと
> 思いまして。1〜2メガのメモリカードでも効果有るんですよね。書き換えた場合
> ルートに置けるファイル数は幾つになるのでしょうか。いや、ちょっと小難しい

今までは一品生産というか、メモリカードの容量毎に手計算でパラメータを算出
し、ソースリストにそれを定数として直に入れて作っていました。さすがにこれ
だと大変なので、今回、クラスタサイズを指定すると、それに応じたパラメータ
を計算するルーチンを作って、それをもとにカードを書き換えさせています。
アプローチとしては、ルートにおけるファイル数を削る、というもの。なので、
可能であれば、ルートのファイル数は最低限界の16個となります。他のパラメー
タとの関係で増える事もあります。もちろん、ディレクトリを掘ればカード全体
としてはもっとたくさんのファイルを格納できるわけだし、私の使い方としても
ルートにはたくさんファイルを置かないので、個人的には全く問題ありません。

問題になりそうなのは、クラスタ数が4096個ぐらいになりそうなとき。
すなわち、2MBのカードではクラスタサイズ512バイト、8MBのカードでは2048バイ
ト、というようなパラメータのとき。
クラスタ数が4085個までだとFATは12ビットなので、FAT用に必要なセクタ
数は12セクタで済みます。ところが、4086になってしまうと16ビットFATにな
ってしまうので、16セクタ必要になります。ここのところで、むりやりルートデ
ィレクトリを増やしてやってユーザ用クラスタを4085までに減らすという方法も
あるのですが、どっちの方が得か、という判断ルーチンがインプリメントできて
いません。あるいは、人間がパラメータを入力するようにした方がいいのか。
現状ではルートディレクトリを増やすようなロジックになっているのですが、そ
うするとかえって総容量が減ってしまう場合もあるはずです。

多分、2MBまでのカードの場合、icmutyを使って512バイトクラスタにした場合と
大して違いはないと思います。特に2MBのカードの場合、icmutyだとルートディレ
クトリが大きくなっているのでクラスタ数が4085までになっていると思いますが、
これを減らしても今度は逆にFATが膨らんでしまってメリットがないかも。
1MBまでのカードの場合はルートディレクトリが削れる事によるメリットもあるか
もしれませんが、さて、どうしたもんだろ。

それとも、メモリカードのサイズごとに容量最大となるパラメータを全部内蔵さ
せてみようかな。えらく融通の効かないツールになるけど。
 

タイトルRe^5: SRAMカードのパラメータ書き換え
記事No439
投稿日: 2005/08/11(Thu) 01:23
投稿者konno
レス元438
> アプローチとしては、ルートにおけるファイル数を削る、というもの。なので、
> 可能であれば、ルートのファイル数は最低限界の16個となります。他のパラメー
> タとの関係で増える事もあります。もちろん、ディレクトリを掘ればカード全体
> としてはもっとたくさんのファイルを格納できるわけだし、私の使い方としても
> ルートにはたくさんファイルを置かないので、個人的には全く問題ありません。

ふーむ、ルートのファイル数を指定するわけではないんですね。私の使い方だと
ルートが16個だとちょっと不安ですねぇ。まあ、気をつけていればいいんですが。

> 多分、2MBまでのカードの場合、icmutyを使って512バイトクラスタにした場合と
> 対して違いはないと思います。特に2MBのカードの場合、icmutyだとルートディレ
> クトリが大きくなっているのでクラスタ数が4085までになっていると思いますが、
> これを減らしても今度は逆にFATが膨らんでしまってメリットがないかも。
> 1MBまでのカードの場合はルートディレクトリが削れる事によるメリットもあるか
> もしれませんが、さて、どうしたもんだろ。

うーむ、2MBだとメリットが出ないんですか、残念。

> それとも、メモリカードのサイズごとに容量最大となるパラメータを全部内蔵さ
> せてみようかな。えらく融通の効かないツールになるけど。

汎用性をもたせるならパラメータを指定するのがいいですかね。それに加えて全自動
モードがあれば完璧かな。無指定なら全自動とか。(無責任モード)

タイトルRe^6: SRAMカードのパラメータ書き換え
記事No440
投稿日: 2005/08/11(Thu) 04:06
投稿者としき@家主
参照先http://www.hinocatv.ne.jp/~toshiki/
レス元439
> ふーむ、ルートのファイル数を指定するわけではないんですね。私の使い方だと
> ルートが16個だとちょっと不安ですねぇ。まあ、気をつけていればいいんですが。

書き込もうとしたときに「書き込めない」というエラーメッセージが出てくるの
で大丈夫でしょう。

> うーむ、2MBだとメリットが出ないんですか、残念。

今職場なので、手持ちに2MBのカードがなくてデフォルトのパラメータがどう
なっているか確認できないのですが、容量最大化を図ったときのパラメータは以
下のようになると思われます。

クラスタサイズ=セクタサイズ=512バイト
予約セクタ          1
ルートディレクトリ用セクタ  1 → 16ファイル
FAT用セクタ        12(12ビットFAT)
ユーザセクタ 4096-12-1-1=4082(→12ビットFATでOK)
使用可能容量 4082*512=2089984バイト

もしルートディレクトリのファイル数を増やせば、ここから512バイト単位で容量
が減っていく計算になります。

> 汎用性をもたせるならパラメータを指定するのがいいですかね。それに加えて全自動
> モードがあれば完璧かな。無指定なら全自動とか。(無責任モード)

う〜ん、現状ではドライブ名とクラスタサイズのみ指定という形になっています。
あとはルートディレクトリのファイル数でも指定できるようにしてみようかな。
全自動モードは設けない予定です。パラメータが省略されているかどうかを解析す
るのが面倒なので。
 

タイトルRe^7: SRAMカードのパラメータ書き換え
記事No441
投稿日: 2005/08/11(Thu) 12:14
投稿者としき@家主
参照先http://www.hinocatv.ne.jp/~toshiki/
レス元440
> 今職場なので、手持ちに2MBのカードがなくてデフォルトのパラメータがどう
> なっているか確認できないのですが、容量最大化を図ったときのパラメータは以
> 下のようになると思われます。

帰宅したので、早速2MBのカードのパラメータを見てみました。

クラスタサイズ             1024バイト(セクタサイズ×2)
予約セクタ          1
ルートディレクトリ用セクタ   16 ← 256ファイル
FAT用セクタ         6*2
ユーザセクタ 4096-6*2-16-1=4067
使用可能容量 4066*512=2081792バイト(2セクタ1クラスタなので端数切り捨て)

icmutyを使って512バイトクラスタ化した後のパラメータは

クラスタサイズ              512バイト
予約セクタ          1
ルートディレクトリ用セクタ   16 ← 256ファイル
FAT用セクタ        12
ユーザセクタ 4096-12-16-1=4067
使用可能容量 4067*512=2082304バイト

おや、1セクタ分使われないんだ。これはもったいない。
ということで、カリカリにチューニングすれば約8KB捻出できます。約0.4%。
計算していないのですが、比率で言えば、1MBのカードならもっと高い割合が
叩き出せそうです。ただ、実際の容量としては同じくらいでしょう。
  

タイトルRe^8: SRAMカードのパラメータ書き換え
記事No443
投稿日: 2005/08/12(Fri) 00:49
投稿者konno
レス元441
> 使用可能容量 4066*512=2081792バイト(2セクタ1クラスタなので端数切り捨て)
> icmutyを使って512バイトクラスタ化した後のパラメータは
> 使用可能容量 4067*512=2082304バイト

おお、512バイトクラスタの方が容量が増えてる。

> おや、1セクタ分使われないんだ。これはもったいない。
> ということで、カリカリにチューニングすれば約8KB捻出できます。約0.4%。

おおお、結構効果があるもんですね。これは是非とも試してみたいです。
ポケ3を入手してから久しぶりにDIETを使いました。初代ダイナブックSSを
使っていた頃を思い出すなぁ。

タイトルRe^7: SRAMカードのパラメータ書き換え
記事No442
投稿日: 2005/08/12(Fri) 00:38
投稿者konno
レス元440
> 書き込もうとしたときに「書き込めない」というエラーメッセージが出てくるの
> で大丈夫でしょう。

えーと、サブディレクトリもファイルに数えましたっけ。そうすると現状2MBの
カードには53ファイルありますね。整理しなくては。(汗

> う〜ん、現状ではドライブ名とクラスタサイズのみ指定という形になっています。
> あとはルートディレクトリのファイル数でも指定できるようにしてみようかな。
> 全自動モードは設けない予定です。パラメータが省略されているかどうかを解析す
> るのが面倒なので。

そうですよね、解析は面倒だから、全自動選択SWにするとか。(しつこい)
ルートのファイル数指定はわかりやすいですね。ただ、サイズとのかねあいは
分かるんでしょうか。って、パラメータを表示させてみればいいのか。

タイトルRe^8: SRAMカードのパラメータ書き換え
記事No444
投稿日: 2005/08/12(Fri) 01:49
投稿者としき@家主
参照先http://www.hinocatv.ne.jp/~toshiki/
レス元442
> えーと、サブディレクトリもファイルに数えましたっけ。そうすると現状2MBの
> カードには53ファイルありますね。整理しなくては。(汗

普通、そのぐらいだと思いますよ。私の手元では、8MBのカードと4MBのカ
ードあわせて400以上のファイルがありますし。


> ルートのファイル数指定はわかりやすいですね。ただ、サイズとのかねあいは
> 分かるんでしょうか。って、パラメータを表示させてみればいいのか。

パラメータ表示は既についています。
が、ルートのファイル数指定はどうしようかな。
今日、昼間からずっと、宿直明けでボケた頭で考え続けていたのですが、どうも
うまくないんですよ。

FAT用に必要なセクタ数はユーザで使用可能なクラスタ数で決定されます。
この使用可能なクラスタ数は、物理的な総クラスタ数から、システムで使うクラ
スタ分を差し引いたものです。
システムで使う部分というのは、予約領域1セクタ以上、ルートディレクトリ用、
そしてFAT用です。
つまり、FAT用のサイズが決まらないとシステム用のクラスタ数が決まらない、
システム用のクラスタ数が決まらないとFAT用のサイズが決まらない、という
ことで、頭の中がループしてしまっているのです。
多分、条件分岐を3〜4段くらい重ねればなんとかなるとは思うのですが。

コマンドラインでパラメータを多数指定するようにして、いずれも省略を許さな
いようにする、というのがコマンドライン解析部の作りとしては楽ですが、でも
そうすると、それらのパラメータが合理的かどうかという判断が面倒だし、不合
理だった場合にはいずれかのパラメータを自動で変更するのか、それともパラメ
ータ変更を中止するのか。変更するのなら、どれを変更するのか。もし中止する
ようにすると、場合によってはユーザに各種パラメータを絨毯爆撃させる羽目に
なりそうなので、それは避けたい。
対話的にパラメータを入力させるとしたら、どのパラメータを優先させるのか、
というのが私には判断がつかない。それに対話処理は苦手だし。

あと1日からかってうまい解決策が見つからなかった場合は、ルートディレクト
リを可能な限り削減する、というロジックでひとまず組上げて見ます。
コマンド名としては、暫定ですが、exmc.exeとしています。

usage: exmc <drv:> <クラスタサイズ> [<何かのパラメータ>]

みたいな感じ。
何かのパラメータが何になるか、現段階では全く未定です。
 

タイトルRe^9: SRAMカードのパラメータ書き換え
記事No445
投稿日: 2005/08/13(Sat) 02:53
投稿者konno
レス元444
> 普通、そのぐらいだと思いますよ。私の手元では、8MBのカードと4MBのカ
> ードあわせて400以上のファイルがありますし。

53というのはルートに有るファイル数なんですよ。サブディレクトリも3あって
全部で120ぐらいありますね。最初にツール類をコピーした時にルートにかまわず
放り込んだのがそのままになってました。

> つまり、FAT用のサイズが決まらないとシステム用のクラスタ数が決まらない、
> システム用のクラスタ数が決まらないとFAT用のサイズが決まらない、という
> ことで、頭の中がループしてしまっているのです。
> 多分、条件分岐を3〜4段くらい重ねればなんとかなるとは思うのですが。

なんだかややこしいことになってますね。ユーザーはおそらく数名くらいだと
思われるので、使い方さえ分かれば今のままでもいいと思います。

> コマンドラインでパラメータを多数指定するようにして、いずれも省略を許さな
> いようにする、というのがコマンドライン解析部の作りとしては楽ですが、でも

> そうすると、それらのパラメータが合理的かどうかという判断が面倒だし、不合
> 理だった場合にはいずれかのパラメータを自動で変更するのか、それともパラメ
> ータ変更を中止するのか。変更するのなら、どれを変更するのか。もし中止する
> ようにすると、場合によってはユーザに各種パラメータを絨毯爆撃させる羽目に
> なりそうなので、それは避けたい。

私なら最初に見つけたパラメータで決めうちして、不整合が有る場合は中止する
という感じでシンプルな構成にすると思います。手抜きともいうけど。この手の
ツールはそう何度も使うものではないので何回かの試行錯誤は苦にならないし、
こだわる人は何度でもやり直すことをいとわないでしょう。

> あと1日からかってうまい解決策が見つからなかった場合は、ルートディレクト
> リを可能な限り削減する、というロジックでひとまず組上げて見ます。

容量拡大ツールとしては妥当な路線だと思います。高機能化は次のバージョンで
(って、次があるのだろうか)

タイトルRe^10: SRAMカードのパラメータ書き換え
記事No446
投稿日: 2005/08/13(Sat) 12:04
投稿者としき@家主
参照先http://www.hinocatv.ne.jp/~toshiki/
レス元445
> 53というのはルートに有るファイル数なんですよ。サブディレクトリも3あって

それは確かにちょっと多いかも。
私の場合、ルートのファイル数が32というパラメータのカードを使っていること
が多いのですが、これでは足りないと感じる事は年に2〜3回ある程度です。

> 容量拡大ツールとしては妥当な路線だと思います。高機能化は次のバージョンで
> (って、次があるのだろうか)

次はありません、と断言すると、バグ取りバージョンを出す羽目になったりする
ので、そこはまぁ瞹昧に濁しておきます。


結局、3番目のオプションとしてルートディレクトリ数を指定するような形で作
ってみました。省略時はルートディレクトリは16。また、端数セクタが発生する
ような場合はルートディレクトリ数を自動的に拡張するようにしました。これで
少しは圧迫感が減るかと。

これからドキュメントを書き始めますが、その間、しばらくソースの方は寝かせ
ます。その後、ロジックの漏れや抜けがないことを半ば別人的な目になったとこ
ろで再点検し、それから私の手持ちの64K〜4Mのカードで実際にテストしてからリ
リースとなります。8MBのカードは既に実戦投入済なのでもう触りたくありません
が、必要があればそれでも試験せざるをえないかもしれません。
パラメータとしては、64KBのカードを32Kクラスタで再フォーマット、などという
ふざけた設定もできるようにしていますが、果たして本当にそれでうまくいくの
か、というのも興味があるところです。って、自分の作るものにそのような第三
者的興味を覚えていいのか、というのもアレですが。
 

タイトルRe^11: SRAMカードのパラメータ書き換え
記事No448
投稿日: 2005/08/14(Sun) 00:50
投稿者konno
レス元446
> それは確かにちょっと多いかも。
> 私の場合、ルートのファイル数が32というパラメータのカードを使っていること
> が多いのですが、これでは足りないと感じる事は年に2〜3回ある程度です。

ルートが32ぐらいあれば安心して使えそうですね。1セクタで16くらいでしたっけ。
でも16でやり繰りするのも面白そうだなぁ。

> 結局、3番目のオプションとしてルートディレクトリ数を指定するような形で作
> ってみました。省略時はルートディレクトリは16。また、端数セクタが発生する
> ような場合はルートディレクトリ数を自動的に拡張するようにしました。これで
> 少しは圧迫感が減るかと。

おお、いいですねぇ。ルートディレクトリ数の指定はやってみたいですが、16
の場合は指定無しですか、ううーん。(って悩むようなことか)

> パラメータとしては、64KBのカードを32Kクラスタで再フォーマット、などという
> ふざけた設定もできるようにしていますが、果たして本当にそれでうまくいくの
> か、というのも興味があるところです。って、自分の作るものにそのような第三
> 者的興味を覚えていいのか、というのもアレですが。

自分の好きなように作れるのは作者の特権ですね。一度この快感を味わったら
やめられまへんな。

タイトルRe^12: SRAMカードのパラメータ書き換え
記事No449
投稿日: 2005/08/14(Sun) 08:44
投稿者としき@家主
参照先http://www.hinocatv.ne.jp/~toshiki/
レス元448
> おお、いいですねぇ。ルートディレクトリ数の指定はやってみたいですが、16
> の場合は指定無しですか、ううーん。(って悩むようなことか)

あ、いや、省略時は16と解釈するというだけで。
きちんと指定すればそちらを反映します。
 

タイトルRe^11: SRAMカードのパラメータ書き換えツール公開
記事No454
投稿日: 2005/08/25(Thu) 22:30
投稿者としき@家主
参照先http://www.hinocatv.ne.jp/~toshiki/
レス元446
> ろで再点検し、それから私の手持ちの64K〜4Mのカードで実際にテストしてからリ
> リースとなります。8MBのカードは既に実戦投入済なのでもう触りたくありません

一応、64K〜4MBのカードでいくつかのパラメータをテストしました。
自宅のWin98、PC-98のDOS、および会社のWin2Kでそれなりにアクセスできるよ
うです。もちろん、ポケ3でも大丈夫です。
ということで、ファーストバージョンをリリースします。

http://hp.vector.co.jp/authors/VA007736/mysoft/exmc01.lzh

バグ等に気付かれたらご連絡お願いいたします。
 

タイトルRe^12: SRAMカードのパラメータ書き換えツール公開
記事No456
投稿日: 2005/08/29(Mon) 00:43
投稿者konno
レス元454
としきさん、レスが遅れましたが、公開ありがとうございます。

とりあえずダウンしてドックを見てみました。懇切丁寧な説明はさすが、
書きなれてますねぇ。

> バグ等に気付かれたらご連絡お願いいたします。

試すのはもうちょっと後になるかもしれませんが、気が付いたことがあれば
ご報告します。 


#僅かの隙間をも活用する技は乾いた雑巾をさらに絞るにも似て(ト〇タ式?)

タイトルRe^13: ドキュメントの書き方
記事No457
投稿日: 2005/08/29(Mon) 20:24
投稿者としき@家主
参照先http://www.hinocatv.ne.jp/~toshiki/
レス元456
> とりあえずダウンしてドックを見てみました。懇切丁寧な説明はさすが、
> 書きなれてますねぇ。

書き慣れているというよりも、この手の危険なツールの場合、いかに責任逃れを
するか、というのが大事だと思っているので。
あと、サポートの手を抜くというか、何か問い合わせがあった時に、
「それについてはドキュメントを読んでください」
と冷たくあしらいたいような質問のされ方をするときもありますので、そういう
ことが可能な程度には詳しく書いておきたかったりします。
 

タイトルEXMCの動作報告
記事No461
投稿日: 2005/09/12(Mon) 02:47
投稿者konno
レス元454
遅くなりましたが動作報告です。

1M のカードで試してみましたが、DOC をよく読んでなかったためにてこずりました。
私は EXMC.EXE がフォーマットされたカードの形式を変更するものだと思い込んでいた
ため、まず FORMAT コマンドでフォーマットしてから EXMC B: とやったら、「対応できない
クラスタサイズです」と出てしまうので、クラスタサイズが 1024 なのがいけないのかと思い、XPで 512 にフォーマットし直してみても駄目、ICMUTY.EXE で 512 にしても
駄目だったのでちょっと落ち込んでました。

基本に帰って、DOC を読み直してみたら、どうもクラスタサイズのパラメータ入力は
省略出来ないようだと気づきました。で、EXMC B: 512 で無事フォーマット出来ました。
つまり、EXMC って拡張フォーマッタなんですね。凄い遠回りしてしまった。

で、結果ですが、1042944byte から 1044480byte に増えました。(^_^)

で、使用感ですが、ルートにファイルコピーしたら16個しか出来なくて(当たり前で
すが)やっぱりちょっと少ない気がします。32にしようかな。

ともあれ、少ない容量でも無駄なく使えるようになったことはとてもありがたいです。

> http://hp.vector.co.jp/authors/VA007736/mysoft/exmc01.lzh

ベクターのほうだったんですね。気が付きませんでした。

タイトルRe: EXMCの動作報告
記事No462
投稿日: 2005/09/12(Mon) 14:12
投稿者としき@家主
参照先http://www.hinocatv.ne.jp/~toshiki/
レス元461
> ため、まず FORMAT コマンドでフォーマットしてから EXMC B: とやったら、「対応できない
> クラスタサイズです」と出てしまうので、クラスタサイズが 1024 なのがいけないのかと思い、

ありゃ、それはバグです。
この場合、オプションが足りないのですから、ヘルプメッセージを表示するよう
に作るべきです。というか、本人はそのつもりで作っていました。
チェックしたつもりだったのになぁ。
ということで、見ればわかるかもしれませんが、「オプション数が2未満なら」
となっているところを「オプション数が3未満なら」と書き換えます。
そのうちさりげなく0.01aにバージョンアップしておくつもりですが、今のとこ
ろはその他の機能向上予定はありません。

> ベクターのほうだったんですね。気が付きませんでした。

母屋の敷地がほとんどいっぱいなので、まだ余裕がある隣の倉庫に収納するよう
にしています。
 

タイトルRe^2: EXMCの動作報告
記事No463
投稿日: 2005/09/12(Mon) 23:51
投稿者konno
レス元462
> ありゃ、それはバグです。
> この場合、オプションが足りないのですから、ヘルプメッセージを表示するよう
> に作るべきです。というか、本人はそのつもりで作っていました。
> チェックしたつもりだったのになぁ。

なるほど、不正な操作の動作チェックには貢献できたようですね。

> そのうちさりげなく0.01aにバージョンアップしておくつもりですが、今のとこ
> ろはその他の機能向上予定はありません。

ではたまに覗いてみます。

> 母屋の敷地がほとんどいっぱいなので、まだ余裕がある隣の倉庫に収納するよう
> にしています。

なるほど、ベクターは倉庫代わりになるのか、うちもイナバの物置がほしいなぁ。