2025年7月26日から2025年7月22日までの日記を表示中

2025年 7月26日 (土)

ドリキャス

ドリキャスのGD-ROMの高密度領域に複数トラックが記録されているタイプのダンプで、最後のデータトラックの直前の2秒の空白部分の最初の2セクタをうまく読み出せない問題に関して、開始セクタによって中身が変わることをツイートしたら、ランダムっぽいデータになっているのはスクランブルが解けていないからではないかとのご指摘を頂きました。

うおお、CD-ROMのデータトラックって、元々スクランブルがかかっているのか!調べてみたら、ECMA-130なんていうので定義されていたりするんですね。これは知らなかった。

早速ダンプ済みのスターグラディエイター2のデータに対して、教えていただいたツールを適用してみたところ、ランダムっぽかった中身が綺麗なデータに!

unscramble成功

中身が綺麗なデータになった

調べてみると、最初の 12Byte (00 FF FF FF FF FF FF FF FF FF FF 00) の部分が同期部分で、その後の3Byte (A3 01 40) がそのセクタのアドレスを時刻 (分、秒、フレーム) の模様。数字はBCD形式とのことですが、分の部分が 0xA3と、BCDじゃない数値になっちゃっています。これは多分、GD-ROMだとCD-ROMと違って99分を超えちゃうので仕方なく拡張したものと推測w。なので、0xA3は103分かな。計算してみると、103 * 60 * 75 + 1 * 75 + 40 = 463,615 となり、まさに最後のデータトラックの2秒手前の最初のセクタ番号と一致しますね。

次のセクタ 463,616も正しくスクランブル解除できているようだったので、これらをダンプ済みのデータと合成してみたところ、ついに最後のデータトラックのSHA1が redump.orgのデータベースと一致するようになりました。やった!ありがとうございます!いやしかし、ほんと解決するとは思いませんでしたw。SNS凄すぎるw

切り貼りして再構築した最後のデータトラックのSHA1

redump.orgのSHA1

その後、調べたら、スクランブルのアルゴリズムとかも見つかったので、Cで再実装してみました。これでLinux上で、httpd-ackを利用したダンプ結果のredump.org互換形式への変換を自動化できそうです。

2025年 7月25日 (金)

トイ・レンジャー

訂正不能エラーが出て末尾の3トラック (トラック13〜15) がダンプできないトイ・レンジャーです。

末尾の3トラックがダンプできないトイ・レンジャー

セガラリー2のような目立つ傷は見当たらなかったんですが、よく見ると、数ミリ程度のやや深めの傷が回転方向に・・・。場所的にも、エラーが出るあたりと一致してそうな気が。これなのか?

数ミリの傷を発見

ダメ元で手研磨してみました。

手研磨してみた

結果は・・・成功! トラック13からトラック15まで、エラー無しでダンプできるようになりました。やった。

トラック13〜14エラーなし

トラック15もエラーなし

基板

先日手に入れたSuper Major Leagueのカートリッジを開けてみました。

Super Major Leagueのカートリッジを開けてみた

中の基板は裏までマスクROMがぎっしりです。・・・あれ、そんなにROMが載ってるタイトルじゃないよね・・・?

裏までマスクROMがぎっしり

よく見たら、裏側のROMは、手作業で貼ったような雰囲気が・・・。

裏側のROMは手はんだしている?

あ!表側にあるMPR-19745〜MPR-19750って、バーチャファイターリミックスのマスクROMじゃんw。バーチャファイターリミックスの基板と並べてみるとこの通りw。下がSuper Major Leagueの基板です。

バーチャファイターリミックスの基板と並べてみた

タタコットと同様に、余っていた基板を再利用したパターンと推測されます。 ということは、UVEPROMを交換するだけで、Super Major Leagueのカートリッジでバーチャファイターリミックスが立ち上がるはずw。というわけでやってみました。

Super Major LeagueのEEPROMをバーチャファイターリミックスのものと交換

きた!Super Major Leagueのカートリッジ基板でバーチャファイターリミックスが立ち上がりましたw。公式2 in 1、お得ですねw

バーチャファイターリミックス起動した

N64

Windows PC上で手持ちのN64のソフトのダンプを始めたんですが、カートリッジの差し替えがだいぶしんどいことがわかってきました。一旦ダンパーのドライブをアンマウントして、USBケーブルを抜いた上でカートリッジを交換し、再度USBケーブルでPCに接続するみたいな。ケーブルの抜き差しのところは物理的なスイッチのついたUSBハブのオフ・オンで済むんですが、アンマウントがマウス操作を必要としてとにかく面倒くさい感じです (アンマウントせずに、いきなりUSBケーブル抜き差ししても良いのかもしれませんが・・・)

何とかここを楽にできないものかと思って調べてみたら、PowerShellで簡単に制御できる模様。今回のダンパーであれば、以下のようにすることでアンマウントできることがわかりました。こりゃ楽ちんです。

pnputil /remove-device "USB\VID_CAFE&PID_4003\123456789012"

そして、以下のようにしてPowerShellごと呼び出すことで、MSYS2上のシェルスクリプトからも利用できました。素晴らしい。

powershell -Command "pnputil /remove-device \"USB\VID_CAFE&PID_4003\123456789012\""

これで カートリッジをダンパーに装着 → USBハブのスイッチをオン → シェルスクリプト実行 (マウントされたドライブからROMの中身をコピーしてアンマウント) → USBハブのスイッチをオフ → カートリッジを取り外し・・・という流れでガンガン回せるようになり、劇的に効率が改善しましたw

こうなると、次にしんどいのはカートリッジの端子の清掃ということになるんですが、こればかり手作業で頑張るしかないですねw

