mz-80B CMT
0E0H:8255 PA(出力) d7:LED カナ 1=オン 、0=オフ d6:LED GRFH 1=オン 、0=オフ d5:LED SFT LOCK 1=オン 、0=オフ d4:CRT VID 1=ノーマル 、0=リバース d3:CMT STOP 1=STOP 、0=何もしない d2:CMT PNL 1=PLAY 、0=何もしない d1:CMT BLK1 1=FF状態 、0=REW状態 d0:CMT BLK2 1=モーターオン、0=モーターオフ 0E1H:8255 PB(入力) d7:KEY BRK PIO B7の内容(キーデータd7) d6:CMT RDATA CMT入力データ d5:CMT TREADY 1=テープなし 、0=テープあり d4:CMT WREADY 1=書き込み禁止 、0=書き込み可能 d3:P3 未使用 1 d2:P2 未使用 1 d1:P1 未使用 1 d0:CRT BLANK 1=ブランキング中、0=ブランキング外 0E2H:8255 PC(出力) d7:CMT WDATA CMT出力データ d6:CMT WRITE 1=リード状態 、0=ライト状態 d5:CMT REW 1=FF状態ラッチ 、0=REW状態ラッチ d4:CMT OPEN 1=何もしない 、0=EJECT d3:BST ブートリセット 1=何もしない 、0=IPLリセット d2:サウンド出力 d1:NST リセット 1=ノーマルリセット、0=何もしない d0:CRT VGATE 1=画面の表示オフ 、0=画面の表示オン 0E3H:8255 コントロールワード イジェクト OPEN=0 (PC4=0) ディレイ OPEN=1 (PC4=1) OPENを0から1にするとカセットの蓋が開きます プレイ(モーターオン) BLK=1 ディレイ REW 1−>0 (PC5 1−>0) PNL=1、BLK=1 (PLAY、FF) PNL=0 PNLを1から0にする事によってプレイ 前もってWRITE=1 (PC6=1)にする モータストップ STOP=1 (PA3=1) ディレイ STOP=0 (PA3=0) ディレイ STOPを1から0にするとカセット停止 インフォメーションブロック(FCB) 無音 8秒 APSS用 ”0”*10000 ”1”*40+”0”*40 テープマーク ”1” インフォメーション1 128バイト チェックサム1 2バイト ”1” ”0”*256 インフォメーション2 128バイト(インフォメーション1と同じ) チェックサム2 2バイト(チェックサム1と同じ) ”1” データブロック ”0”*11000 ”1”*20+”0”*20 テープマーク ”1” データブロック1 nnmmバイト チェックサム1 2バイト ”1” ”0”*128 データブロック2 nnmmバイト(データブロック1と同じ) チェックサム2 2バイト(チェックサム1と同じ) ”1” (注)チェックサムは単純にデータを足したものではなくビット内容”1”の総合計になります データが0FFHなら11111111Bで”1”が8つなので+8 0C0Hなら11000000Bで”1”が2つなので+2 000Hなら00000000Bで”1”が0 なので+0 1バイトデータの内容 ”1”、d7、d6、d5、d4、d3、d2、d1、d0 <インフォメーションブロックの内容> ファイルタイプ 1バイト 01=OBJ、02=BTX ファイルネーム 16バイト 16文字以下なら最後に00DHが入る 予備 1バイト ファイルネームが16文字なら00DH 長さ 2バイト 下位、上位の順 ロードアドレス 2バイト 下位、上位の順 実行アドレス 2バイト 下位、上位の順 コメント 104バイト ----------------------------------------------------------- 市販のソフトについて 通常のテープフォーマットがオートスタートをサポートしているので 他機種の様に工夫してオートスタートする必要がありませんが コピープロテクトを施していたり通常と違うソフトがあります <多段プログラム> mz−80B/2000の仕様上で IPLロードはRAMブロック1内32KB(システムワーク含み)しか 出来ません そこで短いプログラム(ローダ)を実行して 2本目の32KB以上のプログラムをロードするようになっています <mz LOGOの場合> シャープ純正フォーマットはインフォメーション部、データ部を それぞれ2回セーブされています mz LOGO(2000用ソフトバンク製)では 1本目のローダが実行されるとFF(先送り)されてから 2本目の本体がロード、実行、REW(先戻し)となります 本来2回セーブされているので 仮に1回目のプログラムロードが失敗しても 2回目がロード成功すれば大丈夫なハズが FFを実行されるので2本目のプログラムがスキップしていまいます ただmzはテープファイルのロードエラーが滅多に起こらないので 誤動作の心配はありません またエミュレータ用に単純にmztファイルにすると インフォメーション1回、プログラム1回で格納されているので 2本目のプログラムがスキップされ同じ理由で動作しません <ハドソン系> カセットケースで販売されいたソフト インフォメーション部、データ部を それぞれ1回だけでセーブされています <キャリーラボ系> 通常フォーマットはソフトウェアディレイによって 波形の長さを決めています 1本目のローダは通常フォーマットで 2本目のメインは少し短い(または長い)ソフトウェアディレイで セーブされたファイルになります IOCS、WICSのモニタで読めないようになります
Home へ戻る