制限事項
機能上の制限
実装を計画している機能のうち、次のものはまだ実装されていません。
- テープI/F経由の.mztファイルのセーブ
- SDRAMに一度読み込んでから、カードに書き出すという手順で対応する予定。純正システムでは2回データを出力してリードエラーに備えているんですが、これをいかに対応するかが面倒なところ。
- QD I/F経由の.mztファイルアクセス
- MZ-700エミュレータと同様に複数の.mztファイルを連結したものをマウントすると、SDRAMに後の取り扱いが楽なように変換して読み込みます。セーブも一旦SDRAMに行い、アンマウント操作(ファイル割り付け解除)か別のファイルの割り付けでカードに全体を書き込むようにします。
- テープ/QDのBSDファイル対応
- BSD(シーケンシャル)ファイルであることを検知したら、そのように振る舞う機能です。テープは128バイト単位(要調査)に区切られますし、QDは1024バイト単位です。問題はtapeload.exeなんかがBSDに対応できてないってことなんですが。
- FD I/F経由の.d88ファイルアクセス
- 一時実装してましたが、AVR-coreのプログラムが肥大しメモリが足らなくなったので一旦保留しています。ソースにはその痕跡がありますが、今のソフトでほとんど処理する方式からかなりハードに機能を切り出すよう変更する予定です。
- PLDSAVE機能
- 実装は楽だと思いますが、β版にどうしても必要な機能とは思えなかったので先送りにしました。
MZ-1500として見た場合、次の機能が未実装です。
- QD
- Z80側からはZ80A SIOが見えますので、表面的にはその実装になります。
- PSG
- コレコビジョンを実装した人がいて、すでにSN76489がVHDL化されてますので、それを流用する予定です。
- プリンタI/FのZ80A PIO化
- MZ-700で単純なパラレルI/FだったものがZ80A PIOになっているので、レジスタや割り込みなどをそれらしく実装するという意味です。
- RAMファイル
- SDRAMを使用します。実装は比較的楽だと思ってます。
- 漢字ROM
- 吸い出し方法がまだ不明。第一水準だけなので128KBに収まるはずですから、吸い出せてしまえばコンフィグROMに格納することができると思います。
- 辞書ROM
- SDRAMには入るでしょうが、コンフィグROMに格納できません。やるならSD/MMCカードに入れて起動時に読み込むことになります。
- ボイスボード
- 音声データをどう吸い出すかが問題。D/Aコンバータに流すデータで良ければそのコンバータの入力を監視すれば得られるとは思いますが。
次の機能を実装するかは未定です。
- 水平同期信号によるウェイト
- 野球拳Y2Kバージョンなどの、ビットマップ表示に対応させるにはこの対処が必要です。が、VGA出力時には水平同期信号がかなり異なるので擬似的な信号にしないといけないかもしれません。ここは検討のしどころです。
- プリンタ出力
- 出力したデータを一時的にRAMに溜めて、しかるべきタイミングでSD/MMCカードにファイルとして出力するという方法も考えられますが、しかるべきタイミングとか、カードが入ってなかった時の処理とか、そもそもリアルタイムに出力結果が得られないのはプリンタ機能としてどうよ、という風に考えてしまい、消極的です。
- オーディオ端子を利用したテープデータ入出力
- 実は一時期実装していたのですが、ほとんどロードできませんでした。ほとんどやる気はありません。
- カートリッジスロットを利用しての拡張I/Oユニットの接続
- 工作が必要なのと、そこまでして接続したいボードがどれだけあるか?という問題から、優先順位としてはかなり下位にあります。1chipMSXではこの対応のため若干修正を入れているT80a(非同期バスバージョン)を使用しているのですが、今使っているT80s(同期バスバージョン)でどの程度うまく動くのか検証に時間が必要でしょう。
操作上の制限
- SD/MMCカードを差し替えしたり電源投入後の挿入ではアクセスできなくなることがある
- できるようなできないような、よくわからない感じです。今のところカードにデータを記録する機能はないので支障は少ないと思いますが、いずれはEXITメニューをREMOUNTに変更しようかと考えています。
- 音が左からしか出ない
- 今のところの仕様です。
- テープI/FはMZフォーマット1200ボーのみ対応
- S-OSの2400ボーやTS-700フォーマットには未対応です。
(C) Nibbles Lab. 2007