mk2 になってから、加速モードでのCMT のロードを待たせる時間が長くなっています。
具体的には、1バイトのデータを読み出すのに、
P6 :3.93ms
mk2:2.62ms
と、1.5倍の時間待たせています。
mk2 のBASIC のプログラムの方がドンくさいんだと思っていたら、どうもそうではなかったようです。
mk2 のCRTC のBUSRQ を調べた結果、MODE2 とMODE5 でかなり違います。
CRTC は水平ライン262本分で1周しますが、その内、MODE2 では192回BUSRQがLになり、MODE5 では200回BUSRQがLになります。
これは縦192ドット/200ドットに相当する数字です(当然ですが)。
また、その1ライン中(456クロック)にLになる区間が、MODE2 では304クロック、MODE5 では368クロックです。
これは、横の256ドット/320ドットに少しだけ大きい数字です(Z80がすぐに止まらないので余裕を持たせています)。
で、BUSRQ がLの期間はCPUが止まっているとして計算すると...
MODE2:48.85%
MODE5:61.60%
の期間、BUSRQ で止まっている計算になります。
mk2 止まりすぎですね(−−;
で、CMT のロードの話ですが、CPUが速く動けば待たせる時間が少なく済むので、ロード時間も短くなります。
CMT ロードの時には、CRTKILL をすれば取りあえず速くなります。
が、画面を全く消さなくても間引けばいいのでした。
通常の6001だと間引いても画面が乱れますが、FPGA版はVGAモニタへの画面表示のために、2P-RAMで乗せ換えをしているために間引いても問題ないんですね。
修正が完了したら、またアップします。


初代機が動いた!と思っていたらmk2もリリース!しかも完成度高い!
と驚きの連続です。
CMTロードの高速化にも期待しております。
さて、私もDE0を購入し、PC-6001Fを楽しませて頂いてましたが、
mk2対応版を実行しようとした際に、ROMデータファイルに
読み取り専用属性が付いていたため起動できず、見事にハマりました(^^;
ROMデータファイルの属性は「20H」(アーカイブビットのみON)じゃないとNGなんですね。
添付ドキュメントに
「ROMデータファイルの属性は『アーカイブのみON』にすること」
の旨を記載いただくと、私みたくハマる人が減るかもしれません(^^;;
昔のFarmでは、20H のみにしていたんですが、修正した後では、リードオンリー属性は、OKにしたと思ったんだけどなー。
何かの機会に修正しておきます。
「このソフトが無事動いた」という報告は歓迎です。
「このソフトが動かない」という報告も歓迎ですので、よろしくお願いします。