ハイパーショットの動作テストプログラム

ファミコン用コントローラ「ハイパーショット」の動作テストプログラムを自作してみました。


HyperShot用プログラムの自作(Famicom Homebrew)

 

ソースコードはこちら。

github.com

ハイパーショットって対応ソフトは

・「ハイパーオリンピック

・「ハイパースポーツ」

の2本だけでしょうか? 「コナミックスポーツ」は未対応ですよね。

 

f:id:nicotakuya:20210131132939j:plain

ハイパーショットを分解

配線を調べるため、手持ちのハイパーショットを分解してみました。 ICのたぐいは一切入っていません。なので、外部端子用のケーブルと、ゲーム用のボタンさえあれば自作できます。

カートリッジ基板の自作

f:id:nicotakuya:20201210100429j:plain

2年間で作ったカートリッジ基板

趣味で作ったカートリッジ基板がこちら。ファミコン用、スーファミ用、メガドラ用、PCエンジン用、ゲームボーイ用ですPC-6001用はまだです。PC–6001mkII本体の修理を人に頼んだきりです。

今までは同人ゴロがうっとおしかったので、ファミコンネタを封印してました。

2年前にふとしたきっかけで、スーファミのカートリッジを作ってみました。知識ゼロの状態からスタートです。今だと、大量の資料がパブリックドメイン化されていますし、開発ツールは無料ですし、プリント基板はお金のある限り作れます。昔ほどハードルは高くありません。

心配な点は、基板作りは法的に大丈夫なのかということと、違法コピーに使われるんじゃないかということです。扱うゲームハードは20年以上経過したものに限定しています。違法コピーについては、モラルに期待するしかありません。自分の場合は費用が何万円もかかるので、コスト的にわりに合わないんじゃないかと思います。

自分が作ったCADデータやプログラムは趣味のページでフリーで公開していますオープンソースなので、至らない部分があったら改良して欲しいです。

 

ファミコン

https://sites.google.com/site/yugenkaisyanico/diy-fc-cartridge2

 

スーパーファミコン

https://sites.google.com/site/yugenkaisyanico/diy-sfc-cartridge2

 

メガドライブ

https://sites.google.com/site/yugenkaisyanico/diy-megadrive-cartridge

 

ゲームボーイ

https://sites.google.com/site/yugenkaisyanico/diy-gb-cartridge

  

PCエンジン

https://sites.google.com/site/yugenkaisyanico/diy-pce-card

 

PC-6001MSX

https://sites.google.com/site/yugenkaisyanico/diy-p6-cartridge

 

雑誌・ムック記事

日経ソフトウエア2020年5月号 メガドライブ特集(→ムック「土日で楽しむゲームプログラミング入門」に再録)。

日経ソフトウエア2020年11月号、2021年1月号、2021年3月号 ファミコン特集

日経ソフトウエア2021年7月号、9月号 ゲームボーイ特集

日経ソフトウエア2022年1月号、3月号、5月号 PCエンジン特集

日経ソフトウエア2022年9月号 レトロゲーム機特集。ファミコンゲームボーイPCエンジンメガドライブのプログラミングをダイジェスト的に紹介(→ムック「初心者のためのプログラミング学び方・遊び方」に再録)。

 

ファミコン版Micro Magesを自作する

半年くらい前の話になりますが、「Micro Mages」を注文してから届くまでに数か月かかったことがあったのですが、その届くまでの間に「Micro Mages」のカートリッジを自作することを検討してました。

当時はNES版しか売っていませんでしたが、今はファミコン版が普通に売っていますので、こちらで買うことをおすすめします。

https://www.brokestudio.fr/product-category/famicom/

 

f:id:nicotakuya:20210212084745j:plain

NES版Micro Mages

Micro Magesは販売サイトで注文すると、特典としてROMイメージ(NESファイル)がダウンロードできるという仕組みです。ROMイメージのライセンスが明記されていないですが、同時に実行しなければ合法だと思います。カートリッジが届くまでエミュレータで遊ぶことができました。

ちなみにSTEAM版のMicro Magesを買ってもROMイメージを入手できます。STEAM版はカートリッジよりも安いです。

 

