2020年5月30日から2020年5月26日までの日記を表示中
2020年 5月30日 (土)
■基板
CPS3のBIOSにデコード機能&チェックサム調整機能を追加するために、GNUのSH向けのクロス開発環境を導入してみました。ARM Linux向けのクロス開発とかはたまにやっていましたが、OSなしの環境で動かす素のバイナリ開発となると、ゲームボーイアドバンス向けのプログラムを書いたりしていた頃以来ですかね・・・。当然、それそのものの情報はないんですが、ググりまくって断片的な情報を集め、繋ぎ合わせて、何とかそれっぽいフローを構築することに成功。何となくCで書いたプログラムが、指定したアドレスに貼り付けて動くバイナリになっているように見えます。
で、早速、Cで書いたデコードルーチンをコンパイルしてみたんですが、 なぜかここで __ashlsi3みたいな、libgccに含まれていると思われる謎のローテート関数がリンクされるようになってしまいハマりました。そんな高度そうなものなんか使わずに動く処理のはずなのになぜ・・・と思ったら、コードの書き方が悪いせいで、任意ビット幅のローテート処理ができる関数としてコンパイルされているのが原因でした。使うのは2bitの左ローテートと4bitの左ローテートだけなので、それ専用の関数を作ったら、余計なものがリンクされることはなくなり期待通りのバイナリに。ふぅー。
あ、そういえば今日、Amazonで買ったSH-2 (HD6417604SF28) が届きました。
2個買ったつもりだったんですが、合わせ買いのために一旦キャンセルしたつもりになっていたのがキャンセルできていなくて、都合4個もw。まあ、きっとあったらあったで何かの役に立つはずですねw
2020年 5月29日 (金)
■ブルーインパルス
窓から都内の方向を見ていたらギリギリ見ることが出来ました。医療関係者でも何でもないですが、何か活力貰った感じですw
[コメントを書く]
2020年 5月28日 (木)
■基板
CPS3、今日は特に実機を触ったりすることなく、インストール時の動作をMAME上で追ったり、BIOSを逆アセンブルした結果を眺めたりしたくらい。ちょっとBIOSをハックして、BIOS内でデコードとチェックサムの調整を行うことで、素のメディアからインストールできるようにしてみようかと思い・・・。
[コメントを書く]
2020年 5月27日 (水)
■基板
今日もCPS3のカートリッジのカスタムCPUを HD6417604SF28 に貼り替えてみました。これで4つ目です。そして、ついに手持ちの HD6417604SF28 の在庫が尽きました(当時5個買っているので、本当はもう1個あるはずなんですが見当たらず。おそらくちょっと前にICトレーごと落として床にぶちまけた際にどこかへ飛んでいってしまったものと思われます・・・)。だいぶ慣れてきて、作業自体は30分もかからずに終わったんですが、なぜかまったく起動しません・・・。2時間近く、ルーペと針で不良箇所がないか探し、少しでも怪しいところは手直しするというのを繰り返したんですが、症状は一向に改善しません。うーん・・・(´・ω・`)
もしや別の場所に問題が?・・・と、試しにフラッシュメモリを読んでみたら正解でした。わけのわからないデータが・・・。カスタムチップを剥がした後、ちゃんとしたデータを書き込んだつもりだったんですが、書けていなかったのか、それとも何かの拍子に消えてしまったのか。で、改めて書き直したら一発で起動してくれました。うー、もっと早くフラッシュメモリを疑うんだったなぁ。というわけでジョジョの奇妙な冒険 未来への遺産についても、無事デコード済みのものを動かすことができました。
[コメントを書く]
2020年 5月26日 (火)
■基板
今日も1つ、CPS3のカートリッジのCPUを HD6417604SF28 に貼り替えてみました。
まあ特に問題なさそうです。
ついでに別のカートリッジでFeRAMを剥がし、下のパターンを観察してみるなど。なるほど、こうなってたのかw
しかし、こうもSH-2版が手軽で確実となると、HD6417604SF28 を使ったソリューションを考えるべきなのかもしれませんね。とりあえず実験ができるように、少し買い足しておこう・・・と、AliExpressで数日前に見つけた出品を開いて注文しようとしたら、何とページ自体が消滅しているではないですか (´・ω・`)。お安くて、数も潤沢だったのに、なぜこのタイミングで・・・。
国内だと、なぜかAmazonでAmazon販売のものが買えたりするようですが、若干お高い感じになっちゃいますね。まあでも、実験用で何個か買い足すだけならこれもありか。
[コメントを書く]
2020年5月30日から2020年5月26日までの日記を表示中
[コメントを書く]