セガマウスの互換品を作る

まだ開発途中ですが、「セガマウス」として認識するパッド変換器を作ってみました。需要が全くないので、たぶん世界初の試みです。

 

www.youtube.com

 

セガマウス」というのは、その昔、セガが発売したメガドライブ専用のマウスです。あまり出回っていないのか、中古品はプレミア価格になっています。

 

[セガハード大百科] メガドライブ対応ソフトウェア(セガ発売)

公式ページの情報によると、セガマウスの対応ソフトは全部で15本

そのうち、メガCD用のマウス対応ソフトはこちら。

  1. ライズ オブ ザ ドラゴン
  2. シムアース
  3. スイッチ
  4. 笑ゥせぇるすまん
  5. 夢見館の物語
  6. モンキー・アイランド ユーレイ海賊大騒動!
  7. マイト アンド マジックⅢ
  8. 真・女神転生
  9. ダンジョンマスターⅡ スカルキープ
  10. うる星やつら ディア マイ フレンズ
  11. スターブレード

カートリッジ形式のマウス対応ソフトは以下の通り。

  1. マーブルマッドネス
  2. 信長の野望 全国版
  3. 雀皇登竜門
  4. ロードモナーク とことん戦闘伝説

、、、たった4本。少なすぎる。ここで、一番有名なのは「マーブルマッドネス」ですが、結構なプレミアソフトです。

この他、海外のGENESIS用でマウス対応のソフトがあるかもしれません。

 

f:id:nicotakuya:20210124224759p:plain

雀皇登竜門

動作チェック用として「雀皇登竜門(1993)」を買ってみました。セガマウスに対応させる遊び心が、さすがゲームアーツという感じ。

 

セガマウスのプロトコルはSGDKの「joy.c」が参考になります。おそらく、世の中にある資料はコレしかないです。

1フレームあたりに、メガドラに対して、10ニブルを送ればいいだけなのですが、、、

 

ソースを読んでいると、ポートの入出力を変更している箇所を発見。

なんと、セガマウスの通信時に限り、ゲームパッド用ポートの9番ピンが出力(メガドラ→マウス)に変わります。通常時は入力です。間違って信号が衝突したら回路が壊れそう、と思うかもしれませんが、それを見越してか、メガドラ本体の9番ピンと7番ピンには抵抗が入っています。

 

joy.cを元にタイミングチャートを書いてみました。同期の方法が複雑です。

最初の2ニブル(0x0、0xB)でメガドラは接続デバイスが「セガマウス」であると判断できるようです。

2ニブル目の最初だけ7番ピンの変化を合図に送信します。

それ以降は9番ピンの変化を合図に送信します。

6番ピンを反転する(9pinと同じ論理にする)ことで、データの格納が終わったことを伝えます。実際に試した感じでは、データ格納から1マイクロ秒くらい待ってから、反転しないとデータ化けが起きてしまいます。

7番ピンは得に役割が無くて、それなら、7番ピンと9番ピンは1つにまとめることができるのでは? と思ってしまう。これだけだと謎ですが、マルチタップへの応用を考えた仕様だと思います。

 

SGDKに付属する「joy-test」というサンプルプログラム。これをROMに焼けば、実機でセガマウスを検出できます。SGDKのデバイスドライバは優秀で、マウスの認識も自動的に行ってくれます。マウスカーソルの累積的な座標を自動的に算出してくれます。

megamouse」に誤植しているのはご愛敬。、、、って、思ったら、GENESISだとMegamouseが正式名だそうです。

 

変換器を使ってみた感じでは、デュアルショック2のアナログレバーだとマウスカーソルは操作しにくいです。ゲームパッドじゃなくて、マウスで入力できたらいいですね。当たり前ですが。

 

nicotakuya.hatenablog.com

nicotakuya.hatenablog.com

Xbox Oneの「アップデートに問題が発生しました」

Xbox Oneの「アップデートに問題が発生しました」というエラーの解決方法がわかったので紹介します。

現象としては、本体のアップデートで更新データをダウンロードした直後に、上のようなエラーが出てしまいます(まるでWIndowsみたいなメッセージ)。

 

更新データ(780MB)のダウンロードが完了した時点でエラーが出ます。

エラーが出たら、データが0バイトに戻って、ダウンロードのやり直し。アップデートの無限地獄に陥ります。

解決方法はインターネット接続を有線LANにするだけ。たったそれだけですが、1年半くらい気が付きませんでした。おそらく、うちのWi-Fiルータとの相性が良くないのが原因だと思います。