f:id:nicotakuya:20200524091614p:plain

CHR-ROMの取り付け場所

具体的にどうするか解説します。

Micro MagesのマッパーはMapper0(PRG-ROM 32KB / CHR-ROM 8KB)なので、「日経ソフトウエア」の雑誌掲載バージョンのカートリッジ基板がそのまま使えます。

赤ワクの部分にCHR用のフラッシュメモリ(CHR-ROM)を取り付けます。

 

f:id:nicotakuya:20201219105944j:plain

CHR-ROMを搭載

CHR-ROMを取り付けるとこうなります。プルダウン抵抗も忘れずに付けます。

フラッシュメモリの容量は1M/2M/4Mbitどれでもいいです。64kbit(8KB)しか使わないのがもったいない。

 

f:id:nicotakuya:20201219111722p:plain

CHR-ROM書き込み用の回路図

ここからが大変なのですが、CHR-ROM専用のフラッシュメモリライターを作ります。回路図はこんな感じです。

 

f:id:nicotakuya:20201219110309j:plain

CHR–ROM専用ライター(製作中)

基板を作っていないので、手作業で配線します。

 

f:id:nicotakuya:20201219105729j:plain

CHR-ROM専用ライターの完成

フラッシュメモリライターの完成です。見た目が良くないです。

 

f:id:nicotakuya:20210123225018j:plain

A13とA14を外部から接続

基板のカードエッジにはCHR-ROMのA14とA13が配線されていないので、ジャンパーワイヤーで接続した状態で書き込みます。ここで書き込むのは、NESファイルのCHR-ROM側の内容だけです。

PRG-ROM側の内容はPRG-ROMのフラッシュメモリに書き込みます。

NESファイルはヘッダ(16バイト)、PRG(32KB)、CHR(8KB)の順に格納されています。

 

あと、ミラーリング設定はHミラーリングです。PPUA11とVRAMA10を接続します。

 

f:id:nicotakuya:20201214214155j:plain

無事に動きました

問題なくMicro Magesが動きました。NESでもファミコンでも1つのROMイメージで動くのが不思議です。 

 

f:id:nicotakuya:20201215150716j:plain

ガワを付ける

ガワを付けるとこうなります。手間がかかるので、正規品を買うことをおすすめします。

MSXを作れ!!

f:id:nicotakuya:20210128043146j:plain

MSXを作れ!!」

MSXを作れ!!」(2015年)というKindle本を買ってみました。 自分はMSXパソコンを持ってないニワカですが。

本の目玉はビクターとヤマハMSXパソコンを開発した時のエピソード。エイプリルフールとオフ会とクイズは、どうでもいいですね。「マイクロソフト戦記」を引用してるだけのページは手抜きな気が、、、。

読んでいて「何かおかしい」と思ったら、本の内容が週刊アスキーの記事とまったく同じでした。これ、買わなくて良かったのでは。

この本って、文体がふざけてるというか、同人っぽいノリが引っかかります。一体どなたが書いているんでしょうか? 著者名「MSXアソシエーション」?

旧公式サイト(MSX ASSOCIATION)によると、「MSXアソシエーション」とはMSX公式エミュレータを作ったり、権利者と交渉する団体とのこと。ユーザーズグループではないみたいですね。MSXアソシエーションは過去にコナミMSXソフトのマニュアルを集めてましたが、Wii UMSXソフトに資料を活用したのかもしれません。

f:id:nicotakuya:20210127120203j:plain

Wii Uで遊べるスペースマンボウ(連射機能が欲しい!)

ちなみにWii Uの「スペースマンボウ(MSX2)」は絵も音も文句なしです。ですが、オート連射が欲しかった。開発はおそらくD4エンタープライズですね。D4エンタープライズPROJECT EGGで長年の実績があります。

今、MSXアソシエーションもMSXライセンシングコーポレーションもWebサイトがありません。窓口がないのに、どうやって交渉するのでしょうか。

f:id:nicotakuya:20210128161334j:plain

MSX Magazine永久保存版(2002年12月発売)

