aruto's diary

Since 2003

1chip MSX あれこれ ( MSX2+ へのアップグレードとか )

若干今さらですが 1chip MSX を最近手に入れたので、それについてあれこれ。1chip MSX まとめ的な。
まあプレミア価格でしたよ!しょうがないんですけど!ただ一般的な市場価格よりはけっこう安かったようで ( 秋葉原の BEEP や、ヤフオクよりは安い値段 )、まあこのくらいならいいかな……。
自分用備忘録も兼ねて、順次、内容を一部アップデートしています (2017/3、2017/4)

  • SD カードはものすごく便利

感覚としては、ハードディスクを搭載した PC-98 を DOS で使っているのに近いです。アクセス速度も速いです。……といっても実機のフロッピーディスクとの比較ですし、そもそも転送速度が遅いので、たとえば MSX-FAN が 1 秒で起動したりするほど速くはないです ( たしか MSX 仕様の制限で数百 kbps だったような…… ) 。
容量は 2GB の物まで使えるので、MSX で使う限りにおいては事実上容量は無制限と言っても良いんじゃないでしょうか。容量より先に、1 ディレクトリあたり 112 ファイルの制限のほうにひっかかると思います。
オリジナルの MSX-DOS2 は FAT12 ですが、添付 CD-ROM に FAT16 に対応したバージョンが入っているので、それを使いましょう ( これを使わないと、空き容量の表示がおかしくなる ) 。

まず A:\DOS\ によく使うコマンド(ディスクイメージの読み込み用とか)とバッチファイルを入れておいてパスを通す (SET PATH)、A:\DSK\ にディスクイメージを保存しておいて、コマンドでマウントして実行する、ような感じの運用になります。これがフロッピーディスクの代わりになります。
たとえば、EP MFAN30*.DSK /B /R とすると、MFAN30A.DSK のディスクイメージをマウントし(キー操作で MFAN30B.DSK に切り替え可能)、再起動がかかります。これでゲームも動きます。電源を切るまで有効です(リセットしてもそのまま)。

SD カード自体の耐久性がそれほど高くないので、たまにバックアップを取っておくと良いでしょう。また SDHC でない SD カードも徐々に取扱店舗が少なくなってきているので、予備があったほうがいいかも。

1chip MSX が「CD-ROM 欠品」で販売されている事があるかと思いますが、MSX-DOS 2 がないとかなり使い物にならないので、注意して下さい。( DOS2 の入っている ) MSX-FAN の付録ディスクでもいいですけど。
MSX-FAN 付録ディスクの DOS2 を使う場合、下記の FAT16 パッチがあったほうがいいかもしれません ( 試してないので使えないかもしれません )。
http://www.ucatv.ne.jp/~kmizuo/fat16/down.html

  • SCC音源内蔵

でも試した限りだと鳴らなかったです。
どうも「似非SCC」がベースのようで、スナッチャーとかでは鳴るけど、M.K BASIC とかでは鳴らないとのこと ( もともと M.K BASIC は似非 SCC に対応していない )。
MusicA でも鳴らなかったんですよね。ゲームよか、作曲というか…素材用の音の収録に使いたいんですけど。なんとかならないかなあ ( PC 用ゲームを作るとき、効果音 ( SE ) や ME に MSX の音源を使う事があるんです。その用途で MSX はまだゲーム以外でも現役 )。
勤労5号なら鳴るのかな?(まだ試してないです)

  • ゲームパッドがかなりレア

アタリ仕様のジョイパッドですが、中古で安くても 3000 円くらいします。マウスなんかはもっと高い(あんまり使わないですけど)。しかもそれで状態もあまり良くなかったり。ちょっとやってらんないですね(古いから仕方ないんですけど)。
メガドライブのパッドを改造して MSX 用にできるらしいんですが、試した事はないです。値段・耐久性・操作性を考えたらこっちのほうがいいかも。
ただし、そのまま繋げても 1 ボタンのパッドとしてなら使えるようです。パワーアップなし縛りでグラディウスをプレイしたい方はどうぞ。アセンブラファイターならいけますね。

  • 一部非互換あり
  1. FIELD 命令は使えません (これで動かないソフトがほどほどにある)。
  2. メモリのフリーエリアがちょっと少ないです(たまに BASIC だと Out Of Memory で動かないプログラムがある)。
  3. 日付・時刻、SET ADJUST の情報などは、電源を切ると初期化されます。まあ電池ないですし。
  4. 他にもあるかも……。
  • コンポジット端子の映像出力品質はかなりひどい

たとえば、スクリーン 5 で白い縦線を表示させると、座標によっては線が赤色で表示される程度の品質。テキストが正常にテキストとして表示されない(部分もある)レベル。
実機もそんな良いもんじゃなかったですが、これは実機よりだいぶ酷いですね。S 端子で接続すると別物の画質になるので、画質が悪いのはコンポジット出力時に限った事のようです。
S 端子か VGA 端子での接続をお勧めします。

  • MSX2+ 相当にアップグレードできる

