2017/07/06

今更人に聞けないm5のこと

念願のSord m5を入手しておきながら、ベーマガ辺りの投稿プログラムをポチポチ入力するのがかったるくて、エミュレータへ移行しようと試行錯誤したことのメモ(雑)

(以下メモ)

ROMのダンプについて

本体やBASICカートリッジを分解してROMライターで吸い出ししようと考えていたが、BASICコマンドでCPUメモリやVRAMの内容をカセットテープに保存できる様子。

ならばPCに音声データを取り込んでROMイメージを取り出せないか調べていたら、そのものズバリのツールがあるようだ。

BASIC-GのマニュアルによるとSord m5のメモリマップは、
  • 00000h~01FFFh:システムROM(M5 MONITORと呼ぶ?)
  • 02000h~05FFFh:ROMカートリッジ
  • 06000h~06FFFh:リザーブ(用途は?)
  • 07000h~07FFFh:内蔵RAM
  • 08000h~0FFFFh:外部RAM(MAX8KB?),32K拡張ボックス?
…となるようだ。

この範囲をBASICからテープセーブすれば、とりあえずはシステムROM及び、BASICカートリッジの吸い出しが可能だが、 ちょっとBASICのリファレンスが説明不十分に感じた。

BASIC-Gからは
SAVE "ファイル名",<開始アドレス>,<終了アドレス>,<実行アドレス>
BASIC-Iでは
SAVE "ファイル名", <開始アドレレス>,<終了アドレス>,0
…と入力するとBASICプログラムではなく、CPUメモリの内容を保存するようだ。

これで生成された音声データをWAV形式で保存して、前記のリンク先にあるm5wav2cas→cas2binを使用すればイメージデータを取り出せるはずなのだが、そもそものcas形式のテープイメージが作成できず…。

m5のカセットI/Fからの音声データについて

m5に付属のカセットI/FケープルでWindows PCと接続して録音していたが、テープイメージ作成失敗の原因は音量が突然小さくなってしまうことが要因のようだ。

WAV形式で録音できるソフトをいくつか変えてみても状況に変化はなく、Windowsの設定で録音レベルを適正な値に自動調整するような機能があるのではないかと疑ってみたがそのような機能は無し…。

波形表示のできるソフトで確認すると、ランダムに音量変化を起こしている訳ではなく、録音開始から一定の時間で音量が下がり、そこからは一定のレベルとなっていた。
そうすると、端子の接触不良やケーブル半断線などではなく、そもそもそういった信号なのだろうか?

録音レベルを最大にして何回も録音を繰り返すことで、イメージ化できる「事がある」程度であったが、それでもエミュレータで使用できるROMイメージが取り出せた。

でも、経年劣化でm5本体が故障しかかっているのかな?
コンデンサ交換くらいはやっておこうか…。
面倒くさいけど



(追記)

本体改造が必要だが、BASICカートリッジ無しでもmonitorやゲームカートリッジをCMT経由で吸い出せるようなものを作った。

0 件のコメント:

コメントを投稿