しげしげブログ

基本的にゲームハードとかゲームのネタ書きます。もちろんMSXも!(MVSのことばかりになってます) 修理ネタとかまとめます。B級映画とかの話もします。記事はコントです。Twitterアカウントは @gcshigeru です。めんどくさがりなので記事が雑です。アフィなし!!なんかTwitchでは積みゲー崩ししてます https://www.twitch.tv/gamecenter_shigeru note https://note.com/shigeshigeru

某ファイルのCRCは今までの吸い出し分の考察(人間)と総当たり(ChatGPTのAI使用)で解決するかも

CRCの合わなかった某ファイルですが既存のものと比較したら

当然ながら答えはすぐ分かるというかただのインチキです

単なるパッチです

しかし、しげるは苦労して大量に抽出してきたので

それらと比較して考察して総当りすればインチキしなくても

多分答え出るんですよ

しげるだからできた考察ヤッタネ

Stirlingはファイル比較する時強調表示できるので

形として見えるので分かったことなのです

比較その一 形は同じですがずっと見ていると気づくことがあるはずです

比較その二 これだけだとわからないですね 形も違いますね

似たようなパターンがあるということはわかりますよね

比較その一においてアヤしいアドレス見えてますね

そして先頭の方にあったからわかった話です

真ん中の方とかにあったなら多分分からなかったです

そういう場合は今後も分かることはないでしょう

後、結構な変更がある場合も無理です

 

で、あやしいアドレスはズバリ

0x014,0x015ですね00,00になってるファイルが多数だったのですが

e5,1bになってますね

とりあえずe5,1bに変更しましたがCRCは残念ながら合いませんでした

80,80や96,6aになっているファイルもありました

ほとんどが00,00だったのですがここに時々違う数字が入っているんです

そうです、0x014,0x015は00,00からff,ffまで入れていけば

そのうち答えが出る可能性あるんです

あの3桁の数字合わせたら開く鍵みたいな話です

これは覚えておくべきアドレスです

ということで実際どれぐらいで答えでるのかです

e5,1bという数字がヒントっぽいので

e0,10からやってみるほうが早いかもしれません

ChatGPTにやり方聞いてみながらテストです

ちなみに比較その二に関してもアドレス0x09,0x0aが

アヤしいのでCRC合わないファイルができた場合

今後注目する価値アリです

今回は右側のはMAME分とCRC合ったので弄る必要ないんですが

 

ChatGPTすげぇ…

Pythonスクリプトほんとに出してくれました…

PythonよりPower shell のほうが良かったのでPower shellで作成してもらいました

某メモの件ももしかして頭ウニらなくてもChatGPTでできるんじゃね?

日本語でうまく説明しないとだめと思うけど

 

2024年9月5日追記

当時のPower Shellのスクリプト残ってましたw

m1crcfix.ps1で保存してご利用ください

高速なCPUと高速なストレージ20GBぐらい推奨

ファイル名を例のM1ファイル名にして実行してください

 

# ファイル名を指定
$fileName = "binaryfile.bin"

# 0x14アドレスの範囲
$addr14_start = 0x00
$addr14_end = 0xFF

# 0x15アドレスの範囲
$addr15_start = 0x00
$addr15_end = 0xFF

# 保存先フォルダを指定
$outputFolder = "output"

# 変更回数
$count = 0

# 範囲内の値を1つずつ変更
for($i = $addr14_start; $i -le $addr14_end; $i++) {
  for($j = $addr15_start; $j -le $addr15_end; $j++) {
    # ファイルを読み込み
    $bytes = [System.IO.File]::ReadAllBytes($fileName)
    # アドレス0x14の値を変更
    $bytes[0x14] = [byte]$i
    # アドレス0x15の値を変更
    $bytes[0x15] = [byte]$j
    # 保存ファイル名を作成
    $outputFileName = "{0}\file_{1}.bin" -f $outputFolder, $count
    # ファイルを保存
    [System.IO.File]::WriteAllBytes($outputFileName, $bytes)
    # カウントをインクリメント
    $count++
  }
}

 

人間の考察力+AIを使った解析になるとは思ってなかった最先端だな…

現在ファイルはどんどん作成されてますきちんと指示すればすぐでした

そのファイルの中にMAMEのデータベースと

同じCRCのファイルがあれば成功です

オオゥ…

指示少し間違えたのでやり直しと思ったけどこれでもいけるかな?

少し待ってみる

理屈上256x256の65536ファイルできるはずです

時間かかるので一旦飯

すいません最初に作ってもらったやつやはり

指示の出し方が悪くめちゃくちゃ遅すぎたので

ChatGPTに新しいスクリプト作ってもらいました

きちんと指示出せばすぐに終わりました、お恥ずかしい

後はExplzh等CRCが確認できるアーカイバでまとめます

 

ということで結果です

未来帝国ローマとか観てたので遅くなりましたすんません

とりあえずexplzhからコピペ

ファイル数と番号が合わないのは上に書いた通り

遅すぎたのでとりあえずそれで出来てた部分の続きからやってるからです

それも指示通りで作ってくれるChatGPTスゴイ

    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   3084FB6F file_51217.bin
    131072      56996  43.4% 2023/05/03 02:39:04 A--W  Deflate   EC483CD4 file_51218.bin
    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   A7F381BD file_51219.bin
    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   8EA0B5E3 file_51220.bin
    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   C51B088A file_51221.bin
    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   19D7CF31 file_51222.bin
    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   526C7258 file_51223.bin
    131072      56996  43.4% 2023/05/03 02:39:04 A--W  Deflate   4B71A78D file_51224.bin
    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   00CA1AE4 file_51225.bin
    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   DC06DD5F file_51226.bin
    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   97BD6036 file_51227.bin
    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   BEEE5468 file_51228.bin
    131072      56996  43.4% 2023/05/03 02:39:04 A--W  Deflate   F555E901 file_51229.bin
    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   29992EBA file_51230.bin
    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   622293D3 file_51231.bin
    131072      56996  43.4% 2023/05/03 02:39:04 A--W  Deflate   DA99033C file_51232.bin
    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   9122BE55 file_51233.bin
    131072      56996  43.4% 2023/05/03 02:39:04 A--W  Deflate   4DEE79EE file_51234.bin
    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   0655C487 file_51235.bin
    131072      56997  43.4% 2023/05/03 02:39:04 A--W  Deflate   2F06F0D9 file_51236.bin

出ました

かなり最後の方でしたね

人間の考察力とAIによって解析されましたとさ

この解析でMAMEとのCRC合わないファイルが出なかったら

またHBMAMEに自力追加しないとだめだったので助かりました

割とめんどくさいんですよ

このブログとかではわざと変な言葉使ってますが

実は日本語の文章のテンプレとか作るの得意なんですよ

そんなわけでやりたくもないのに

CADデータのパーツのマニュアル作らされたこともありました

おわり

ということでこれは解析したということで成果は

解析した上でのパッチということで問題ないと思われます

手動でやったら途方もない時間がかかったはずです

そのうち色々AIに抜かれると思いますコワイ

AIの創作物の著作権議論が熱い今日このごろでした