N64Digital再販予告、アナログRGB出力機能搭載は最後のロット

3度目のN64Digitalの販売が予告されました。

「this Friday (10th) at 1PM ET」なので日本時間だと3月11日(土)のAM3時になります。
使用しているDACが廃盤になるためアナログRGB出力機能があるのはこのロットまでとなります。

ワンダースワンのカスタムファームウェア?「BootFriend」リリース

※起動画面が特殊な限定版本体へのインストールは推奨しません

これがどういうものがまだ把握していない上、一週間ほど出張で家を離れてしまうため簡単にですが、ワンダースワンカラー/クリスタル向けに「BootFriend」というカスタムファームウェアがリリースされました。

BootFriend for WS
https://wonderful.asie.pl/ws/bootfriend/

これを導入することで
– 起動時のロゴを変更可能
– “マルチブート” (シリアルケーブルを接続してソフトを転送、GBAのマルチブートみたいなもの)
– IPL(boot ROM)のバックアップ
– ゲームデータ、セーブの管理
– 外部の書き込み機(フラッシャー)なしにフラッシュカートリッジへの書き込み
ができるようになります!!

ワンダースワンのIPLとは、起動時に表示される画面や誕生日などの個人データの画面を表示するプログラムのことで、2019年になってやっと吸い出しができましたが本体に配線を繋げたり外部機器が必要だったりととても敷居の高い方法でした。

この「BootFriend」を導入することである程度機材は必要になるもののIPLを楽に吸い出しできるようになります。

とりあえずIPLを吸い出すことを目的に用意するものは
・ワンダースワンカラーまたはクリスタル本体
・フラッシュカートまたはワンダーウィッチのカートリッジ
・シリアルケーブル
・シリアルポート(DSUB9ピン)の使えるPC

モノクロのワンダースワン本体は対応していません。今回はワンダーウィッチのカートリッジを使ってチャレンジしましたがフラッシュカートでもできるようです(古のWonder Magicのフラッシュカートが見つからないため未確認)。またワンダーウィッチ付属のシリアルケーブルまたは同等品を持っていないため、あやすけさんのHPを参考にシリアルケーブルを自作しました。

ワンダースワン その3
https://ayasuke2.exblog.jp/24852043/

dsub9ピンのケーブルは家にあったものをぶった切って、接続コネクタはワンダーウェーブに犠牲になってもらいました。

ざっくり
「BootFriend」転送、インストール→WS Backup Tool転送→IPL吸い出し
って感じです。

やり方についてはスクラップAさん (@scrap_a_) がわかりやすくまとめてくださっています。
インストール前にIEEPROMの内容をバックアップすることを忘れないでください!
とくに限定本体へインストールしたい場合は必ずバックアップしておいてください。

かんたん、簡単、超簡単、どっちかというとシリアルケーブル作ることと通信できる環境作る方がよっぽど大変でした。

また今回初めて知ったのですが、特殊な機材を使わなくともIPLを吸い出す方法がすでに確立されていたそうでこちらの方法を使えば1箇所配線が必要なもののモノクロからクリスタルまですべての本体のIPLを吸い出しできるそうです。

IPL Dumper · up-n-atom/wwsoft Wiki
https://github.com/up-n-atom/wwsoft/wiki/IPL-Dumper

※2023/3/15 追記
「BootFriend」がどういう風に動いているのかなんとなくわかりました。起動時の画面を変更できることがサブの機能ではなくこれがメインというか本体でした。

ワンダースワン(モノクロ)は本体にユーザー情報を保存できる1kbit(128バイト)の内蔵EEPROM(Internal EEPROM、IEEPROMと呼ばれる)を持っていて、ワンダースワンカラー、スワンクリスタルではこれが16kbit(2048バイト)に拡張されています。

ところでワンダースワンカラー、スワンクリスタルの本体にはファイナルファンタジー、ガンダム、ワンピースなどの限定版があり、その中の一部は起動画面が特別なものに変更されている本体があります。単純に表示される画像を差し替えているわけではなく、ガンダムの頭やワンピースのどくろマークが表示されたり、ザクの目がぎょろっとうごいたりと専用の凝った起動画面を表示するようなプログラムが追加されています。