HRA! 氏の公開しているデータを使用して、MSX2+ 相当にアップグレードできます。
というわけで、してみました。まあ MSX2 → 2+ 相当だとそこまで変わらないんですが ( 漢字 BASIC が使えるのが大きいくらいか )、問題点が解消されたり、便利になったりします。

  1. ハードウェア自体が MSX2+ 相当になります ( 起動ロゴも MSX2+ 仕様 )
    SCREEN12 が使えます。
    _KANJI、漢字入力モード、漢字入力/変換等が使えます ( オリジナルでは漢字 ROM のみ )
  2. RAM が 4MB に増えます。
  3. 動作中に F12 キーを押すと、CPU 速度を変更できるようになります ( 3MHz ←→ 10MHz )
  4. LED が無意味にチカチカしなくなります。
  5. 右端の緑色 LED が、SD カードのアクセスランプになります。
  6. 電源 LED がアクセスランプ兼用ではなくなります(電源ランプ、アクセスランプ、個別になる)。
  7. SCC 音源を 2 個内蔵できるようになります ( もともとは 1 個 )。
  8. 電源を入れたあと、起動まで時間がかかるようになる
    ここだけマイナスポイント。要注意。時間はバージョンによって異なる? 5 秒 ~ 15 秒程度です ( 開発版を使用した時は長くかかった )。

開発版 ( 2008/7/12 ) は PSG 音源が 1 チャンネル鳴らない不具合があるので、安定版の使用をお勧めします。2008/5/31 版については確認していません。
http://www5d.biglobe.ne.jp/~hra/note/onechipmsx/

1chip MSX の、MSX2+ へのアップデート方法
まず、お金の掛からない方法としては、実機の MSX-DOS から、pldload コマンドを使って書き込むやり方があります。ただし書き込みミスがあった場合、もう起動できなくなりますので ( MSX-DOS が起動できなくなると、もう何もできない…… )、リスクを伴う方法です。
お金がかかってもよい方は、ダウンロードケーブルを使うとよいでしょう。この場合は MSX-DOS が起動できなくても良いので、なんとかなります。ただしケーブルはかなり高いです。これケーブルの値段か!?と思うくらい。
私はリスクを承知で「お金のかからない方法」を選びましたが、まあ成功して良かったです(最初の起動にえらく時間がかかったので、壊れたのかと肝を冷やしましたが……)

※この記事を読んで書き込みを実行して、もしお手持ちの 1chip MSX に故障などの問題が発生しても、当ブログは責任を負いません。誰かに責任を負ってほしい方は、アップデートを実行しないでください。MSX2 のままでもいいじゃないか!
こういう事を書いておかないと「おまえの解説記事のせいでパソコンが壊れた!責任をとれ!」と言ってくる人が本当にいるのです。まあ書いてても来るんですけど。そもそも解説しないのが最善の解決方法ではありますけどね。

  • 意外と発熱に弱い……らしい

長時間稼働させていると、本体裏が熱を持つことがあります。
どうも 1chip MSX は熱に弱いらしく、熱を持った状態で 24 時間連続稼働など負荷の掛かる事をやると、そのまま壊れる事があるようです。
扇風機の風を当てるとか、たまに電源を落とすとか、そういった対策は必要かもしれません。
買い直すと高いので大事にしましょう!!すでにプレミアアイテムです。

  • CPU 10MHz 駆動について

10MHz 駆動については、わりと色んなソフトでちゃんと動くのですが、一部正常に動作しなくなるソフトもあります。
特に音楽ドライバ系。M.K BASIC で鳴っていた音楽が一部トラックだけズレたり ( たまにしか起きません )。
クロックアップに不具合はつきものなので、しょうがないとは思います。

  • USB キーボード・USB ゲームパッド・USB マウス等は使えるの?

まず、現時点では使えません。1chip MSX に USB コントローラ自体が無いので、ただのダミーポートになっています。
1chip MSX というのは、「ハードウェア自体をソフトウェアで作ることができる」 FPGA という技術を使って作られているのですが、その空き容量が MSX2 を実装した時点でもう残り少なく、USB ホストコントローラのプログラムは、どうあがいても入らないようです。
というわけで、今後も USB キーボード・ゲームコントローラ等の対応は望み薄な模様。HRA! 氏製作の、MSX2+ くらいがギリギリなのかも。
というわけで、基本的にただのお飾りです。iPhone の充電くらいだったら可能かもしれませんが(※試してないです。電源供給すらされていない可能性もあります)

とりあえず アダプタを使って、メガドライブとか PS1 のゲームパッドを繋ぐ事にしてみました

  • じつは 1chip MSX 自体の互換ボードがある

1chip MSX 自体が MSX 互換機のようなものなので、互換機の互換機というのも妙ですが、あるようです。
電子部品通販 M.A.D.さんのMSXコーナーにある FPGA ボードに、MSX の FPGA データを書き込めば、1chip MSX として動作するようです。
ただし、当然ながら書き込むデータは別途用意する必要があるとのこと。
(ボード自体を持っていないので詳細はよく分かりません)