Hot limit

ROM抽出,エミュレーターFinalBurnNEO,MAME,エミュレーター,セガ

元ネタ

生足魅惑のマーメードー!

モンスター娘TDが明らかにこの歌をネタにしてたのでペタ。



オールオッケー!(いいんか

XBLA 忍の抽出(キメラ・CRC書き換え必須)Jackさんのコメントより

XLBAでは、そのまま抽出はできません
wxPirsでのファイル処理でSHINOARC.SRを抽出
offzipで-aオプションによるSHINOARC.SRの解凍が下準備として必要になります。

下準備の完了後には4ファイルが生成されますが
そちらに関しては自己責任で行うようお願い申し上げます
質問されても一切ご返答できかねますのでご了承ください。

元々はJackさんのコメント投稿によるものです
99%はそのコメントで出来ております。投稿ありがとうございます!

Jackさんのコメントより一部修正して掲載


XBLA版「SHINOBI -忍-」から抽出するBATがようやく出来ました
doritosさんが記載の通り、shinobi5になりました
獣王記の時と同様に強引なもの(forcecrc32.pyによるCRCの書き換え)になりましたが、
MAME2010で動作を確認しております

dummy_ff_64k.ps1は以下に記載分を利用させて頂きました
SegaAges2500 テトリスコレクションの抽出
XBLA版「SHINOBI -忍-」から抽出するBAT=============================================== powershell -executionpolicy RemoteSigned -File “dummy_ff_64k.ps1” BSwap.exe d B 00000804.fnc oddeven.txt epr-11360.a7 epr-11359.a5 bcut.exe 00015004.dat epr-11361.a10 0x0000 0x8000 bcut.exe 00015004.dat epr-11362.a11-top 0x8000 0x10000 copy /B epr-11362.a11-top + dummy_ff_64k.tmp epr-11362.a11 del epr-11362.a11-top bcut.exe 00023004.dat 00023004-1.dat 0x0000 0x40000 BSwap.exe d B 00023004-1.dat oddeven.txt epr-11368.b5 epr-11366.b1 py forcecrc32.py epr-11366.b1 131068 319ede73 py forcecrc32.py epr-11368.b5 131068 0377d7ce bcut.exe 00023004.dat 00023004-2.dat 0x40000 0x40000 BSwap.exe d B 00023004-2.dat oddeven.txt epr-11369.b6 epr-11367.b2 py forcecrc32.py epr-11367.b2 131068 1d06c5c7 py forcecrc32.py epr-11369.b6 131068 d751d2a2 del 00023004-1.dat 00023004-2.dat bcut.exe 00053004.dat epr-11363.a14-top 0x0000 0x10000 copy /B epr-11363.a14-top + dummy_ff_64k.tmp epr-11363.a14 py forcecrc32.py epr-11363.a14 131068 40914168 del epr-11363.a14-top bcut.exe 00053004.dat epr-11364.a15-top 0x10000 0x10000 copy /B epr-11364.a15-top + dummy_ff_64k.tmp epr-11364.a15 py forcecrc32.py epr-11364.a15 131068 e63649a4 del epr-11364.a15-top bcut.exe 00053004.dat epr-11365.a16-top 0x20000 0x10000 copy /B epr-11365.a16-top + dummy_ff_64k.tmp epr-11365.a16 py forcecrc32.py epr-11365.a16 131068 1ef55d20 del epr-11365.a16-top del dummy_ff_64k.tmp echo shinobi5.zipに圧縮 ==================================================================================== [XBOX360] Sonic Ultimate Genesis Collection から 「SHINOBI -忍-」を抽出したい場合はBatファイルの抽出元ファイル名を変えれば流用可能 flog_U_0x5c025f7c.ffffff00 (256KB) →XBLA版より抽出した 00000804.fnc とCRC一致 flog_U_0x06f2a1a8.00000000 (192KB) →XBLA版より抽出した 00053004.dat とCRC一致 flog_U_0x366370f4.00000000 (512KB) →XBLA版より抽出した 00023004.dat とCRC一致 flog_U_0xeebda7aa.f3ed5631 (96KB) →XBLA版より抽出した 00015004.dat とCRC一致
doritosさんのコメントから抜粋、修正分


※※※
BSwap.exe d B 00023004-2.dat oddeven.txt epr-11369.b6 epr-11367.b2
の上に
bcut.exe 00023004.dat 00023004-2.dat 0x40000 0x40000
が抜けてると思います。いちおう。

検証

バッチと補足事項追加と、自分の環境下で検証を行いました。
Jackさんの投稿されたBatは、MAME2010(0.139)用でshinobi5.zipになりますが
そこから0.166と0.204でMAME側のRomsetが弄られている情報がありました。

そのためFBNeoとMAME向け(0.250で確認)ではshinobi6.zipになります
Shinobi (set 6, System 16B) (unprotected)の表記です。

SETがごそっと変わるの本当に勘弁してほしいですね;

事前準備

# dummy.ps1
# パラメータの設定
param (
    [string]$fileName = "315-5298.b9", # ファイル名 
    [int]$fileSize = 235, # ファイルサイズ(バイト単位)
    [string]$fillValue = "00" # 埋める値(FFまたは00)
)

# 埋める値をバイト配列に変換
$byteValue = [byte]::Parse($fillValue, [System.Globalization.NumberStyles]::HexNumber)

# 指定したサイズのバイト配列を作成
$bytes = New-Object byte[] $fileSize

# バイト配列を指定した値で埋める
for ($i = 0; $i -lt $fileSize; $i++) {
    $bytes[$i] = $byteValue
}

# バイト配列をファイルに書き込む
[System.IO.File]::WriteAllBytes($fileName, $bytes)
#ここまでをメモ帳にコピペ保存、ファイル名をdummy.ps1として保存
#dummy_ff_64k.ps1

# 任意の名前
$filePath = "dummy_ff_64k.tmp"
# 任意の容量
$fileSize = 64kb
# FFで埋める
$fillByte = 0xFF

#書込
$fileStream = New-Object IO.FileStream($filePath, [IO.FileMode]::Create)
$byteArray = New-Object byte[] $fileSize
for ($i = 0; $i -lt $fileSize; $i++) {
    $byteArray[$i] = $fillByte
}
$fileStream.Write($byteArray, 0, $byteArray.Length)
$fileStream.Close()
#ここまでをメモ帳にコピペ保存、ファイル名をdummy_ff_64k.ps1として保存

powershellスクリプトの配布はリスクがあるので
お手数ですがメモ帳にコピペ保存して各自ファイル名を合わせてください。

forcecrc32.exeは文字数減るのでx64版の自ビルド物を使っています
Pythonなどのオリジナル版をお使いの方は適宜書き換えてください。

bcut.exe、bswap.exe、oddeven.txtは


スクラップAさんのメタスラ抽出用スクリプトから入手可能です

XLBA 忍 抽出 (FBNeo1.0.0.03/ARCADE 0.250) shinobi6.zip

powershell -executionpolicy RemoteSigned -File dummy.ps1
powershell -executionpolicy RemoteSigned -File dummy_ff_64k.ps1
forcecrc32 315-5298.b9 231 39b47212
BSwap.exe d B 00000804.fnc oddeven.txt epr-11360.a7 epr-11359.a5
bcut.exe 00015004.dat epr-11361.a10 0x0000 0x8000
bcut.exe 00015004.dat epr-11362.a11-top 0x8000 0x10000
copy /B epr-11362.a11-top + dummy_ff_64k.tmp epr-11362.a11
del epr-11362.a11-top
bcut.exe 00023004.dat 00023004-1.dat 0x0000 0x40000
BSwap.exe d B 00023004-1.dat oddeven.txt epr-11368.b5 epr-11366.b1
forcecrc32 epr-11366.b1 131068 319ede73
forcecrc32 epr-11368.b5 131068 0377d7ce
bcut.exe 00023004.dat 00023004-2.dat 0x40000 0x40000
BSwap.exe d B 00023004-2.dat oddeven.txt epr-11369.b6 epr-11367.b2
forcecrc32 epr-11367.b2 131068 1d06c5c7
forcecrc32 epr-11369.b6 131068 d751d2a2
del 00023004-1.dat 00023004-2.dat
bcut.exe 00053004.dat epr-11363.a14-top 0x0000 0x10000
copy /B epr-11363.a14-top + dummy_ff_64k.tmp epr-11363.a14
forcecrc32 epr-11363.a14 131068 40914168
del epr-11363.a14-top
bcut.exe 00053004.dat epr-11364.a15-top 0x10000 0x10000
copy /B epr-11364.a15-top + dummy_ff_64k.tmp epr-11364.a15
forcecrc32 epr-11364.a15 131068 e63649a4
del epr-11364.a15-top
bcut.exe 00053004.dat epr-11365.a16-top 0x20000 0x10000
copy /B epr-11365.a16-top + dummy_ff_64k.tmp epr-11365.a16
forcecrc32 epr-11365.a16 131068 1ef55d20
del epr-11365.a16-top

mkdir shinobi6
move epr-113**.*** shinobi6\
move 315-5298.b9 shinobi6\
powershell compress-archive shinobi6\* shinobi6

正常に完了すればshinobi6.zipが生成されます
自環境での正常動作を確認済みです。

PowerScriptのバージョン更新などでエラー吹く場合は
拡張子PS1ファイルを右クリック→Powershellで実行を手動で2種類行って
バッチではコメントアウトか削除してください。

生成されたshinobi6.zipをコピーしてshinobi5.zipにリネームすれば
そのままMAME2010にも対応するはずです。(未確認)

ZIPがうまく生成されない場合は
ファイルとフォルダーを浅い階層で実行してください D:\shinobi 等

動作検証

mameベース(MAME 0.250)ではSHA1が不一致の警告が出ますが

所持ROMとしては扱われます。



プレイは問題なく可能でした!

FBNeoでは警告なしでプレイ可能です



ただしretroarchコアでは問題が出る可能性もあります。(挙動が異なる)
50円2プレイで遊んだ覚えが。まぁダメダメでしたけどね~

しめ

本当にJackさんの情熱には感謝しかありません
更新サボりがちな自分にはありがたいので改めて感謝を。

以下は与太。
AIさんに逆バニーさん書いてってお願いしたら
とてもじゃないけど公開できませんでした!もうただの〇女だよ


せっかくなので?アイキャッチ差し替えました!

まあどうせならそれっぽいほうがいいですよね。