そのプログラムがどこに格納されているのかというと前述したIEEPROMの中で、IPL起動時に特定のフラグが立っていると通常の起動画面ではなくIEEPROMに保存された(起動画面を表示する)プログラムを実行する機能がワンダースワン本体にもともと組み込まれているのです。

「BootFriend」はこの本体側にもともと存在する機能を利用して起動画面を変えるついでに自作プログラムを実行できるようにしているのです。また、IPLがIPLへのアクセスをロックしカートリッジのゲームを実行する前に「BootFriend」へ制御が移るので、IPLを吸い出したりカートリッジロムを吸い出したりすることを可能にしています。

おそらくモノクロ本体が「BootFriend」に対応していないのは、モノクロのIPLが起動画面の変更に対応していないか、IEEPROMの容量が足りないためプログラムを配置できないためと思われます。
また起動画面が特殊な限定版本体へのインストールはIEEPROMのバックアップを忘れると起動画面を二度と戻せない可能性があるため推奨しません

「64HD」発表、もうすぐ予約開始

UltraHDMIやN64DigitalのようなN64をHDMI出力化&高画質化してくれるキットに新たに「64HD」というものが追加されそうです。

予約開始が12/13、自分で組み立てるキットが$109.99という情報のみで組み立て済みがいくらか、どんな機能を有しているのかはまだ発表がないため続報がまたれるところです。

2022/12/13
12/16に延期になりました

64DD Dump Tool v1.0-beta3 リリース

64DDの吸出しツール「64DD Dump Tool v1.0-beta3」が更新、公開されました。

64DD Dump Tool
https://github.com/LuigiBlood/64dddump

このバージョンでスキップダンプ時に発生していた不具合が修正されF-ZERO X エクスパンションキット等が正しく吸い出しできるようになりました。もし過去のバージョンで吸い出しをしていた場合はv1.0-beta3で吸い出しし直すことを推奨します。

また、マルチシステムエミュレーター「ares」で64DDのサポートが追加されました。Nightly Build版で64DDが動作することを確認しています。

Everdrive対応の64DDダンプツール開発中

N64の下に取り付ける、現在かなり高騰している64DD。そのディスクを吸い出すには「64DD Disk Dumper」というソフトを「64drive」という現在入手困難なハード上で動かすことが必要で、試すことができるユーザーは極端に少ないと思います。

そんな状況の中で64DD Disk Dumperの作者が不具合修正やEverDrive64にも対応すべく、新たに開発を始めたのが「64DD Dump Tool」です。

64DD Dump Tool
https://github.com/LuigiBlood/64dddump

64DD Dump Toolは、「64DD Disk Dumper」が64drive専用だったのに対しEverDrive64にも対応、64DDのディスクの吸い出し以外にもIPLロム、H8コントローラーロム、EEPROM、64DDレジスタ情報を吸い出しできるようになりました。

また「64DD Disk Dumper」は吸い出しに不具合があったらしく、ディスクを正しく吸い出しできるように修正されています。過去に吸い出しをしたことがある方は明らかにデータが違ってるのでこのツールを使ってもう一度吸い出しなおしたほうがいいかもしれません。

現在はまだベータ版扱いで必ずCRC算出するために吸い出しに時間がかかりますが64driveとEverDrive64 x7で動作することを確認しています。

64driveがなく試すことができなかった人はぜひディスク吸い出しにチャレンジしてみてください。

N64 PIFROMをダンプする

N64本体にはPIFROMやPIF Boot ROMと呼ばれる起動時にカートリッジ等のプログラムより前に実行され初期化等をするプログラムがあります。

CEN64やLarper64など一部のエミュではこれをダンプしたファイルが必要なのですが、自前でダンプするにはヒントはあるものの簡単にできる方法が公開されていませんでした。