ドリキャス

今日の15kHz調査。まだやってますw。KOF '99 Evolutionです。

KOF '99 Evolution

15kHzはRGB1・RGB2ともに240pで立ち上がりました。こうでなくちゃねー。

RGB1・RGB2ともに240pで起動

VGAは非対応ですね。ストIII 3rdみたいな裏技ではなく、15kHzで普通に240pで立ち上がるゲームで、なおかつVGA対応のものはあるのかな。

VGAは非対応

2025年 7月24日 (木)

ドリキャス

先日ゲットした 670-14071G (MIL CD非対応本体) をばらして、メインボードにアクセスできる状態にしてみました。何気にドリキャス本体をここまで開けたのは初めてかもしれませんw

670-14071Gの基板

基板はちゃんとVA1です。

基板はVA1

BIOS ROMはMPR-23588-X2という型番のものでした。同じVA1基板を使っている670-14071Eとは、まずここが違うっぽいんですよね。

BIOSはMPR-23588-X2だった

あと、ダンプした結果を、なんとかしてredump.orgの結果と合わせられないかと思い、ポチってみたSDカードアダプタが届きました。redump.orgのWikiの、SDカードを使ったGD-ROMのダンプの説明のところに、気になることが書いてあったんで・・・。

If the HD area has more than one track, the tracks will need to be properly split to conform to Redump standards (Fireball knows hows to do this).

ドリキャス用のSDカードアダプタが届いた

というか、何の説明もなくDreamShellのCDが付属しているんですが、これは・・・w。しかもレーベル面に「CD-R」って書いてあるのにプレスCDっぽいしw

プレスCDっぽい

せっかくなのでDreamShellを試してみることに。SDカードに最新のDreamShell (4.0.2) を持ってきて起動させてみました。

SDカードにDreamShell 4.0.2を入れて起動

おおー、立ち上がった。

DreamShell 4.0.2が立ち上がった

試しにスターグラディエイター2を読んでみます。いやしかし、何でNAOMIのGDドライブの写真が使われているんだ、これ・・・

スターグラディエイター2を試しにダンプ

げ、トラック4に入ったところで止まるぞ。スターグラディエイター2はトラック66まであるんですが・・・w

トラック4のダンプが進まない

2回試して2度ともだめだったので、DreamShellのバージョンを4.0.0に落としてみました。

4.0.0に落としてみた

4.0.0だとトラック4以降も含め、全トラックをダンプできました。4.0.2はバグありなのかな?

4.0.0ではダンプ成功

ダンプした結果は、トラックごとにISO形式になっているっぽいですね。圧縮されてるのかな。展開の仕方がよくわからんので終了w

では、本命のSD Rip 1.1の方を試してみます。redump.orgのWikiにも、これを使うと書かれていたので。

SD Ripも試してみた

こっちは無圧縮のバイナリで保存することもできるようですが、ダンプする範囲をセクタレベルで細かく指定することはできないようですね。普通にhttpd-ackと同じ範囲しか取ってくれないっぽいなぁ。本当にこれで取った結果を切り貼りして何とかなるのか?うーん・・・

2025年 7月23日 (水)

セガラリー2

途中のトラック14と最後のトラック23で訂正不能エラーが出まくってダンプに失敗するセガラリー2のGD-ROMの盤面を手研磨してみました。

いつもの手研磨セット

延べ2時間ほど頑張った結果、同心円状の傷はかなり薄くなりました。

傷はかなり薄くなった

トラック23はエラーが出るものの、リトライで乗り切ってどうにか完走。これでもまだエラーゼロにできないとは・・・。

トラック23はエラーを出しながらもどうにか完走

一方、トラック14の方はエラーが解消しました。やった。

トラック14はエラー解消

まあしかし、ダンプができたとはいえ、できることならエラーを完全に取り切りたいところではあります。とはいえ、またここから頑張るのもなかなか辛いところ。うーん、これはもう思い切って研磨機を買うべきなのか・・・w

2025年 7月22日 (火)

ドリキャス

ちょっと確認したいことがあり、MIL CD非対応のドリキャス本体 (670-14071G) を買ってみました。

MIL CD非対応本体 (670-14071G) を入手

670-14071G

商品説明にあった通り、GD-ROMのメディアすら読み込まない状態でした。「ゲームディスクを入れてください。」と表示されます。

メディア読み込まず

試しにレンズの部分をIPAで掃除してみたところ、綿棒の先が茶色にw

レンズの部分を掃除してみた

これはいけるんじゃないかと再度チャレンジしたところ、バッチリGD-ROMのゲームが立ち上がるようになりました。やった!単にレンズが汚れていただけだったのねw

GD-ROMのタイトルが起動するように

では本番。MIL CDのメディアを入れてみます。するとレンズを掃除する前と同じ「ゲームディスクを入れてください。」の表示にw。MIL CD非対応の本体だとこうなるんですな。なるほど。

MIL CDを入れると「ゲームディスクを入れてください。」のメッセージに

ちなみに何となく開けてみたら電池がやばいことが判明w

電池がやばい状態

液漏れしたのが飛び散って、金属部分も一部錆びかけてるように見えますね。どうせ寿命が尽きてて充電されないだろうから、さっさと外そう・・・。

金属部分にも影響が・・・

2025年7月26日から2025年7月22日までの日記を表示中

中の人情報

名前:
nosuke (のすけ)
メール:
sasugaanijaのgmail.com
「の」は「@」みたいな
関連リンク:

カレンダー

2025年7月
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

<<先月分

翌月分>>

最新の10件のエントリ

最近の10件のコメント

過去ログ