Xbox Oneは本体更新データのダウンロードをバックグラウンドで行えないので、その間、ゲームを一切遊べなくなるのが困ったところ。

ベーマガのバックナンバー(創刊40周年)

パソコン雑誌「マイコンBASIC Magazine」、、、通称「ベーマガ」。

念のために言っておくと、楽器の雑誌や野球の雑誌とは別モノです。

 

(月刊「マイコン」1982年7月号の広告より)

ベーマガ1982年6月10日に創刊してから今日で40周年。「ラジオの製作」の付録時代からだと41周年。休刊してから19周年です。

 

パソ通もインターネットも無い時代、パソコンにとって最良のメディアは「雑誌」でした。

自分が初めて買ったベーマガ1984年から。たとえば、1984年1月号だと「ゼビウス」のマップが載っていて、さらに70本くらいのプログラムが載っていて、価格が350円でした。これはもう、問答無用で買いますよね?

誌面の半分を読者投稿が占めていたこと、ライターさんが趣味的・献身的に働いたことで、コストパフォーマンスの高い雑誌を作り上げていました。

このベーマガベーマガたらしめている何かを「ベーマガ・イズム」と勝手に呼んでいます。この話は別の機会にしたいです。

 

突然ですが、今、ベーマガのバックナンバーを読む方法について考えてみたいと思います。

今から10年くらい前までは、ベーマガを読むには国会図書館に行くか、オークションで買うしかありませんでした。古い雑誌は、ブックオフやもったいない本舗は買い取らないので、流通しません。

しかし、2015年、秋葉原に「BEEP」がオープンして、中古のベーマガが手軽に買えるようになりました。お金を出すだけでベーマガのバックナンバーが手に入る。これは画期的なことでした。

上の写真は「BEEPの夜店」で目撃したベーマガ1982年7月号・創刊号です(2022年3月当時)。なかなか良いお値段ですが、あっという間に売れてしまいました。

 

そのほか、BEEPの夜店で売っていたベーマガ1982年・6冊セット(2022年4月当時)。ここまでキレイに保管されていることに驚かされます。元の持ち主は、よほどマメな人ですね。

これも、あっという間に売れてしまいました。

 

時期は不明ですが、かなり前から駿河屋でも中古のベーマガが買えるようになりました。

上の写真は今から5年前駿河屋のWebページです(2017年5月当時)。2022年現在と比べると、ちょっと価格が高い感じがします。

 

スクリーンショットを何枚か保管してあったので、2017年当時の価格を50件ほど表計算ソフトに入力しました。さらに、2022年6月現在の駿河屋での価格を200件ほど入力しました。

当然ながら、商品のコンディションや店員さんの性格によって値段のブレが生じます。複数の場合は金額を平均化しています。付録単体の商品は除外しています。

 

入力結果を散布図でグラフ化してみました。

X軸が「雑誌の号数」、Y軸が「価格」です。グラフの赤色は2022年6月現在の価格、水色は2017年当時の価格です。ラ製の付録は高額すぎて、グラフからはみ出ました。

2つグラフを重ねた結果、1986年以前のベーマガは5年経っても、あまり価値が揺らいでないことがわかります。

ですが、1987年以降は半分以下に値下がりしています。これは、価値が下がったのか、適正価格になっただけか? 時間が経って値上がりするのかと思ったら、実際は逆なのが、気になります。まあ、安く買えるようになったのは、結構なことだと思います。

あと、気になるのは、1993年あたりになって、ベーマガの価格が急に下がる傾向にあることです。金額は違いますが、現象としては5年前も現在も同じです。この現象を「アタリ・ショック」や「ソニー・ショック」にならって、「ベーマガ・ショック」と呼びたいです。

1992年というと、バブル崩壊。そして、Macintoshが低価格化した年。1993年はDOS/Vが本格化した年。1994年はプレステ発売。いろいろあって、ホビーパソコン市場が終わり始めた時期だと思うので、「ホビーパソコンショック」と言うのが正しいかもしれません。このへんは、詳しい人の意見を聞きたいところです。

ベーマガショックは1995年と1999年と2001年にも起こっている可能性がありますが、このグラフからは感じ取ることはできませんでした。もっとサンプルが必要です。

 

ベーマガのバックナンバーを最も簡単に読む方法。それはarchive.orgを見ることです。archive.orgにはベーマガのスキャン画像が9年ぶんくらいアップロードされています。しかもタダで読めてしまいます。先のベーマガ・ショックを裏付けるかのように、1994年でスキャンが終わっていますが、1995年以降も面白い記事は一杯あります。