久々に本棚から「MSX MAGAZINE 永久保存版」(2002年12月発売)を引っ張り出してみました。この本の奥付にはMSXアソシエーションの12人のお名前が掲載されています。名前でググったら、いろいろ発見がありましたが、迷惑をかけそうなので触れずにおきます。

この本によると、

・1999年1月に西和彦さんがMSXのユーザーグループと会見

・2000年10月にMSXの公式エミュレータMSXPLAYer)の開発がスタート

・2002年2月にMSXアソシエーション設立

(1chipMSXの具体的な内容は「永久保存版3」まで載りません。)

という流れだそうです。この一連の活動を「MSXリバイバルプロジェクト」と呼ぶみたいです。最も難しい権利関係の問題を西さんがビル・ゲイツに直接話すことでクリアしたというのがドラマチックです。

MSX衰退&復活の歴史は古いです。「バックアップ活用テクニックPART25(1991年12月号)」の107ページ目には次のような記述があります。

MSXサークルの方々、MSXがこのまま衰退しないために一致団結して、MSX復活プロジェクト(略してMFP)を組みませんか?

これを書いた人は、誌面を私物化してMFPの宣伝を繰り返しました。その後、MFPは事業化され、雑誌「MSX・FAN1995年8月号」にMSX用ハードの広告を掲載。結果、商業的には失敗したようです。、、、思い切り脱線しました。念のためですが、MSXリバイバルプロジェクトはMSX復活プロジェクトとは別物です。

MSXリバイバルプロジェクト」のページは2001年2月公開ですね。ページは現在も見ることができます。このページを見て思ったのですが、、、まず「日本MSXユーザーグループ」とは何か? メンバー構成は? リーダーは? 同人の活動なのか? 主導権はアスキー? 報酬は発生していたのか? 2001年で更新が止まったのはなぜか?  いろいろと疑問が尽きないです。議事録が匿名で、無責任なことになってます。

MSXPLAYerはフリーのエミュレータである「fMSX」のソースコードを使っていますが、2002年2月の時点で作者のMaratさんから「盗作」呼ばわりされていました。本には「正式に許諾を得て」と書かれているので、問題はクリアできていると思います。intentを採用したのも謎ですね。intent版はWindows10で動かないので、永久保存版1のCD-ROMを持っているのに全てのゲームが遊べません。なんという生殺し。永久保存版3でintent不要のネイティブ版になったことを考えると、最初から「fMSX」そのままでよかったのでは。当然ながら、今現在、サポートは望めません。

同人のノリで商売すると危険ですね。これは自分にも言えるので、偉そうなこと言えません。肝に銘じておきたいです。

あと、「MSX Magazine永久保存版」には西さんのインタビューが4ページ載っています。2ちゃんねるのオフ会(2001年8月)では公式エミュレータオープンソースにするとか無償配布するという刺激的な発言があったのですが、計画が流れたのか、そういう情報も書かれていません。

