Nの世界

【 CMT<->T88変換方法 】

●はじめに

細かい操作等に関しては、各ツールのReadme.txtを参照して下さい。
実験した結果、成功確率は低いので、興味のある方のみお試し下さい。
※実際には、X88000もしくはTransT88でテープファイルセーブ時に拡張子をcmtもしくt88に
 することで変換可能です。この情報自体その事を知る以前に作成したものなので、
 参考程度に留めておいて下さい。(^^;

●原理

テープイメージファイルを一旦wavファイルに戻し、再度、テープイメージ変換ツールで、
テープイメージ作成することにより変換します。

●テープイメージ->Wavファイル

テープイメージからWavファイルに変換には、pc2wavもしくはP6DatRec(2)を使用します。

●pc2wavの使い方

同ツールは、「Mr.Noricの世界」からダウンロード出来ます。
MS-DOSプロンプトから以下のコマンドを入力することで、テープイメージ(t88,cmt形式)を
(t88,cmt形式)をWAVファイル(22050Hz 8bit モノラル)に変換することが可能です。
(変換作業は瞬間で完了します。)
なおN-BASIC用(600baud)のため、1200baudのデータ(N88)は、正しくWavに変換することは
出来ません。(すぐ音が途切れるWavファイルが出来ます)

< コマンドライン >
PC2WAV スイッチ イメージファイル名 WAVファイル名

1.スイッチ
BASICファイルの場合、"b"に続いてファイル名(6文字以内)を指定します。
<例>
 bfileと指定した場合、cload "file"で読み込ませることが可能です。

マシン語ファイルの場合、"m"に続いて16進アドレス4桁を指定します。
<例>
 md000と指定した場合、モニタのLコマンドで$D000から読み込ませることが可能です。

2.PC8001イメージファイル
t88形式、cmt形式のイメージファイルを指定します。(拡張子を含む)

3.WAVファイル
出力するWAVファイルを指定します。(拡張子を含む)

< BASIC編 >
BASIC編

< マシン語編 >
マシン語編

●pc2wavの問題点

cmt、t88いずれの形式にしても、ヘッダ部まで無条件にWavファイルに変換するため、
変換語のテープイメージファイルからヘッダ部をバイナリエディタで削除しないと
使用することが出来ません。
※t88の場合、wavファイル変換前にヘッダ部を除去しておいた方が楽です。
(ヘッダ構成がcmtに比べて複雑で、タグ単位に長さを管理している・・・。)
また、pc2wavで作成したWavファイル(BASICのみ)をそのままテープイメージ変換ツールで
変換すると、Wavファイルが壊れている(下図)と認識するので、「spwave」を用いて別名で
セーブしてから変換することで、テープイメージに変換出来るようになります。

WAV2T88NG

P6DatRecNG

●P6DatRec(2)による変換手順

ツール入手方法は、前述の「テープイメージ作成方法」に記述していますので、
そちらを参照して下さい。
11025Hz 8bit モノラルのWavファイルを作成します。
同ツール自体、t88形式に対応していませんので注意して下さい。
またN88-BASIC用(1200baud)のため、600baudのデータ(N)は、正しくWavに変換することは
出来ないので注意して下さい。(CMT-TOOLで作成したものは除く)

1.変換対象cmtファイルの拡張子を、cmtからp6に変換します。
2.変換対象p6ファイルをP6DatRecもしくはP6DatRec2(下図)に、D&D
(ドラックアンドドロップ)します。

< P6DatRec編 >
P6DatRec

< P6DatRec2編 >
P6DatRec2

●Wavファイル->テープイメージ変換結果

pc2wavもしくはP6DatRec(2)で作成したWavファイルから、別形式のテープイメージを
作成可能か検証した結果です。(一部簡易にしか検証していないので誤りがある可能性が(爆))
※CMT8001に関しては、変換した音を44100Hzにサンプリング変換してから実行すれば、
理論上可能だが、確実にサンプリング変換が出来るツールが見つからず未検証です。(^^;
 あと、マシン語に関しても一部を除いて未検証です。(手頃なサンプルが・・・(爆))

< P6DatRec(2)で作成したCMTファイル(N88-BASIC 1200baud) >

Wav変換方法 テープイメージ
作成ツール名
変換結果
P6DatRec2 P6DatRec2 ○(当たり前か?)
Wav2T88 ○(byteとblock数が同じファイルが
出来るので、ファイルサイズは×)


< CMT8001で作成したCMTファイル(N-BASIC 600baud) >

Wav変換方法 テープイメージ
作成ツール名
変換結果
pc2wav P6DatRec2 ×(全く別物が出来る)
Wav2T88 △(ヘッダ部がゴミとして残るので、
削除する必要性有。難易度高)
P6DatRec2 P6DatRec2 ○(何故か?可能)
Wav2T88 ○(byteとblock数が同じファイルが
出来るので、ファイルサイズは×)


< CMT8001で作成したCMTファイル(N-マシン語 600baud) >

Wav変換方法 テープイメージ
作成ツール名
変換結果
pc2wav P6DatRec2 ×(全く別物が出来る)
Wav2T88 △(ヘッダ部がゴミとして残るので、
削除する必要性有。難易度高)
P6DatRec2 P6DatRec2 ○(何故か?可能)
Wav2T88 △(途中でReadError発生。望み有?)


< X88000で作成したT88ファイル(N-BASIC 600baud N88-BASIC 1200baud) >

Wav変換方法 テープイメージ
作成ツール名
変換結果
pc2wav P6DatRec2 ×(全く別物が出来る)
Wav2T88 △(ヘッダ部がゴミとして残るので、
削除する必要性有。難易度高)


< CMT-TOOLで作成したCMTファイル(N-BASIC 600baud) >

Wav変換方法 テープイメージ
作成ツール名
変換結果
pc2wav P6DatRec2 ×(全く別物が出来る)
Wav2T88 △(ヘッダ部がゴミとして残るので、
削除する必要性有。)
P6DatRec2 P6DatRec2 ○(何故か?可能)
Wav2T88 ○(byteとblock数が同じファイルが
出来るので、ファイルサイズは×)


結論として、P6DatRec(2)でcmtファイルをWavファイルに変換した後、
t88ファイルに変換する以外は、あまり実用性が無い気がします。


【 テープファイルのFormat 】へ続く



Return