記事非公開のお話 & DJmainのHDDパスワードのお話
純正じゃない疑惑が強くなりまして
購入した5thMIXのROM&HDDのコピー&復号化済の疑惑が生じました。
さすがにそれは正当な吸出しなのか?
(特にHDD)と疑問符が付いちゃうので
記事を2つほど(HDDイメージ吸出しと動作確認)を非公開にしました
ほんとうに申し訳ないです。
アーケード界隈だと、メーカー保守終了後の
ユーザー修理ではよくある事なんでしょうけども
やっぱり購入前には最低でも外見とICのチェックが必要でした(深く反省
正規のイメージ化の手順
4thMIX以後は基板でゲームを起動することでHDDの暗号化を解除
HDDへの電源供給を維持しつつ、基板からHDDを取り外し
OS起動を一時的に止めておいたPCにHDDを接続
OS起動後にWINHEXでイメージ化するという手法となっています。(参照)
※パスワードが現状全て判明してるので
後述するhdparmでlinux上から直接暗号化の解除が可能かもしれません(未検証)
以下、実機でのHDD交換の情報として掲載します。
5鍵ビートマニアの HDDパスワードについて(実機用・未検証)
CF化は海外サイトだと、うまく動かなかったという話を見ましたが
どうも4thMIX以後の製品は、HDDのマスターおよびユーザーに
パスワードがかかってるようです(MAMEソース最下段ちょい上を参照)
先に記載したツイートから、復号化済イメージでそのまま動作する場合もあるようですが
パスワードをかけないとエラーで止まる事例もあるようです。(基板のバージョン次第?)
恐らく自分が手にしたものは、前者のような環境で利用されたものだったのかなと。
/*************************************
*
* Driver-specific init
*
*************************************/
static DRIVER_INIT( beatmania )
{
UINT8 *region;
region = new_memory_region(machine, REGION_SOUND1, 0x80000 * 32, 0);
/* spin up the hard disk */
ide_controller_init(0, &ide_intf);
}
static const UINT8 beatmania_master_password[2 + 32] =
{
0x01, 0x00,
0x4d, 0x47, 0x43, 0x28, 0x4b, 0x29, 0x4e, 0x4f,
0x4d, 0x41, 0x20, 0x49, 0x4c, 0x41, 0x20, 0x4c,
0x49, 0x52, 0x48, 0x47, 0x53, 0x54, 0x52, 0x20,
0x53, 0x45, 0x52, 0x45, 0x45, 0x56, 0x2e, 0x44
};
(略)
static DRIVER_INIT( bm5thmix )
{
static const UINT8 bm5thmix_user_password[2 + 32] =
{
0x00, 0x00,
0x44, 0x42, 0x56, 0x4b, 0x37, 0x35, 0x4a, 0x23,
0x5a, 0x52, 0x0c, 0x3e, 0x60, 0x04, 0x6c, 0x78,
0x77, 0x7e, 0x74, 0x16, 0x6c, 0x7d, 0x00, 0x16,
0x6b, 0x1a, 0x1e, 0x06, 0x04, 0x01, 0x7d, 0x1f
};
driver_init_beatmania(machine);
ide_set_master_password(0, beatmania_master_password);
ide_set_user_password(0, bm5thmix_user_password);
}
(略)
static DRIVER_INIT( bmfinal )
{
static const UINT8 bmfinal_user_password[2 + 32] =
{
0x00, 0x00,
0x44, 0x42, 0x56, 0x4b, 0x3f, 0x4f, 0x4a, 0x23,
0x5a, 0x52, 0x0c, 0x3e, 0x07, 0x04, 0x63, 0x7f,
0x76, 0x74, 0x6a, 0x64, 0x7e, 0x68, 0x0c, 0x0c,
0x0c, 0x06, 0x71, 0x6e, 0x77, 0x79, 0x7d, 0x7a
};
driver_init_beatmania(machine);
ide_set_master_password(0, beatmania_master_password);
ide_set_user_password(0, bmfinal_user_password);
}
#endif
マスターパスワードは共通で使われていますが
ユーザーパスワードは各タイトルごと個別になっているようです。
ちなみに3rdMIXまではパスワードはかかっていないので
単純コピーで動作すると思われます。
HDDへのパスワード設定(実機起動用・動作未確認&未検証)
Mameコードに記載の最初の00 00または01 00は
(おそらく)フラグなので無視しましょう。
他のバージョンは先に記載のMAMEソースに記載があるので、各自確認してください。
Master Password
ASCII
MGC(K)NOMA ILA LIRHGSTR SEREEV.D
HEX
4d4743284b294e4f4d4120494c41204c49524847535452205345524545562e44
5thMix UserPassword
ASCII
DBVK75J#ZR>`lxw~tl}�k}
HEX
4442564b37354a235a520c3e60046c78777e74166c7d00166b1a1e0604017d1f
Beatmania Final UserPassword
ASCII
DBVK?OJ#ZR>cvtjd~hqnwy}z
HEX
4442564b3f4f4a235a520c3e0704637f76746a647e680c0c0c06716e77797d7a
ユーザーパスワードは制御文字が含まれているので
linuxでhdparm version 9.46 以後を使い、HEXでパスワードを入力しないとダメだと思います。
類似のXBOXの事例ですが、更新された答えにあるコマンドをパクって
HEXでユーザーパスワードとマスターパスワードを変更すれば起動する可能性が高いです。
ただし1000円以下の安いUSB変換機経由では、うまくいかないかもしれません。
ユーザーパスワードの設定方法
hdparm --user-master u --security-set-pass hex:(パスワードをhexで記述) /dev/(対象HDD)
–user-master mにするとマスターパスワードが設定可能だとの話です(未確認)。
マスターから入れたほうがいいかもしれません。
DJMAIN基板でHDDの交換に悩まれている方で、この方法が解決につながれば幸いです。
ディスカッション
コメント一覧
こんにちは
初代XboxもATAパスワードがかかっていますよね、ジャンクとか修理でニコイチしてもマザーボード側に書かれたパスワードと一致しないと起動しません。また解除できたとしても「同じパスワードがかかっているか」で起動監査されるのでアンロックのままでは起動しません。ネットでは共通の文字列が候補として載ってましたが嘘っぽいです。
パスワードは生データで小さいチップに書かれているので考えるのに疲れたらヒートガンで物理的にぶっ飛ばしてロムライターで移植前のXbox Hexデータに上書きできます。忘れちゃいましたがHexの特定のアドレスに該当パスワードが書いてあったはずです。
(尚XboxはFATでもNTFSでも無いのでWindowsに繋いでも何も見えずセーブデータ等は吸えません、、)
pizza19さんコメントありがとうございます!
>また解除できたとしても「同じパスワードがかかっているか」で
>起動監査されるのでアンロックのままでは起動しません。
やっぱり似たように監査が入るんですね~
海外フォーラムでも大体XBOXネタと同じだねって返しが定番でした。
>パスワードは生データで小さいチップに書かれているので
>考えるのに疲れたらヒートガンで物理的にぶっ飛ばして
>ロムライターで移植前のXbox Hexデータに上書きできます。
やることが豪快過ぎて笑ってしまいましたw
実機吸出しはpizza19さんの方がはるかに上をいかれてるので
勉強になります!ありがとうございました!