2009年の中村伊智哉教授の記事によると、2001年に西さんと中村教授らはMITのメディアラボで教育用コンピュータを作る計画のプレゼンを行ったとのことです(http://www.ichiya.org/jpn/NikkeiNet/nikkeinet_090525_vol58.pdf)。このプレゼンにはMSXリバイバルプロジェクトのメンバーも一部参加していますので、西さんの目標はMSXで教育用コンピュータを作ることだったと考えられます。アスキーの問い合わせ先が「教育プロジェクト」だった理由はこれでは? 中村教授は、2005年にMITが発表した「100ドルPCプロジェクト」は自分たちの発表が元ネタだと主張しています。発表からのタイムラグがあるので、これは話半分ですね。100ドルPCプロジェクトは途絶えてしまいましたが、ラズベリーパイ財団が2020年に発売した「Raspberry Pi 400(値段が100ドル)」がその意思を受け継いでいるように思えます。そして、西さんが発表予定の「次世代MSXですが、発言から察するにラズパイを意識しているようです。

ちなみに2003年ごろ、西さんの会社でMSXを教材にするという試みが行われました(MSX-BASIC for Education)。これはWindowsMSXを動かすだけなので、導入のメリットがないように思えます。1chipMSXで実現したら流行ったかもしれません。

1chipMSXは2005年にアスキー「5000台の予約を達成したら商品化する」という謎ルールを提示しますが、注文が目標に届かず、計画が一旦終了します。2万円近いのに、MSX1相当でスロット1個ってスペックが足を引っ張ってますが、一気に5000台売ろうというのはハードル高すぎな気が。そもそも売れないからMSXは衰退したわけで。

その後、1chipMSXの計画をD4エンタープライズが引き継ぎます。値段ほぼそのままで、スペックを引き上げて(MSX2相当、2スロット)、2006年に販売されます。ここに開発陣のもの凄いドラマを感じます。Kindle本の次回作は「1chipMSXを作れ!!」でお願いしたいです。

今、教育界における大きなバブルが、政府主導のGIGAスクール構想です。学校で1人1台端末(パソコン/タブレット)を推進すべく、生徒1人あたり4.5万円の助成金を支給するそうです。20年経って西さんの発想に時代が追い付いた。しかし、今現在、1chipMSXは購入できませんし、4.5万円という金額を考えるとタブレットが一番妥当に思えます。

余談ですが、2020年にスペインのVIKALB PROGRAMMING社が「MSXVR Computer」というMSXパソコンを発売しました。これは中身がラズパイで、つまりMSXエミュですね。Hal研のPasocomMiniもラズパイですし、やはり、ラズパイはソリューションとして優れているなと実感します。ラズパイはハードのスペックが優れているだけではなく、流通も生産力も優れてて、結局、組織が優れているわけです。

このスペイン製MSXは初回ロットが2021年になってやっと発送されたようです。安定供給が難しく、次のロットは遅れるらしいです。どういうわけかスペインではMSXが盛り上がっていて、ほぼ毎年MSXDEVというイベントが開催されています。気になる方は「Spanish msx homebrew」とかで検索してみましょう。知らぬ間に海の向こうでMSXが復活してました。

日経ソフトウエア2021年3月号(ファミコン特集最終回)

2021年1月22日発売の雑誌「日経ソフトウエア2021年3月号」でファミコンで動くゲームを作ろう 第3部」「ゲームプログラミング質問箱 第2回」の2件の記事を書かせて頂きました。

今回でファミコン特集は最終回です。隔月の発行なので、完結まで4か月もかかってしまいました。ファミコンソフトのソースコードは雑誌の公式サイトで配布しています。

基板のCADデータはこちら。↓

sites.google.com

 

f:id:nicotakuya:20210123223726j:plain

読者プレゼント

読者プレゼントのカートリッジ基板です。動作チェック済みです。

 

f:id:nicotakuya:20201219134251j:plain

ファミコンのカートリッジ基板(日経ソフトウエア2021年3月号)

カートリッジ基板。この写真の状態が裏側です。目コピーで寸法を測ってます。挿し込む時、裏表を間違えないように注意しないといけません。事故が起きたら怖いので、念のためヒューズを付けてます。

この前に作った1号機はMMC1(Mapper1の特殊チップ)とバッテリバックアップRAMに対応できるように設計してありましたが、MMC1が入手できず作業が止まっています。中国製のチップは合法か不明なので怖くて買えません。

今回の雑誌掲載版(2号機)ではこれらの機能を削って、Mapper0専用にしました。サイズが6mm縮小しました。

このカートリッジ基板は通常と違ってCHR-RAMを採用しています。そのため、PRG-ROMの32KBのうちの8KBをキャラクタ用に使ってしまいます。容量をムダになってカッコ悪いのですが、作りやすさと使いやすさを優先しています。独自仕様なので、市販のゲームのROMイメージを書き込んだら動いてしまうということはありません。

 

f:id:nicotakuya:20210123220221j:plain

フラッシュメモリライター

カートリッジ基板にプログラムを書き込むためのライターです。ラズパイに接続して使います。個人的な趣味でPi STARTERを使って動かしています。
 


Famicom homebrew(日経ソフトウエア2021年3月号)

 

nicotakuya.hatenablog.com