壊れたフロッピー2017年07月16日 22:35

めずらしく中古のプログラム集(3.5インチフロッピーx3)を手に入れることができた。
さっそく動かそうと思った所、全く動作しない不良品だった。
症状は、ドライブにセットしても異音がするばかりで回転しないというもの。
3枚が3枚とも同様の症状でNG。
保管状態がかなり劣悪だったと思われる。

記録面をよく見ると染みのようなものがあちこちに。
カビだろうか?
まあ、古いものだしこういう事もあるよね。

とはいえ、このまま諦めるのも癪なので、アルコール(50%イソブロピル)を浸した綿棒でフロッピーのフィルムの表面をこすってみた。
なんか、綿棒が茶色になるんだけど…

何度こすっても色が付くし、表面の汚れが取れない。
擦れば擦るほど、汚れを広めているだけのような気がする。
これは、カビではなく煙草のやにかなんかではないだろうか?

2日ほど綿棒でこすっても全く状況が改善しないので、思い切って別の手を試すことに。

1・異常なフロッピーを分解
2・フィルムを取り出し、台所用中性洗剤と水道水で洗浄
3・乾燥
4・正常なフロッピーも同じく分解し、洗浄したフィルムと交換

としてみた。
中性洗剤を付けて指の腹で丁寧に擦って水道水で洗い流し乾燥したところ、染みのようなものはきれいに消え去った。
そして、読込を試したところ、なんと3枚中2枚はデータのサルベージに成功した。
残る一枚は44ファイル中40ファイルの救出に成功。
4ファイルはどうにもならなかったけど、諦めることを考えれば上出来。

他人にお勧めができる方法ではないと思うけど(一歩間違えれば止め刺すだけだし)、こんな方法もあるということで。

モニタ表示遅延測定支援プログラム2017年06月28日 22:55

なんか、仰々しいタイトルになった…

1chipMSXのLEDを利用してモニタ表示遅延を測定してみようという意図のプログラム。
モニタに表示した値を1chipMSXのLEDを利用して2進数表示します。
モニタ側に遅延が発生していると、モニタに表示した値とLEDが示す値に差ができるはず。

1chipMSXのLED部分を拡張したpof及びpldファイルと、画面とLEDに値を出力するMSX-DOS用のプログラム、実機用に画面とプリンタポートに値を出力するプログラムのセットです。

ダウンロードはこちら

SCART-HDMI変換アダプタ ― その42017年06月25日 23:53

にがさんに頂いたヒントを元にSCART-HDMI変換アダプタの画像遅延を調査するプログラムを組んでみた。
方法はMSXのタイマ割り込みを利用し、画面に数字を表示するのと同時に8セグメントのLEDを光らせて、その差異を確認しようというもの。
元々のにがさんのアイディアではプリンタポートを利用すればとの事なのだが、プリンタポート用のコネクタがないので信号線の引き出しが面倒。
と、考えてみればLED光ればいいなら1ChipMSX使えばいいんじゃないかと思い立ち、FPGAのカスタマイズとMSX-DOS用の簡単なカウントプログラムを作成してみる。

まず、FPGAをいじってIOポート0を拡張。IOポート0への書き込んだ値に応じて本体LEDが光るようにする。
MSX-DOS用のカウントプログラムは取り敢えずFC9EHのカウンタの値をそのまま利用して、画面に10進数で表示するのと同時にIOポート0に書き込んでみた。

で、本体LEDとモニタ画面を同時に撮影し、差異を確認。
遅延があるならモニタ側の数値が小さく表示されるはず。

※赤LED側が下位ビット
画像遅延検証 lcd-8000v
lcd-8000v(1chipMSXの出力は31KHz)
画面の値は232、LEDは11101001で233。


画像遅延検証 ノーマルモード
Panasonic TH49-DX600のノーマルモード(1chipMSXの出力は15KHz)
画面の値は18、LEDは00011111で31。


画像遅延検証 ゲームモード
Panasonic TH49-DX600のゲームモード(1chipMSXの出力は15KHz)
画面の値は159、LEDは10100111で167。

差異をまとめると

LCD-8000V       1
TH49-DX600のノーマルモード 13
TH49-DX600のゲームモード   8

タイマは1/60secなのでそれぞれ*1/60して

LCD-8000V       0.0166…
TH49-DX600のノーマルモード 0.2166…
TH49-DX600のゲームモード   0.1333…

音声側の確認結果と大体一致してる?

実機でのテストは「さろんdeねくすたぁ~」を利用すればICソケットとLED、後は抵抗あればテストできそう。
 →マニュアル読んだらSPIだといろいろ面倒そうだ。
  普通にスロットから信号線出せばいいだけか。以前購入したスロットの外出し基盤の出番だな。


※やってみて思ったけどし、写真の写りがよくない。
※LEDの残光で値の読み取りがかなり困難。デジカメの設定でどうにかなるのかな?

SCART-HDMI変換アダプタ ― その32017年06月18日 21:49

簡単に遅延を測定してみた。
画像で確認するのは大変そうなので、変換アダプターのイヤホンジャックとテレビのイヤホンジャックから出る音声での確認。
モノラルx2をステレオに変換するコネクタを利用してWindows機で録音の後、SoundEngine Freeにて左右のチャンネルの差異を確認。
今回はMSX(A1-ST)の起動音でテストした。

SCART-HDMI音声遅延(ノーマル)
テレビの画像モードがノーマルの場合、約0.2秒遅延

SCART-HDMI音声遅延(ゲーム)
テレビの画像モードがゲームの場合、約0.15秒遅延

音声のみの比較なので、あまり正確ではないだろうけど、予想通り結構な遅延が発生している模様。
アクションゲームやシューティングやるのは結構大変かも。

スーパーマリオは結構死にまくる…

6/24 キャプチャ画像追加

SCART-HDMI変換アダプタ ― その22017年05月03日 23:51

MSXが絶不調だったんだけど、メモリ増設部分のはんだ付けをし直したところ復調した。
で、SCART-HDMI変換アダプタの解像度切替を試していたら前項の表示可能なモードに誤りがあったので改めてまとめ表記。
ただし、あくまでうちの環境であることに注意。

モニタ:家庭用テレビ Panasonic TH49-DX600
接続:[MSX(A1ST)]-[SCART-HDMI変換アダプタ]-[Panasonic TH49-DX600]
動作モード表示  4:3表示
1080p/60Hz可(※1)
720p/60Hz可(※1)
1280x1024/60Hz不可不可
1024x768/60Hz不可
800x600/60Hz不可不可
1080p/50Hz可(※1)
720p/50Hz可(※1)
※1:4:3表示可能なのはTV側入力モードがノーマルの場合のみ。

モニタ:PCモニタ RDT-241WEX
接続:[MSX(A1ST)]-[SCART-HDMI変換アダプタ]-[RDT-241WEX]
動作モード表示  4:3表示
1080p/60Hz不可
720p/60Hz不可
1280x1024/60Hz可(※2)
1024x768/60Hz可(※2)
800x600/60Hz可(※2)
1080p/50Hz不可
720p/50Hz不可
※2:4:3表示可能なのはモニタ側画面モードがリアルかアスペクトの場合のみ。

SCART側
8ピン(ワイドスクリーン切替):GND
16ピン(RGB・コンポジット切替):75Ω経由でVCC

あと、HDMI出力は音声のチャンネルが左右逆になっている模様。
ただし、ミニジャックは正しく出力されている。