こちらでは3DSにスーパーマリオ64にマップ機能を追加して移植するSuper Mario 64 3DS Port Ultimateを紹介します
概要
下画面ミニマップと HUD、改良されたカメラ操作、保存可能な表示設定、動的シャドウを搭載
New3DSを推奨
New 3DS では拡張効果有効時に40~60FPS
Old 3DS では軽量な 400px 設定で 25~30 FPS
実行ファイルの3dsx又はciaファイルを自分でビルドしないといけないので面倒だが、高解像度でとても奇麗なのでおすすめ
機能
・下画面インターフェース: コースマップ、マリオの位置と向き、残機、スター、コイン、赤コイン、BGM 名、タッチ設定、同期トランジションを表示する
・カメラと操作: 公式カメラと自由に移動できるカメラに切り替え、C-Stick 操作を利用できる
・3DS 表示演出: 立体 3D、400px/800px モード、アンチエイリアス設定、3D HOME メニューバナー、保存可能な表示設定に対応
・パフォーマンスと音声: 60 FPS、マルチスレッド音声、強化 RSPA、New3DS向け描画設定を搭載
を想定しています。
Dump DSP firmwareを選択
ダンプが終わったらBボタンを連打してホーム画面に戻り、本体の電源を落とす
ビルド時の注意事項
ウィルスソフトを無効化
またはドライブcを例外にする
64 bit Windows 10又はそれ以降のOSに限る
各種モジュールのインストールに失敗する場合ネット回線がおかしい又は何らかの理由で速度が遅くなっている場合があります
その場合ビルドできません
またmsys2やgccのアップデートによりビルドできなくなるケースがあります
その場合は開発元のソースコードが改良されないと厳しいです
エラーが出る場合は必ず失敗します
ビルドにはものすごい時間がかかります
ネットワーク速度が遅いとgithubからダウンロードできません
スーパーマリオ64のバックアップファイルを用意
スーパーマリオ64(通常版で振動パック版ではない)のバックアップを用意
下記リンクを参考にスーパーマリオ64のバックアップのSHA-1が
8a20a5c83d6ceb0f0506cfc9fa20d8f438cafe51
か確認
合ってたらファイル名を拡張子ごとbaserom.jp.z64にリネーム
ビルドする方法
下記リンクよりmsys2のインストーラーのexeファイルをダウンロードし、インストール
PCのスタートメニューからMSYS2 MinGWを起動
MSYS2 MSYSではない
一度MSYS2 MinGWを何かで使用していた場合はMSYS2自体アンインストールをおすすめします
自分の環境ではエラー
コピペは文字列を選択して右クリックからコピー、端末上で右クリックからPaste
YesかNoを聞かれる場合全てYesでyを打ち込むこと
ulimit -s 10485760
pacman-key --recv BC26F752D25B92CE272E0F44F7FD5492264BB9D0 --keyserver keyserver.ubuntu.com
pacman-key --lsign BC26F752D25B92CE272E0F44F7FD5492264BB9D0
をコピペしてエンター
pacman -U --noconfirm https://downloads.devkitpro.org/devkitpro-keyring.pkg.tar.xz
をコピペしてエンター
cat <<EOF >> /etc/pacman.conf
[dkp-libs]
Server = https://downloads.devkitpro.org/packages
[dkp-windows]
Server = https://downloads.devkitpro.org/packages/windows
EOF
をコピペしてエンター
pacman -Syu --noconfirm
をコピペしてエンターするとMSYS2 MinGWが閉じるので再び起動
ulimit -s 10485760
pacman -S 3ds-dev git make python3 mingw-w64-x86_64-gcc unzip --noconfirm
をコピペしてエンター
wget https://github.com/3DSGuy/Project_CTR/releases/download/makerom-v0.19.0/makerom-v0.19.0-win_x86_64.zip
unzip -d /opt/devkitpro/tools/bin/ makerom-v0.19.0-win_x86_64.zip
をコピペしてエンター
export PATH="$PATH:/opt/devkitpro/tools/bin" && echo "OK!"
export DEVKITPRO=/opt/devkitpro && echo "OK!"
export DEVKITARM=/opt/devkitpro/devkitARM && echo "OK!"
export DEVKITPPC=/opt/devkitpro/devkitPPC && echo "OK!"
をコピペしてエンター
git config --global http.version HTTP/1.1
git config --global http.postBuffer 2M
git clone --filter=blob:none --sparse https://github.com/Epic0522/Super-Mario-64-3ds-port---Ultimate.git && cd Super-Mario-64-3ds-port---Ultimate && git sparse-checkout set --no-cone '/*' '!/indevscreenshots/'
をコピペしてエンター
PCからドライブcにアクセスして、tempフォルダを作成
その中にbaserom.jp.z64ファイルを入れる
cp /c/temp/baserom.jp.z64 ./ && echo "OK!"
をコピペしてエンター
cp -R project_asset_overrides/* .
をコピペしてエンター
下記リンクよりbannertool-バージョン-windows.zipファイルをダウンロード&解凍し、bannertool.exeファイルをPCを開き、ドライブCの中のmsys64/opt/devkitpro/tools/binフォルダの中にコピー
BANNERTOOL=/bannertool
をコピペしてエンター
hbmから起動する3dsx形式にしたい場合
make VERSION=jp
をコピペしてエンター
するとドライブCの中のmsys64/home/ユーザー名Super-Mario-64-3ds-port---Ultimate/build/jp_3dsフォルダの中にsm64.jp.aev64u6.3dsxファイルが作成されるので、SDカードの3dsフォルダの中にコピーし、hbcより起動
FBIでインストールしてホームから起動する.cia形式にしたい場合
make VERSION=jp cia
をコピペしてエンター
するとドライブCの中のmsys64/home/ユーザー名Super-Mario-64-3ds-port---Ultimate/build/jp_3dsフォルダの中にsm64.jp.aev64u6.ciaファイルが作成されるので下記リンクを参考にFBIでインストールし、起動
注意
Super Mario 64 3DS Port Ultimateを起動した状態でSTARTボタンを押さないこと!
本体がクラッシュしてエラーが表示され、シャットダウンを余儀なくされる
必ずホームボタンを押して、ホーム画面に戻ってから終了すること!
何が起きても全て自己責任






コメント
コメントを投稿