しかし、これって、法的な見解ってどうなっているのでしょう? 一応、「ネットの図書館」ってことになっていますが、著作権的に思いっきりアウトな気がします。

「バックアップ活用テクニック」みたく公式がKindleで配信してくれたら嬉しいのですが。

 

クレイジー・クライマー専用コントローラーの自作

前回の続き

nicotakuya.hatenablog.com

 

ファミコンクレイジー・クライマー専用コントローラー」を作ってみました。

デュアルショック2をファミコンにつなぐだけの回路なので、厳密にはコンバーターです。

デュアルショック2は機能が豊富で、安くて入手しやすいので採用しました。

下の動画の3番目に出てきます。

 

www.youtube.com

動画の2番目に出てくるスーパーファミコン用コントローラーの接続回路は前回に紹介したものと同じです。

 

 

「12way pad converter」の基板を再利用してます。設計ミスがあって、いくつかパターンをカットしないといけません。今回で「13way」になったので、以後は「multi-way pad converter」に改名したいです。

制御に使っているのは、AVRマイコンです。まだ、実験段階なのですが、安全を確認できたら資料を公開したいです。

コンバーターの動作原理は次の通りです。

デュアルショック2のボタン情報を読み込む。

・拡張端子を通じて、ファミコンにボタン情報を送る。

これを1/60秒周期で繰り返しています。ボタン情報をソフト的に90度回転させているので、ゲームパッドを縦に持つ必要がありません。しかし、プレイ中、隠し部屋に入った場合、ゲームバッドを逆に回転させないと遊べなくなります。この問題は未解決です。

デュアルショック2はアナログのレバーが2本付いているので、これを割り当てることも可能ですが、何百回も高速に上げ下げするのでレバーが壊れてしまいそうな気がします。

 

nicotakuya.hatenablog.com

nicotakuya.hatenablog.com

ファミコン版「クレイジー・クライマー」を外部コントローラーで遊ぶ

ファミコン版「クレイジー・クライマー」。プレイヤーを操って、ビルを登っていくアクションゲームです。

 

一応、念のために説明しておくと、ファミコン版「クレイジー・クライマー」は2つのコントローラー(ゲームパッド)を縦に持って操作します。コントローラー1は左手側、コントローラー2は右手側です。右手・左手を上下に動かすと、ビルを登ることができます。

実際に遊んでみたところ、左手側のコントローラーがうまく握れない。コントローラーを床に置くべきか? はたまた、「クライマースティック」を装着すべきか?

 

(2022/6/3追記)オリジナル版にはないファミコン版に追加された新要素。ステージの途中でアイテムを取ると、隠し部屋に入ることができます。ここではプレイヤーがジャンプできるようになり、コントローラー1を横に持って遊びます。ややこしすぎる。

 

いまさら気が付きましたが、ファミコン版「クレイジー・クライマー」は外部コントローラーに対応しています。説明書に書いてないので、備え付けのコントローラーでしか操作できないものだと、ずっと勘違いしていました。

上の写真は拡張端子に外部コントローラーを2つ接続した例です。

 

ファミコンの拡張端子は外部コントローラーを同時に2個接続できるように設計されているのですが(頑張ったら4個)、一般的な外部コントローラーは1個ぶんしか使っていません。なので、上記のようなマルチタップを使って、端子を2つに増やします。ホリ製「4プレイヤーズアダプター」の2Pモードに相当します。

 

自分の場合、ファミコン用の外部コントローラーを持っていないので、変換器を自作してスーパーファミコン用コントローラーを付けてみました。スーファミ用コントローラーは通信するデータが16ビットですが、前半の8ビットで打ち切ってしまえば、ファミコン用コントローラーとして使うことができます。

 

プレイ中の様子。

コントローラーは縦に持つ必要があります。備え付けのコントローラーよりも持ちやすいので、少しだけマシになりました。

この技術を応用すれば、「クレイジー・クライマー専用コントローラー」も製作できると思います。ファミコン版「クレイジー・クライマー」が再評価される日も近いかもしれません。

 

ちなみに、こちらはスーパーファミコン版「ニチブツアーケードクラシックス」に収録されている「クレイジー・クライマー」。この他に「ムーンクレスタ」と「フリスキートム」が収録されています(計3本)。お得すぎる。

これはアーケード版にとても忠実な出来。コントローラー1個で操作できるので、縦に持つ必要はありません。

 

nicotakuya.hatenablog.com