私も吸い出してみようと試みましたが、割り当てられている0xBFC00000からの領域は通常アクセスできないようになっているらしくゲームシャークで吸い出しできず、海外のフォーラムを探しても(VR4300 COP0の適切なウォッチレジスタ??を使用して、PIFROMの実行中に読み取られたアドレスにウォッチポイントを配置、ウォッチポイントによって呼び出されたコード内のブートコードで使用されていないRDRAMの一部にPIFROMをコピー???)というヒントがあるもののさっぱりでした。

PIF-NUSを引っぺがしてどうにかならないか試している様子

Twitterでつぶやいても情報はありませんでした。

先日なんとなく「PIFROM dump」等検索してみると、
「N64 PIF ROM dumper」なるものが公開されているではありませんか!!!!!!

作者はhcs64氏、Neon64やN64のサウンドフォーマットUSF等で有名です。2020-06-01頃には公開されていたようです。気が付かなかった…

一応EverDrive64 X7と64drive(HW1)でPIFROMを吸い出しできることを確認しました。また64driveはCICチップの関係で起動できませんでしたがPAL版(ヨーロッパ地域向け)N64本体でも確認済みです。

N64 PIF ROM dumperを起動して下の画面になったらリセットボタンを押す。

「SAVING TO SRAM… OK」と出れば完了
もしED64等の画面に戻ってしまう場合はもう一度N64 PIF ROM dumperを起動する

保存された「pif_rom_dumper.srm」の0x0~0x7BFまでがPIFROMになりますが、エミュで使用する場合はPIFRAMを含む0x0~0x7FFまでの2048バイトをファイルに保存しておくといいようです。
CEN64やLarper64で動作することを確認しています。

なおPIFROMは正確なエミュレーションを行うにはあった方がいいですが、PIFROMがどんな動作をしているかは判明しており、動作をシミュレーションできるためProject64やmupen64plusなどほとんどのエミュでは必要ありません。必要な方、もの好きな方はやってみてください。

N64ポケモンスナップのプリントサービス

1999年に発売されたN64のポケモンスナップ。
野生のポケモンの様子を写真に収め集めていくゲームで、当時コンビニのローソンにポケモンスナップのカセットを持っていき、数週間ほど預けるとゲーム内のギャラリーに登録した写真をプリクラ風のシールにプリントしてくれるサービスを行っていました。

アメリカでも同じようなサービスが実施されており、日本とは違いスナップステーションと呼ばれる専用の端末がブロックバスターというレンタルチェーン店の店頭に設置され、ユーザーが持ち込んだカセットをスナップステーションで操作してプリントしたい写真を選択、その場でプリントするという内容でした。

おそらく日本でもスナップステーションと同じようなシステムでプリントを行っていたと思われますが詳しい情報がないためアメリカではどうだったのか、「Pokemon Snap Station 」の中身がどうなっていたのか調べてみると

  • Nick’s Pokemon Fan Site: Pokemon Snap Station
  • Using Pokemon Snap Station For First Time In 20 Years!
  • ざっくり説明すると、コントローラーの4Pコネクタに専用のハードを接続しているとギャラリーの写真表示モードになり、その表示画面をキャプチャボードで取り込み、プリンターで印刷する、というアナログなシステムだったようです。

    この4Pコネクタに接続する専用ハードについて何か情報がないか調べると、まさしくこれを解析している情報がありました。

  • Reversing the Pokémon Snap Station without a Snap Station
  • 上記サイトでは解析の内容とProject64に実装したforkや実機で使用できるFPGAなどが公開されています。日本語版ポケモンスナップではギャラリーからプリントできる機能はもともと存在せず、起動時にスナップステーションが接続されていればプリントモードになりました。


    ※追記
    A-ONEの写真シール(品 番29621)に印刷するとそれっぽくなる
    https://www.a-one.co.jp/product/search/detail.php?id=29621

    iQue Playerをハックする

    以前にiQue Playerを入手したさいに少し触っただけでほったらかしにしていましたが、2018年ごろにiQue Playerがハックされ一時話題になったのを思い出し、「そういやN64のローカライズされたロムが入っているんだったなぁ」と思い立って実際にやってみることにしました。

    続きを読む iQue Playerをハックする