cmt8001 近況報告 | 2024.10.23
PC-8001:cmt8001 に戻る |
* ライセンス変更のおしらせ * |
|
2024.07.27 |
プライベート版の配布について |
------------------------------------------------------------------------------ [Release ----] Ver. 7.0.1 2024.10.23 ------------------------------------------------------------------------------ [ライブラリ] ・CmtUtil (Version 6.5.36 → 6.5.37) ・DataFile の解析時に落ちることがあった為対策した ・I:CANVAS.Data も同様の対策を施した - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・今回はサンプル版の配布はありません
[cmt8001] ・前回のサンプル版から変更はありません
------------------------------------------------------------------------------ [Release ----] Ver. 7.b.11 2024.09.04 ------------------------------------------------------------------------------ [cmt8001] ・エミュレータの正式版リリース延期に合わせ、繋ぎのサンプル版を配布します ・サンプル版について テスト期限:2024.09.30 を過ぎると使用できません
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 7.b.10 2024.07.27 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・hal8999.lib 以下のクラスパスを整理した ・オブジェクト配列の自動拡張ミス 影響範囲 : 2024.06.01 の版以降 ・hal8999.util.java2.JClickableMap (Java2版の仮想キーボード) ・hal8999.emu.util.Asm2Obj (Version 1.3.2 → 1.3.3) ・賞味期限の扱い等を変更した (Java2版) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・サンプル版について 評価, テスト用にサンプル版を公開します 使用した場合は必ずメールにて *動作報告* をお願いします (DL報告のみは禁止) テスト期限:2024.08.31 を過ぎると使用できません
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 7.b.9 2024.06.29 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・TapeUtils (簡易解析) ・BASIC:Body の判定方法を調整した ・FskUtil.fsk2cmt (Version 7.b.2 → 7.b.3) ・KCS:110baud のパラメータを 7.b.1 の設定(甘い設定)に戻した - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・サンプル版について 評価, テスト用にサンプル版を公開します 使用した場合は必ずメールにて *動作報告* をお願いします (DL報告のみは禁止) テスト期限:2024.08.31 を過ぎると使用できません
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 7.b.8 2024.04.27 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・TapeUtils ・BOTHTEC88:IPL の解析に対応した - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・変更なし
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 7.b.7 2024.03.30 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・FskEditor ・タグ入力(編集)時の無駄なカンマを整理するようにした ・FskEditorGUI ・右下(ステータスバー)の表示内容を変更した ・コンペアした cmtファイル名を表示するのを止めた ⇒ エラー一覧の先頭行に表示することにしました ・SPACE/MARK の波数と位置を表示するようにしてみた 現状では範囲指定の影響を受けません ・Plugin ・API 仕様精査中 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・変更なし
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 7.b.6 2024.02.24 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・TapeUtils (簡易解析) ・"MONITOR(9801)" の解析に対応した (モニタフォーマット本体) ・表記変更 : "PC-8801:MONITOR" → "PC-88/98:MONITOR" (モニタのヘッダ) ※Cmt2Dir の cas出力では "PC-8801:MONITOR","PC-9801:MONITOR" に区別します ・PC-88/98:MONITOR ・末尾の空白文字を無視することにした (先頭が空白文字だったら加工しない) ・CmtUtil (Version 6.5.31 → 6.5.32) ・表記変更 : "MONITOR(86)" → "MONITOR(9801)" ・PC-8801:MONITOR, PC-9801:MONITOR ・末尾の空白文字を無視することにした (先頭が空白文字だったら加工しない) ・CasUtil (Version 6.6.1 → 6.6.2) ・*BIN の address= オプションに短縮形(addr=) も受け付けるようにした ・Cas2Cmt (Version 6.5.3 → 6.5.4) ・*BIN の address= オプションに短縮形(addr=) も受け付けるようにした ・FskUtil (バージョン変更なし) ・ログのコメント表示桁がずれていた データ部分にアドレスを追加した際に調整するのを忘れていたようです - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・FskEditorGUI ・波形パネルをポイントした際に連動するリストを増やしてみた ※タイトルリスト連動(実装済み)と同様の動作を想定 ・波形パネル ポイント ⇒ 変更点リスト連動 (仮対応) ・波形パネル ポイント ⇒ 低音量リスト連動 (仮対応) 仮対応: 再生時の自動追尾で若干の違和感あり 再生時のポイント指定は離散的なので、無視されてしまう行がある 直前の項目を選択するべきか? ・Plugin ・Java6 だと Plugin が利用可能なクラスかチェックする際に落ちるので対策した ・変更点のリストに表示する行番号がずれていた (fskファイルには影響なし) ・基本的な仕様を詰めた ・編集対象のタグ(範囲)の制限を緩くした 旧:読んだタグのみ 新:最後に更新したタグの後ろから今回読んだタグまで ・FskSequence#read() を呼ぶ前のタグ操作を明示的に禁止した ・EOF通過後のタグ操作を明示的に禁止した ・'-'で削除(無効化)したタグの扱いを決めた デフォルトでは無効化タグは無視し、Pluginには渡しません seek() 時のタグ数のカウントでも無効化タグは無視します Plugin側に PRECESS_REMOVED_TAG = true を記述した場合に限り、無効化タグ をそのまま Plugin に渡します seek() 時のタグ数のカウントでも無効化タグを考慮する必要が生じます ・作業中 ・範囲指定の影響下にあるタグの処理 (仕様は決めた)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 7.b.5 2024.01.27 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・Cassette ・PWM(2400Hz/1200Hz) 対応 (暫定仕様) ・FskUtil (Version 7.b.1 → 7.b.2) ・PWM(2400Hz/1200Hz) 対応 (暫定仕様) ・CmtUtil (Version 6.5.30 → 6.5.31) ・PASOPIA:BASIC の解析に対応した (暫定仕様) ・PASOPIA:MONITOR の解析に対応した (暫定仕様) ・TK-BS:MON/BAS の長いファイル名の省略表記がうまく機能していなかった ・TapeUtils ・PASOPIA:MONHEAD の簡易解析に対応した (誤爆対策) ・PASOPIA:BASHEAD の簡易解析に対応した (Cmt2Dir対策) ・簡易解析をチューニングした : テンプレ確認時に予選実施 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・今回の更新でパソピアのテープが読めるようになったと思います 一応 UIも用意しました カンサス系を想定した読み取り方法なので 2400baud以外もありますが無意味です ・変更点 ・デバッグ出力が残っていたので止めた ・新規ファイルに録音する場合にもタイトルバーにファイル名を表示するようにした ・FskEditor ・サンプルレートが変わった時だけ波形パネルをリセットすることにした ・プラグインに対応した (試作) 定型処理をコード(Java)でやっつけられるようにしてみました ナレーション部分のマスクやボーレート等の自動判別なども想定しています APIがある程度固まるまで公開は見合わせます
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 7.b.4 2023.12.30 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・Wav2Fsk,Fsk2Cmtの変換パラメータを文字列でまとめて設定,保存できるようにした ・サンプル版について 評価, テスト用にサンプル版を公開します 使用した場合は必ずメールにて *動作報告* をお願いします (DL報告のみは禁止) サンプル版では一部の機能が使用できません テスト期限:2024.01.31 を過ぎると使用できません
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 7.b.3 2023.11.25 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・CasUtil (Version 6.6.0 → 6.6.1) ・最近追加した特殊なボーレートの対応を忘れていた ※cmt8001 で出力した cas に情報漏れがあります MY BASIC 4000 : Cassette.BAUD_450, BAUD_900, BAUD_1800 ORANGE : Cassette.BAUD_125, BAUD_250, BAUD_500, BAUD_1000 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・FskEditor 再生中に [X] で閉じた場合、次に開いた時に再生ボタンが停止アイコンになる ・サンプル版について 評価, テスト用にサンプル版を公開します 使用した場合は必ずメールにて動作報告をお願いします テスト期限:2023.12.31 が設定されています 期限後は使用できません
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 7.b.2 2023.10.28 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ・FskEditor ・FSKの編集結果のうち、範囲指定を引き継ぐ仕組みを用意した fskファイル更新時に編集内容に範囲指定が含まれていた場合のみ、同じ場所に 同じ名前の modファイルを出力します 再度 wav2cmtを実行すると fskファイルが一新され、前回の編集結果は消えます FskEditorを開いて modファイルをドロップする事で範囲指定のみ復元できます 編集内容(属性)は FSKデータ(行単位)に付きます フィルタなどの変更で FSKデータ(行)とサンプル位置の対応が変わります 同じ行に復元すると範囲が大きくズレてしまうのでサンプル位置を手掛かりに 近い FSKデータ(行)に復元し、ズレが最小になるように配慮しています 復元する範囲指定は既存のFSKデータの後ろにカンマ切りで配置します ・サンプル版について 評価, テスト用にサンプル版を公開します 使用した場合は必ずメールにて動作報告をお願いします テスト期限:2023.11.30 が設定されています 期限後は使用できません
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 7.b.1 2023.09.30 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・TapeUtils ・簡易解析でBASICファイル名などにゴミが混ざることがあった ・CmtUtil (6.5.26 → 6.5.27) ・整理整頓 (cmt8001 では未使用) ・Cassette ・周波数(変調方式)の違いに柔軟に対応できるようにした ・CasUtil (6.5.3 → 6.6.0) ・-x2 オプションを廃止した ※現状では、casファイルで周波数(変調方式)を指定する手段がありません ・FskUtil.Fsk2Cmt (7.b.0 → 7.b.1) ・不要と勘違いして除去した推測読み用のパッチを戻した (6.6.0 で除去) ・周波数(変調方式)の違いに柔軟に対応できるようにした ・推測読みをしたビット1 の "i" を "!" に変更した 検索時に "skip" の "i" にヒットするので避けていたのを失念していました あわせて、ビット0 の "o" を "@" に変更しました ・WavInputStream ・LPFのパラメータを微調整した 過去に読めたテープが読めなくなっていたら報告をお願いします 再調整します フィルタの強弱や組み合わせを変えて読めた場合はそれで良しとしてください - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・-x2モードを廃止した ⇒ 周波数(変調方式)の「2400Hz/4800Hz」を選択してください ・周波数(変調方式)を選択できるようにした ・「Kansas 1200Hz/2400Hz」カンサスの一般的な周波数 ・「Kansas 2400Hz/4800Hz」旧版の「倍速再生」に相当するもの ・「Kansas 1800Hz/3600Hz」MITEC-85A(オプション) / MY BASIC 4000 を想定 ・「ORANGE 500Hz/1000Hz」ORANGE(COMKIT8062) を想定 ・cfg:FSK 変更 ・FSK:n で周波数(変調方式)毎に設定する ・RecorderGUI ・波形が(他と)逆位相で表現されていたので変更した ・FskEditor ・半波長モード(-phase=2)のとき、表示される周波数が2倍になっていた ・今後の予定 wav2wav,wav2cmtを再実行すると FSKの編集結果が破棄されます 波の位置,範囲が変わるので対応が取れなくなるのが理由です 不便なので、マスクの範囲指定に限りそれなりに復元したいと考えています ・サンプル版について 評価, テスト用にサンプル版を公開します 使用した場合は必ずメールにて動作報告をお願いします テスト期限:2023.10.31 が設定されています 期限後は使用できません なお、FskEditorのドキュメントはありません 質問を頂ければ多少のサポートはしたいと考えていますが、丁寧な説明は無理です 既存のドキュメントに目を通していなかったり、読んでも意味が解らなかった方は 使用をご遠慮ください
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 7.b.0 2023.08.26 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・CmtUtil (6.5.24 → 6.5.25) ・PC-9801:MONITOR, MONITOR(86) の解析に対応した ・LOGiN:MicroMON60「ARIBUNTA MONITOR (LOGiN:1984.4)」の解析に対応した 他機種用のプログラムが含まれたCMTイメージを無加工で使用するための対応です が、TL8404 のA面にはゴミ(首なしBASIC)があるので除外しておかないとダメです ・FskUtil.Wav2Fsk (6.6.0 → 7.b.0) ・閾値を調整した SPACE判定用の低い(波長の長い)音の範囲を外側に広げました ゴミ混入リスク増, ナレーション耐性低下 等が懸念されます - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [fskファイル] ・long/noiz の表現を変更する可能性があります 現状では 'S'PACE, 'M'ARK, それ以外 の3分類なので変更の影響はありません - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [logファイル] ・書式を変更した ・バイトデータのインデックス(cmtファイルのアドレス)を追加した ・推測読みをしたビット1 の "I" を "i" に変更した ビット0 の "o" は変更ありません - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・全般 ・位置を示す表記を変更,統一した fsk行(1~),サンプル位置(0~),サンプル数 ・cfg変更 ・-low → -weak ・GUI変更 SPACE/MARK の閾値の表現を変更してみました ・FskEditor ・再生(音声モニタ)機能を追加した ・cmtファイルを比較して差異を確認できるようにした (バイナリ・コンペア機能) ■ 注意 ■ ・マニュアルは用意できていません ・大量のメモリを消費します 環境によっては Java の起動オプションで -Xmx1g 等の指定が必要になります 長時間のテープや高サンプルレートの場合は 2Gbyte 必要な場合もあります - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.6.3 (試作ブランチ) 2023.08.10 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・文字列処理の実行速度を改善した - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [fskファイル] ・書式を変更した ・音量の警告表示中の tab文字を削除した - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・FskEditor 調整 ・音量が痩せている部分を表示するようにした ・音量が痩せている部分をリスト表示するようにした ・FSK編集後も音量が痩せている部分の情報を残す事にした ・索引選択時の logへのリンク処理を変更した 常に RESULT行をポイントする → [Start]行 / RESULT行 を交互にポイントする ・キーボードによるリスト操作でも関連UIを連動するようにした ・マウスホールで波形パネルの倍率を変更できるようにした (JSlider上で操作) ・全体的に表示を調整して視認性の向上を図った ・省メモリ化を優先して内部設計を見直した
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.6.2 (試作ブランチ) 2023.07.29 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [fskファイル] ・書式を拡張し、置換(範囲)指定を追加した ・"/*" ~ "/" の範囲を * に置き換えます "/b" → "-S,m,m" → "/" では、blank が二重に計上されます(仕様) ・"/s,blank" ... "/m,blank" ... "blank,/" の様な連続指定も可能です "/s,blank" ... "/,/m,blank" ... "blank,/" と同じ意味になります "/s,blank,/" の様な指定も可能です(が意味ないですね) → "s,-blank" ・"/*", "/" 自身は "-" と同じ扱いとします "/blank" とするとその行のサンプル数は *BLANK にカウントされません "/-blank" の場合は "/-,blank" と同じ結果になります ・"s/" の様な無効な "/" 指定は無視します - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [logファイル] ・フォーマットを変更した ・FskEditor が参照する情報を各行の左に配置することにした - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・-mark=-3 を使用できるようにした 使い道は無いと思いますが、直交性に鑑みパラメータを割り当てました ・FskEditor 進捗 ・編集機能を実装した ・プログレスバーを設置した ・省メモリ化などの調整 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.6.1 (試作ブランチ) 2023.06.27 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・TracerGUI (Java2版) エンコード指定を除去している場合でも行番号の表示が 1 からになっていた - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [logファイル] ・フォーマットを変更した ・FskEditor が参照する情報を追加した ・tab文字を除去した
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.6.0 (試作ブランチ) 2023.06.11 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [fskファイル] ・ヘッダを拡張した ・Wav2Wavのパラメータも記述することにしました FskEditorで波形を参照する際に使用します ・書式を変更した ・"skip"(ファイル末尾の不完全な波)を廃止し、"blank" とすることにしました 旧版が出力した "skip" は "blank" として扱われます ・書式を拡張した ・先頭に "-" を付加した信号を無視する仕様を追加した ("blank"ではなく無視) 例 : -noiz5 ・カンマ切りで信号を追加する仕様を追加した 例 : -S,m,m 100 ・有効な blank, noiz, long は、各行に一件としてください (チェックなし) 例(NG) : -noiz,blank,noiz 4800 例(OK) : -noiz,blank 4800 例(OK) : -long,s,s 200 行をずらさずに編集できるようにするのが目的です また、編集の痕跡を残すのにコメント追記が不要になるように配慮しました 例 : S 100 ↓ |→ コメントを残さないと S を削除したことが判らない m 50 S 100 m 50 ↑SPACE判定を MARKx2 に分割 ↓ -S,m,m 100 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [logファイル] ・FskEditorで波形を参照する際に使用することにした FskEditor用の情報が増えています ・エラー報告のフォーマットを変更した 正常にブロックを閉じた場合も同様の情報を出力することにしました 1. エラー種別 : 詳細 ・エラー種別 Cancel ブロック誤認と判断し回復処理を行なった Warning 通常のブロック終了条件が満たされなかった ABEND 継続不可能なエラーに遭遇した NormalEnd 正常終了 ・詳細 エラーと判定した根拠などを記号化して記述 2. エラーの場所に関する情報 2-1. エラーとなったbitの先頭行,サンプル位置 2-2. エラーが確定した行の場所,サンプル位置,サンプル長 [注意] ・2-1,2-2 はハイフンで列挙します ・2-1,2-2 が同じ場合は 2-1 を省略します ・NormalEnd の場合はストップビットの場所 3. "エラーが確定した行の内容" [注意] ・tab文字が含まれます ・NormalEnd の場合は無し - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [casファイル] ・あまり意味のないと思われる出力を抑制した (試行) 過渡期の不安定な部分やナレーションと思われる範囲などを *BLANK にまとめます 特殊な例を除き、テキストエディタで一瞥できる行数に削減されたと思います ・cmt8001で変換後の確認について 「エラーが出なかった」は「問題がない」を意味しませんので注意してください 短い *SPACE,*MARK が連続している範囲は「ボーレートが合っていなかった」等で 正常に変換できていない部分の可能性ががあります ※不安定な部分やナレーションは変換前に削除(無音化)しておくことを推奨します - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・TapeUtils (簡易解析) ・AMDEK:COMPU-MUSIC フォーマット判定ロジックに「サイズ」の条件を追加した ・CarryLab:JE6#Loader ファイル名をうまく取得できないことがあったので対策した ・WaveInputStream ・クラス名を変更した (WavInputStream) ・復調器を WaveInputStreamのサブクラスとしていたが問題があるので変更した ・FskUtil.Wav2Fsk (6.4.4 → 6.6.0) ・落ちた場合 fskファイルを消すことにした ・FskUtil.Fsk2Cmt (6.5.9 → 6.6.0) ・ナレーションなどと推定される部分は Cassetに *BLANK で記録することにした 問題があったら廃止します ・ボーレート等が一致していないと推定される場合にエラーで落とすことにした 厳しく判定するとナレーション部分などで中止されやすいので緩めにしました 「エラーが出なかった」は「問題がない」を意味しませんので注意してください 問題があったら廃止します ・出力メッセージ(ブロック誤認識の事後報告)を変更した ・Reset → Cancel ・ブロック末の警告表示を追加,変更した ・EOF:End → End:EOF ・PE:End → End:P.Err ・FE:End → End:F.Err ・(追加) End:BLANK 何らかの異常でブロックを閉じたとき [End] 表示に警告を付加しています [End:EOF] データ構築中に EOFに達した ⇒ テープ(録音)が尻切れトンボになっている可能性があります (上書きなどで)尻切れになったテープを救うため、異常終了しません [End:P.Err] パリティ[エラーチェックあり] でデータ構築中に エラーを見つけた ⇒ パリティビットが付加されていても利用していないローダーもあります パリティ[エラーチェックなし] でエラーを無視します [End:F.Err] ストップビットが 1bit分に満たないタイミングで SPACEを見つけた ⇒ cmt8001 では常に「Stop:1bit + gap」として処理しています 市販テープではブロック末尾にストップビットがないケースもあります エラーとして処理を中止していませんので確認が必要です 録音状態の問題だった場合、これ以降の解析結果は意味がありません [End:BLANK] ギャップスキップ中に blank等を見つけた ギャップスキップ中に 1bit分に満たない SPACEを見つけた ⇒ cmt8001では常に「Stop:1bit + gap」として処理しています 「ギャップ(MARK)」が規定数続いたら(末尾の「ピー」)ブロックを閉じます BasicMaster など、ブロックEND判定を満たす gapが無いものを救うため、 エラーで処理を中止しないことにしました (Version 6.4.0~) 録音状態の問題だった場合、これ以降の解析結果は意味がありません ・FskEditor (開発中) ・エラーや警告部分の確認と fskファイルへのパッチ当て支援の為のツール ・同じ名前の wav,fsk,logファイルが揃っている場合のみ使用可能 fsk,logファイルは、wavより新しいタイムスタンプのもののみ有効とする ・機能 ・波形(元wavではなく、wav2fsk が見ている補正後の波形) の表示 仮運用 ・データブロックの確認を兼ねたルーラー 計画中 ・logファイルから生成したインデックスによる頭出し 仮運用 ・logファイルの参照画面 (インデックスと連動) 計画中 ・fskファイルの編集機能 計画中 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・コンテキストメニューに Select All, Cut, Copy, Paste を追加した ・テキストボックスの解析パラメータに "-fsk=" が含まれても無視するようにした
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.24 2023.04.29 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・WaveInputStream ・16bit に対応した (モノラル限定は変更なし) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・16bit-mono の wavファイルからの変換に対応した 内部の処理は 8bitのままなので、16bitで録音するメリットはありません 録音や mod.wavの出力は 8bit-mono 限定で変更はありません
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.23 2023.04.01 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・リファクタリング中 ・精査, 実体が伴わなくなっている変数/関数名変更, コメントバグ潰し ・Java2版 ・D&D 操作で固まることがある件 (安定した?)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.22 2023.03.01 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・Java2版 ・D&D 操作で固まることがある(16.0.1@Win10) ので調査した コンソール(種類,使い方)との相性かも... とりあえず皆さんからの動作報告を待って対応を決めます
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.21 2022.12.24 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・cmt8001 に関係する変更はありません - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・賞味期限:2023.01.15 が設定されています
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.20 2022.11.06 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + : ライセンスを変更しました : : 必ず readme.txt を確認し、同意の上で使用してください : + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + [ライブラリ] ・リリース管理方法を変更した - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・賞味期限:2022.11.30 が設定されています
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.19 2022.08.27 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・設定ファイル等に BOM付きUTFファイルを使用できるようにした (UTF-8 のみ確認) *encoding指定が可能なファイルすべてが対象になります BOMは *encoding指定に優先します [参考] CasUtil : Version 6.5.2 → 6.5.3 Cas2Cmt : Version 6.5.2 → 6.5.3 Asm2Obj : Version 1.3.0 → 1.3.1
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.18 2022.08.07 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・FskUtil (6.5.8 → 6.5.9) ・log に生の解析パラメータ (-fsk=...) を出力することにした ・解析パラメータ(2) 無指定部分をスキップするためのカンマが鬱陶しいので対策した id(1~):size のフォーマットでブロックを指定できます ※id が前後して重複する設定がされてもエラーとしません 例: 「9A9A9B9A:9B,2:148,,137」 は「9A9A9B9A:9B,,148,,137」と同じです 「9A9A9B9A:9B,2:148,4:137」は「9A9A9B9A:9B,,148,,137」と同じです 「9A9A9B9A:9B,1:129,,,137」は「9A9A9B9A:9B,129,,,137」と同じです 「9A9A9B9A:9B,129,4:137」 は「9A9A9B9A:9B,129,,,137」と同じです - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・cfg : 解析パラメータの登録可能数を 32件に増やした ・拙作エミュレータと同様の「ユーザーcfg」をデフォルトに変更した 1. cfg が指定された場合はその設定ファイルを用いて起動します 2. 指定がない(存在しない)場合は _cmt8001.cfg (ユーザーcfg) で起動します 3. ユーザーcfg が存在しない場合は cmt8001.cfg を用いて起動します
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.17 2022.03.21 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ライブラリ] ・cmt8001 に関係する変更はありません ライブラリの更新が溜まったので念のためアップデートします
[ライブラリ] ・cmt8001 に関係する変更はありません - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・賞味期限:2022.03.31 を過ぎると起動時に確認が必要になります
[ライブラリ] ・FskUtil (6.5.7 → 6.5.8) ・簡易解析で不明とされたフォーマットの表記を「DataBlk#001~」に変更した ・TapeUtils (旧 CassetteUtils) ・簡易解析 ・「ぐるっぺ」を Tsukumo:Diggie88 と判定しないようにした ・モニタ系フォーマットの表示内容を変更した ・PC-8X01 : 最終アドレスを推定して表示するようにした ・上記以外 : サイズのみを表記することにした ・AMDEK:COMPU-MUSIC に対応した ・I/O:WBYTE に(副次的に)対応した - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・賞味期限:2021.12.31 を過ぎると起動時に確認が必要になります
・賞味期限を設定してみました 2021.12.31 を過ぎると起動時に確認が必要になります
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.13 2021.09.01 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + : ・プライベート版は再配布禁止です : : ・公式版(過去の版も含む)の再配布は自由ですが下記条件を守ってください : : ・再配布はアーカイブ丸ごとに限ります : : 内容を改変したり一部を削除,追加したものは認めません : : ・他のソフトウェアと一体での再配布は認めません : : ・商用のソフトウェアやハードウェアに同梱する形での再配布は認めません : + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + [ライブラリ] ・CassetteUtils ・Tsukumo:Diggie88 の簡易解析に対応した ・Wav2Fsk (6.4.2 → 6.4.3) ・コードを整理した (ロジックに変更はありません) ・fskファイルに Wav2Fsk のバージョンを書いておくことにした - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・波形モニタの表示を調整した
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.12 2021.08.04 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + : ・プライベート版は再配布禁止です : : ・公式版(過去の版も含む)の再配布は自由ですが下記条件を守ってください : : ・再配布はアーカイブ丸ごとに限ります : : 内容を改変したり一部を削除,追加したものは認めません : : ・他のソフトウェアと一体での再配布は認めません : : ・商用のソフトウェアやハードウェアに同梱する形での再配布は認めません : + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + [ライブラリ] ・各種コンバータ類 ・バージョン管理を簡略化した ライブラリパッケージを別途配布することも想定していましたが止めました ・テープイメージ関連 ・クラス構成, クラス名を整理した 昔の単なるコンバータだった頃の名残を一掃しました ・CassetteUtils ・簡易解析の仕様を強化した ひとつ前のデータブロックの情報を利用できるようにしました ・FskUtil (6.5.6 → 6.5.7) ・CassetteUtils の変更に伴う修正
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.11 2021.07.17 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + : ・プライベート版は再配布禁止です : : ・公式版(過去の版も含む)の再配布は自由ですが下記条件を守ってください : : ・再配布はアーカイブ丸ごとに限ります : : 内容を改変したり一部を削除,追加したものは認めません : : ・他のソフトウェアと一体での再配布は認めません : : ・商用のソフトウェアやハードウェアに同梱する形での再配布は認めません : + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + [cmt8001] ・RecorderGUI ・無音判定の目安を表示した 信号のピークが常に緑の線を超えるように音量を設定すれば安全です 赤線は無音判定を緩和した際の閾値です 録音レベルが飽和気味だとミュートしてしまう親切な環境があるようです 大雑把な(大き目の)音量設定が許されない環境の方は参考にしてください ※Wav2Fsk では ・絶対値ではなくピーク間のレベル差で無音判定をしています ・無音判定レベルはテープの状態に応じて動的に変更(緩和)しています ・波形補正には損失がありますので音量が不足する可能性があります ・プリアンプの効果などは考慮していません したがって、画面に表示した閾値はあくまで目安です ・画面を広げた
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.10 2021.03.06 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + : ・プライベート版は再配布禁止です : : ・公式版(過去の版も含む)の再配布は自由ですが下記条件を守ってください : : ・再配布はアーカイブ丸ごとに限ります : : 内容を改変したり一部を削除,追加したものは認めません : : ・他のソフトウェアと一体での再配布は認めません : : ・商用のソフトウェアやハードウェアに同梱する形での再配布は認めません : + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + [ライブラリ] ・CassetteTape ・将来の拡張に備え内部構造を調整した (PCM読み出しモード) 今回の調整では動作に影響(変更)はありません ・WaveInputStream ・将来の拡張に備えクラス設計を変更(調整)した フィルタ類の仕様等に変更はありません ・Fsk2Cmt ・MB-688X:1200.BIN fsk を加工しなくてもデータブロックを認識するようにした ・MB-688X:1200.BAS fsk を加工しなくてもデータブロックを認識するようにした - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [cmt8001] ・今回の Fsk2Cmt のパッチにより 0x00(1byte)のゴミが混入しやすくなりました 必ず log で不審なデータが無いことを確認してください ・GUI ・ボーレートのラジオボタンの不具合FIX カーソルキーで変更した内容が反映されないバグがありました ・キー操作によるフォーカス等を調整した
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.9 2019.12.28 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + : ・プライベート版は再配布禁止です : + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + ・CassetteTapeクラスに修正が入りました cmt8001 では 2019.11.23版のままでも問題ないと思いますが念のため更新します
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.8 2019.11.23 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + : ・プライベート版は再配布禁止です : + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + ・Wav2Fsk ・閾値の変更幅を広くした (-mark=+3 追加) ベーシックマスターL1,L2,Jr を想定した拡張です 他機種ではゴミデータが混入する可能性がありますので使用しないでください -mark=-3 も受け付けますが未使用です (内部で -2 に差し替えます)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.7 2019.03.02 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + : ・プライベート版は再配布禁止です : + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + ・CassetteTapeクラスに修正が入りました cmt8001 では 2019.01.26版のままでも問題ないと思いますが念のため更新します ※ベーシックマスターの1200baudROM が出力するフォーマットのように MARKなしで始まって MARKなしで終わるものはうまく変換できないかもしれません 利用実態によっては何らかの対策をしますので情報提供をお願いします
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.6 2019.01.26 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + : ・プライベート版は再配布禁止です : + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + [ライブラリ] ・CmtUtil ・CMTイメージの簡易解析を調整した HudsonCOMPAC:FORM/PC の判定基準を厳しくしました TK-80系のHEX出力に反応してしまうことがあったので対策しました
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.5 2018.11.20 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + : ・ライセンス変更のおしらせ : : バイナリにRelease番号の無いものは「プライベート・リリース」とします : : プライベート版添付の readme.txt 中のRelease番号は無効です : : プライベート版は再配布禁止とします : : プライベート版は開発に積極的に関与していただける方にのみ配布します : + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + ・Fsk2Cmt ・ベーシックマスター対応パッチの適用条件を厳しくした 一定数のMARKによる同期なしでスタートビットが出現するタイプを拾う 「データブロック開始条件緩和パッチ」に「300baud限定」を加えました ベーマスの「1200baudROM」対応時に制限方法を変更する可能性があります Carry soft.「TS-8801」がゴミの混入無く一括で変換できます(要limit指定) [お願い] ・ベーマスの「1200baudROM」をお持ちの方は情報提供をお願いします
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.4 2018.10.27 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ・Wav2Fsk ・FSK解析を打ち切るエラー数を cfg:Wav2Fsk.-abend で設定できるようにした 起動後は変更できません ・Fsk2Cmt ・推測読み(拡張版)の表記を変更した (例 : *110baud → **110baud) ・**110baud の解析パラメータを調整した (未FIX / 半波長モードは未調整) ・スタートビットも「推測読み(拡張版)」の対象とした ・CassetteTape ・PCM読み出しモードを修正した 実装が雑なまま終わったつもりになっていました ※cmt8001 では使用してないモードですが念のため - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.3 2018.10.09 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ・Fsk2Cmt ・110baudに対応した 1bit当たりの SPACE/MARK 波数が不定のものが多いようなので 「推測読みモード(拡張版)」のみの対応としました SPACE/MARK 切り替え時の位相が不連続の物には対応していません ・「推測読みモード」をオープンにした MARKの波数が 1bit分 に若干不足する場合でも bit:1 とします 詳細はこのドキュメントを「推測読み」で検索してください 特定のエラーを意図的に無視するモードのため非推奨です GUIにはありませんので FSKパラメータで指定してください 採用モード : *600baud ・「推測読みモード(拡張版)」を追加した 「推測読み」と同様の補正を SPACE(bit:0) にも適用します また MARK(bit:1) の許容範囲を広めにしています 許容範囲を決めるパラメータはボーレート等により内部で固定です GUIにはありませんので FSKパラメータで指定してください 採用モード : *110baud ・cfg ・FSKパラメータに変更があります
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.2 2018.04.09 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ・Fsk2Cmt ・FSK パラメータ先頭の ":" を省略可能にした ":" のスタックが無いときに "<" を見つけた場合は先頭に戻ります
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.1 2017.12.30 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ・ライブラリ整理に伴う更新 クラスパスを変更したので再ビルドしただけです
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [Release ----] Ver. 6.5.0 2017.11.17 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ・150baudに対応した ※-fsk パラメータのビットの意味に変更があります
・ライブラリの改修に伴う更新です cmt8001 には影響ない筈です 以前と違う挙動をしたらバグですので報告をお願いします ・ORANGE(COMKIT 8062) のテープイメージは作成できません
・CassetteTape クラスを大改修したので更新します cmt8001 には影響ない筈です 以前と違う挙動をしたらバグですので報告をお願いします
・Wav2Fsk ・MARK/SPACE の閾値を調整できるようにした プリセット5パターンからの選択となります ・Fsk2Cmt ・MARK なしで始まるデータブロックに対応した 先頭データの最初の bitが MARK で始まるケースのみを対象とします BLANK→SPACE(1bit分)→MARK の場合のみ、SPACE先頭に遡ってブロックとします ・MARK なしでいきなり終わるデータブロックでもエラーとならないようにした ・MARK → BLANK等 ・MARK → SPACE(x1) → BLANK等 (※SPACE は MARK として記録します) エラーを見逃しやすくなってしまうので、ストップビットの後ろに 1bit程度の MARK を必要としました ・GUI ・FSKパラメータ欄のサイズが狂う問題FIX L&Fによりサイズを固定すると福作用の方が問題が大きいため放置していました ・[Tab] によるフォーカス遷移が効かない部分にパッチを当てた
・Fsk2Cmt ・FSKファイルを編集した痕跡の表示を調整した スタートビット部分を編集した場合、ログのフォーマットが崩れていました
・テープイメージを拡張した CASファイルにも若干の拡張があります ・SPACE=2400Hz, MARK=4800Hz の FSKフォーマットに対応した 「半波長モード」は非推奨となります (時間精度が不足する為再現性が若干落ちる) FSKファイルにも若干の拡張があります ・cfg:-baud=m の指定方法を変更した -x2モードで混乱するので、ボーレートの生の値を用いないことにしました ・FSKパラメータ欄(ポップアップ)の動作を変更した 常にクリア&Paste → 挿入(選択範囲上書き) としました ・FSKパラメータ欄(ポップアップ)にクリアコマンドを追加した ・GUIを整理した ・ボーレートの表現を調整した ・マウスオーバーでアイコン画像が意図しない変化をしてしまうL&Fの対策をした ・フォーカスをアイコン画像のみで表現しているL&F向けの対策をした icon にフォーカス表現を追加しました ボーダーでフォーカスを表現しているL&Fで邪魔にならない様控えめにしました ・L&F側のデザインをなるべく生かすよう調整した
・Fsk2Cmt FSKパラメータの仕様を変更した 第二パラメータの仕様を変更しました 旧:無指定または正の値を指定可能 0 を指定した場合は「無指定」とする 1以上の値を指定した場合、そのサイズでブロックを閉じる またその場合、次のブロックの同期手順を省略する 新:無指定または正,負の値を指定可能 0 を指定した場合は「無指定」とする 0以外の値を指定した場合、そのサイズ(絶対値)でブロックを閉じる 負の値を指定した場合、次のブロックの同期手順を省略する ・備考 ・cfg に第二パラメータの説明が無かったので追記しました ・フレーミングエラーを起こすデータ(部分)のイメージ化については、 今後仕様を変更する可能性があります
・Fsk2Cmt Ver. 6.2.1 でのエンバグをFIX
・Fsk2Cmt ブロック開始(スタートビット同期)条件を調整した
・Fsk2Cmt ・「キャラクタ長:5,6,7ビット」に対応した CASファイルの *USART のパラメータに追加があります 過去に作ったCASファイルは変更せずに使用できます ・フレーミング・エラー時の処理を整理・変更した 今までは CMTファイルに手作業でパッチを当てるか、FSKファイルに手を入れて ストップ・ビットを補完して無理やり変換するする必要がありました 今回の変更で、それなりに自動化できるようになったと思います ※生情報だけでは「フレーミング・エラー」なのか「ゴミ」なのか判りません この部分はローダーが読んでいなかったり、読んでいてもエラーチェックして いないことが多いようです データブロック中では「0:00000000:S」を除き、データとして拾うように しましたので、ローダーがつまづくゴミデータがあったら「サイズ指定」 で除外してください ・データ・ブロックのサイズ(上限)を指定できるようにした データの区切りを自動判別できない極めて特殊なフォーマット用のパッチです [注意] フレーミング・エラーに寛容になったので ■ 吸出しに失敗しているのにエラーが報告されない ケースが増えました 必ず LOG を確認して、 ■→「skip SPACE」,「skip MARK」が不自然に連続している 部分がないか確認してください この問題は、なんらかの原因でデータブロックを閉じてしまった後に、 次のデータブロック(トリガ+START)の同期が(すぐには)取れないことで生じます ・cmt8001のロジックでデータブロックの終わりを検知してしまった → 吸出し設定ミス(ボーレートのことが多い)による gap(MARK)誤認識 ・フレーミング・エラーでデータブロックを閉じてしまった → ストップビットのビット化けによる「フレーミング・エラー誤判定」 以前は「異常終了」の対象でした 吸出し設定が違っていた場合、 ■→ データブロックの先頭での「キャンセル」が続く ■→「キャンセル」や「skip」で細切れになる (欠損が生じる) といった問題も生じますので、吸出し後の LOG の確認が重要になります
・Wav2Fsk ・無音レベルの閾値を動的に調整するようにした 部分的に音量が低下しているケースに強くなりました このロジックで SPACE, MARK を認識した場合はコンソールに警告を表示します fskファイルにもコメントを残します (「@」で検索可能) logには痕跡を残しません ・プリアンプ機能を追加した 副作用があるので、ドキュメントを読んで理解したうえで使ってください ・コードを整理した ・Fsk2Cmt ・最後の BLANK が log に出力されないバグFIX (cas には問題ありません) ・log出力を調整した [Start] に fsk, wav の位置を追記しました ・コードを整理した
・Wav2Fsk ・コンソールへの blank, noiz, warning の出力をやめた ・簡易なプログレス表示を追加した
・Fsk2Cmt ・データブロックの終了判定基準を変更した 「データブロック」の概念は cmt8001 独自のものです ゴミデータを拾いにくくする目的で設けています ・FSKコードのエラー処理を強化した ">", ">?" で終わるコードで落ちないようにした ・Cmt2Cmt ・dB-SOFT:FLAPPY88 の解析に対応した
・CmtUtil ・「HudsonCOMPAC:FORM/PC」に対応した ・Cmt2Cmt (cmt8001 では影響なし) ・「HudsonCOMPAC:FORM/PC」に対応した ・「ASCII:PASCAL-PC」に対応した ・「BondSoft:YAMETE!!」を微調整した ヘッダの後ろの MARK を 300tick → 200tick に変更 セーブデータのアドレス表示が前後ブロックで入れ替わっていたのを修正 ・Ipl2Cmt (cmt8001 では影響なし) ・上書きしてしまうBASICのワークエリアを、リセット直後の値とした
・ソースの文字コードを Shift-JIS から UTF-8 に変更した ・ライブラリ類最新版を反映 ・内部設計調整・リファクタリングなど
・終了処理の一部を見直した 「モニタなし」で録音中に [X] ボタンなどで終了させた場合、安全に録音処理を 完了させるための処理で、sleep(1) していたのをsleep(10) に変更しました 今までのバージョンでは、環境によっては上記条件でシステム時計が若干狂うこと があったかもしれません (未確認) [MEMO] ・Win32API の問題のようです (http://support.microsoft.com/?id=821893) ・今回の修正は場当たり的なものです ・システム時計の問題を完全に解決できたか確認できていません
・録音時のサンプルレートを cfg で設定可能にした ※cfg に変更があります ・RecorderGUI 廃止 ・Recorder-gui=<0,1> 追加 ・録音「ダイアログ(GUI)あり」の機能追加,変更,バグFIX ・「新規」録音終了直後、メイン画面の操作を可能にした ・[X]で閉じなかった (キャンセルできなかった) のを修正した ・録音モニタを追加した (録音開始前からモニタ可能) ・リサイズ不可にした ※このモードでは独自実装の録音コードを使います これは J2SE1.5 でデータロスが起きたため使用を止めていたものです うまく録音できない場合は、「ダイアログなし」でお使いください 「ダイアログなし」では Java API のストリームを直結しています モニタはできませんが、トラブルは少ないと思います ・cmt8001GUI#getUSART() ・パリティなし+「□パリティチェック」にチェックがある場合、 FSK のコードに余分なビットが乗ってしまっていた (副作用なし) ・Fsk2Cmt ・パリティ矛盾 → ブロック終了時に計上する「ゴミ」から パリティビットの分が落ちていたのを修正した ・フレーミングエラー時に「キャンセル」する処理を厳密にした 旧:パリティビットを無視して 0x00 ならエラーで中止しない →「パリティビットも0」としてキャンセルした SPACEの数を計算していた Start=0:00000000:Pbit=1:Stop=0 の場合wavの状態を再現できない 新:パリティビットを含んで 0x000 ならエラーで中止しない ・CasFile ・Cassette.PBIT_ERROR が立っている場合の扱いを変更した → 警告付きでコメントアウトする (「パリティなし」になる) ・R6b2 :「パリティなし」とする ・R6b3 : 直前のデータまででブロックを閉じる ・R6b4 :「パリティあり」のまま警告表示をする ・R6b5 : 警告表示をして「パリティなし」とする - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ・コンバータ全般 ・表記を全面的に見直し「固定ボーレート,パリティあり」の部分を明示した ・Cmt2Cmt ・CarryLab:JE6#Loader ・テンプレを変更した (Cassette.BAUD_USER → Cassette.BAUD_1200) ・CarryLab:JE6#Data ・再チェック時、0byteブロックの処理を修正した (結果は合っていた) ・再チェック時の「ゴミ」の扱いを変更した (FMT_UNKNOWN ブロックに分離) ・BondSoft:YAMETE!! ・仮FIX ・「ファイル名」表示を復活した (デコード処理追加) ・セーブデータ(ヘッダは同じ)の解析処理を追加した ・再チェック部分(汎用)を修正した (実害はなかったハズ) 前後に組み入れた「不明ブロック」の影響でメインパートのサイズが狂う → それぞれ先頭パート,最終パートのサイズに反映されるように修正した ・CmtUtil ・BondSoft:0x3A に対応した 「TIME SECRET(8801)」 ・BondSoft:YAMETE!! の判別ロジック変更&ファイル名表示を追加した ・CarryLab:JE6#Loader に対応した ・CarryLab:JE6#Data に対応した (ヘッダのみ)
・録音時のサンプルレートを cfg で設定可能にした ※cfg に変更があります ・RecorderGUI 廃止 ・Recorder <sampleRate> -gui=<0,1> 追加 ・録音「ダイアログ(GUI)あり」の機能追加,変更,バグFIX ・「新規」録音終了直後、メイン画面の操作を可能にした ・[X]で閉じなかった (キャンセルできなかった) のを修正した ・録音モニタを追加した (録音開始前からモニタ可能) ・リサイズ不可にした ※このモードでは独自実装の録音コードを使います これは J2SE1.5 でデータロスが起きたため使用を止めていたものです うまく録音できない場合は、「ダイアログなし」でお使いください 「ダイアログなし」では Java API のストリームを直結しています モニタはできませんが、トラブルは少ないと思います ・cmt8001GUI#getUSART() ・パリティなし+「□パリティチェック」にチェックがある場合、 FSK のコードに余分なビットが乗ってしまっていた (副作用なし) ・Fsk2Cmt ・パリティ矛盾 → ブロック終了時に計上する「ゴミ」から パリティビットの分が落ちていたのを修正した ・フレーミングエラー時に「キャンセル」する処理を厳密にした 旧:パリティビットを無視して 0x00 ならエラーで中止しない →「パリティビットも0」としてキャンセルした SPACEの数を計算していた Start=0:00000000:Pbit=1:Stop=0 の場合wavの状態を再現できない 新:パリティビットを含んで 0x000 ならエラーで中止しない ・CasFile ・Cassette.PBIT_ERROR が立っている場合の扱いを変更した → 警告付きでコメントアウトする (「パリティなし」になる) ・R6b2 :「パリティなし」とする ・R6b3 : 直前のデータまででブロックを閉じる ・R6b4 :「パリティあり」のまま警告表示をする ・R6b5 : 警告表示をして「パリティなし」とする - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ・コンバータ全般 ・表記を全面的に見直し「固定ボーレート,パリティあり」の部分を明示した ・Cmt2Cmt ・CarryLab:JE6#Loader ・テンプレを変更した (Cassette.BAUD_USER → Cassette.BAUD_1200) ・CarryLab:JE6#Data ・再チェック時、0byteブロックの処理を修正した (結果は合っていた) ・再チェック時の「ゴミ」の扱いを変更した (FMT_UNKNOWN ブロックに分離) ・BondSoft:YAMETE!! ・仮FIX ・「ファイル名」表示を復活した (デコード処理追加) ・セーブデータ(ヘッダは同じ)の解析処理を追加した ・再チェック部分(汎用)を修正した (実害はなかったハズ) 前後に組み入れた「不明ブロック」の影響でメインパートのサイズが狂う → それぞれ先頭パート,最終パートのサイズに反映されるように修正した ・CmtUtil ・BondSoft:0x3A に対応した 「TIME SECRET(8801)」 ・BondSoft:YAMETE!! の判別ロジック変更&ファイル名表示を追加した ・CarryLab:JE6#Loader に対応した ・CarryLab:JE6#Data に対応した (ヘッダのみ)
R4.0まで: | MARKが一定数続いたらスタートビット検索開始 |
R4.1,2: | MARK 1波 でスタートビット検索開始 |
R4.3: | SPACEが一定数続いたら、MARK 1波 でスタートビット検索開始
MARKが一定数続いたらスタートビット検索開始 |
fskを修正したときのlogの例:| 0:01010010:1 -> 74 | skip MARK(4) | 0:00010110:1 -> 104 | skip MARK(4) | 0:01100001:1 -> 134 | skip MARK(4) | 0:10111101:1 -> 189 | skip MARK(4) modified:59336:59337 | 0:00010110:1 -> 104 | skip MARK(4) |
■補正前 * * * * * * * * * * * * * * * * * * * * ** ――――*―――――*―*――――――――*―――――*―――――*―――**―――――― * * * ** * * * * * * * * * *** ** ** ** ■補正後はこんな感じ (ホントはもっとキレイ?) * ** * * * * * * * * * ** * * * * ** ――――*―――――*―*――*――*―*――――――*――――――*―*――*―*――* * * * * ** * * ** ** * * ** **** * |