2012年1月28日の日記を表示中

2012年 1月28日 (土)

E-SWAT

実家で待機している間、暇だったのでE-SWATの電池切れ対策をしてみました。E-SWATはFD1094なので、コード空間部分のみを見つけ出してデコードしてマージすればOKです。当初、手でちまちまと追っていたのですが、途中でデータとプログラムの境界に必ず「4e 71 (NOP)」が現れることを発見。これを利用して一気に切り分けが完了しました。ひとまずエミュレーター上で動かしてみたところ、あっさり起動。戻ったら実機で動かしてみましょう。

ちなみに、作業の途中で再びdis.xでaddi.bなどの一部が未定義命令となってしまう問題に遭遇しました。さすがに耐えられない感じだったので、調べてみたところ、どうもアドレッシングモードが Absolute Short のときに発生しているようです。その辺をヒントにソースを追ってみたところ、disasm.cでDisasm_ExactがTRUEになっているのがまずいっぽいことが判りました。この値をFALSEに変更してやったところ、無事未定義命令扱いが解消。いやー、よかったよかった。これでSDIの逆アセンブルの問題も解決ですね。

帰宅

用事が済んだので、夜に自宅に戻りました。眠い・・・。

[コメントを書く]

COOL 2012/12/17(月) 22:49:38
のすけ様へ

初めまして、COOLと申します。
先ほどのすけ様のブログをみて
もしかして?と思いまして、ご相談して頂きたいことがあります。

ブログにアップしたセガ・システム16基板E−SWAT電池が切るパッチ作業をみました。
私が持っているE−SWATの基板のバッデリが切れて起動できません(涙)
もし、宜しければのすけ様が作業したE−SWAT電池無くても起動出来る
プログラム・ロムファイルを私に送って頂けないでしょうか?

どうしてもいかしたいです・・・

初めてなのでこんな御願いして大変申し訳ございません。
ご検討してくださいませんか?

では、返事お待ちしております。

帰宅後、届いていた阿修羅ブラスターを動かしたりしていたら、ケイゴさんがナムコクラシックコレクションのスコアのリセット方法を掲載したサイトを見つけてくれました。何と、標準で用意されていたんですね。というわけで、さっそく試してみました。

初期化前。

初期化前

初期化後。

初期化後

バッチリですねー。ちなみに、上記サイトに掲載されている方法だとうまくいかなかったので、以下のようにちょっと変更して行ってます。

  1. テストスイッチを押しっぱなしにしてテストモードに入る
  2. 1Pのスタートとサービススイッチを押しっぱなしにする
  3. テストスイッチを離す

で、その後は、昼間実家で作業したE-SWATの実機上での動作確認。CPUを68000に交換して、プログラムROMをデコード済みのものに差し替えます。

E-SWAT動作確認

おー、バッチリ。

E-SWAT

しかし、テストプレーが苦痛だww

プレイデモ

おっと、直さないと。

ROMエラー

2012年1月28日の日記を表示中

中の人情報

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

カレンダー

2012年1月
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件のコメント

過去ログ