[過去ログ] スーファミのプログラム (455レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
135(1): 名前は開発中のものです。 [sage] 2005/09/03(土) 22:30:02 ID:QvqXUpey(1) AAS
131はまじめにデータ・プログラム解析さえしたことないんだろうな
136: 名前は開発中のものです。 [sage] 2005/09/04(日) 16:44:10 ID:2n7OtZ+R(1) AAS
>>135
市販のROMを違法な手段で入手して解析する事がまじめな事なのかな?
逆汗なんて非効率的だよ。わざわざそんな手間をかけて少ないエッセンスを得ようとするよりも
データ構造や設計方法論を学ぶ事をお薦めするね。
あ、改造厨にはどうでもいい話かなw
137: 名前は開発中のものです。 [sage] 2005/09/04(日) 16:51:10 ID:t/pYge90(1) AAS
ウワサッつーかねえ。当時ちゃんと記事でてたしな。
138: 名前は開発中のものです。 [] 2005/09/04(日) 17:09:23 ID:KiGBsHVy(1) AAS
131 :名前は開発中のものです。:2005/09/01(木) 02:54:05 ID:dgO3PdCz
>>130それただの噂だ
事情通ぶって情報を鵜呑みにしてるだけだろおまえ
開発当時のスーパーファミコンには ファミコンとの互換性が考えられていた
外部リンク[html]:www.ne.jp
139: 名前は開発中のものです。 [sage] 2005/09/05(月) 17:06:15 ID:VIJGdgOy(1) AAS
131はいったいなにがやりたかったんだ
140: 名前は開発中のものです。 [sage] 2005/09/05(月) 17:46:48 ID:Tm7tvd2U(1) AAS
熱暴走じゃないの?
141: 名前は開発中のものです。 [sage] 2005/09/07(水) 17:41:31 ID:5qAvvR6R(1) AAS
煽り口調で知ったか、決め付けはお手の物
救いようのない馬鹿もいるもんだね
142: 名前は開発中のものです。 [sage] 2005/09/07(水) 19:48:26 ID:Gir0Q90i(1) AAS
どうやら脳のアーキテクチャに問題があったようで
143: 名前は開発中のものです。 [sage] 2005/09/17(土) 09:34:19 ID:SGK26XtE(1) AAS
もうガイシュツかと思うが、スーファミの逆アセンブラは
基本的には正しい情報を吐き出せない可能性のほうが高い。
アキュムレーター8bit/16bit インデックスレジスタ8bit/16bitに
自由に切り替えが出来るが、例えばサブルーチンではA8X16前提で
呼ばれるとして、サブルーチンの頭でいちいち設定しないものもあるだろう。
ご丁寧に全てのルーチンにおいて設定してあるなら、問題ないがな。
A16X16でずっとやればいいんじゃ?なんて言う人もいるだろうが
LDA #0でも、A8なら命令長2バイト、A16なら3バイトと違うし
実行速度も変化する。
CPUが遅い&メモリが少ないという制約が結構あるので、その辺は
当時のプログラマはこだわって作っていた気がしないでもない・・・
144: 名前は開発中のものです。 [sage] 2005/09/19(月) 17:05:15 ID:jM2IG00Z(1) AAS
当たり判定とVRAMへの転送だけ高速化したらあとはラクしたいね。
命令長を頻繁に変えてバグが探しにくいのも大問題だし。
実行速度が稼げなかったら、あとは処理を間引くとか?
敵は30fpsで動くとか・・・
145: 名前は開発中のものです。 [sage] 2005/10/13(木) 15:08:12 ID:/wRgIeSs(1) AAS
>外部リンク:gamesource.groups.yahoo.com
snescてのがあるみたい。ぼくも見つけたばかりでこれから調べるんだけど
146: 名前は開発中のものです。 [sage] 2005/10/20(木) 04:02:34 ID:nxVrrZhD(1) AAS
できるだけちゃんと命令を読み込める逆汗ってどういうものなんだろうか。
試しに作ってみたけどたぶん違う所でバグってる。
147: 名前は開発中のものです。 [sage] 2005/10/20(木) 15:27:12 ID:5TU3rAft(1) AAS
・REP/SEPによるレジスタサイズの変化に追従して、サブルーチンが呼び出されるたびに
呼び出されたアドレスとレジスタサイズを記録して
それを元に呼び出されたサブルーチンを再度読み直しをするようにする
・アブソリュート・インデックス・X・インダイレクトの命令で、例えば
FC D192 : jsr (92D1,x)
ってのがあったとして、92D1以降から、↑で記録されている最短のサブルーチン開始アドレスまでは
2バイトのアドレスとして読み込む
これらを実現できれば読み間違いは大分減ると思うがどうか。
個人的にはサブルーチン呼び出しをツリーにしてエクスプローラ感覚で操作できる
逆アセンブラがあると面白いと思う
148: 名前は開発中のものです。 [sage] 2005/10/21(金) 03:14:12 ID:DbQnAJ3P(1) AAS
とりあえず作った(というかできてない)のは
・指定されたアドレスから読み込み始めて要はプログラム部だけを読む。
・REP/SEPによるレジスタサイズの変化に追従。
っての。
サブルーチンって別にスタックいじったりしてませんよね。
むしろしてた方が楽な気もするんですけど。
あとCOPとかよく分からないのは適当にほっといてる。
というか適当にまとめた自作のテキストがどこまで合ってるのやら。
149: 名前は開発中のものです。 [sage] 2005/10/21(金) 07:14:50 ID:Gjb8q/6p(1) AAS
既存のものには無いから良さげだね。というか使ってみたいw
JSLもJSRもスタック使うよ。でないと戻ってこれない
サブルーチン呼出や割り込み前後でSレジスタは変化させられないんで
Sレジスタの変化を見とくと一応エラー検出できる
COPは基本的にはサブルーチン呼出と似たようなことしてるだけ、のはず
150(4): 名前は開発中のものです。 [sage] 2005/10/22(土) 02:37:32 ID:nKn2P5ya(1) AAS
スタックいうかフラグとかその他レジスタとかを全部一時避難させてるかなって事っす。
ソースとテキストを苺1M2217に上げましたんで興味がおありでしたら見てください。
細かい作りは結構適当です。
少なくともスタック関係はちゃんと対応するように組まれてる事を前提にしてます。
解凍パスはdis。
あとreadmeの例はラストバイブル3。
それとヘッダに対応してないというか外してください。
もう1つ、C++コンパイラはありますよね。
そういえばソースも人目に出すには適当すぎ。
151: 名前は開発中のものです。 [sage] 2005/10/22(土) 10:19:44 ID:8BwQhggQ(1) AAS
興味あるけどどこにあるのかわからんのでいいや
152: 名前は開発中のものです。 [sage] 2005/10/22(土) 19:39:34 ID:pej7E3Fe(1) AAS
苺 Sn>Google
153(1): 名前は開発中のものです。 [sage] 2005/10/23(日) 01:05:29 ID:ua+9qehO(1/2) AAS
>>150
自作のテキストでどこの人かわかってしまったw
同じ住民じゃないけど乙です
サブルーチン呼出で退避するのはPCまたはPC,PBで
フラグを退避するのは割り込みです
あと動かしてみたけど、LoROMでバンクが偶数の時に
指定したアドレスから8000引くのを忘れてますよ
82DE25で指定したら1DE25が逆汗されてました
154(1): 名前は開発中のものです。 [sage] 2005/10/23(日) 02:00:53 ID:bY1d22Lh(1) AAS
up2217.zipってやつでしょ?「dis」で解凍できないんだけど・・・。
こういうやりとりでレスを消費すんのが面倒だから嫌なんだよ。こういう虹っぽい隠し方っつーか。
155: 150 [sage] 2005/10/23(日) 04:24:59 ID:fbSsnlDs(1) AAS
>153
住人言うか解析つながりで見てたんですけどね。
というかあっちではスルーされてたなぁ。
前はswitchで命令分けてて滅茶苦茶面倒になって投げたんですよね。
他にもテキストで変な所ありませんでした?
>154
なんつーか癖というか習性です。
カキコする前にチェックしてなかったからもしかしてと思ったけど解凍できましたよ。
156(1): 名前は開発中のものです。 [sage] 2005/10/23(日) 09:39:21 ID:ua+9qehO(2/2) AAS
多分半角じゃなくて全角です
>>150
他に見つけたのは
・FCがJSR ($MMLL,X)ではなくJSR ($LL,X)で表示される
・stert→start
157: 150 [sage] 2005/10/24(月) 04:05:55 ID:qudMBFQw(1) AAS
>156
ども、あとでチェックしてみます。
個人的にはF4とかも自信が無いっす。
そういやインデックスレジスタの直値系はXフラグで見るので大丈夫ですかね。
テキスト言うか65816-C.txtを元に作ってるんでコレが間違ってるとプログラムは多分間違ってます。
いや、合ってても間違ってる部分がほかにもあるのは確定。
FC JSR とか逆汗しても分からない部分はどうしよう。
そのあたり解析用のファイルをユーザに作らせてジャンプ先のテーブルを書き込むって方式はどうだろうか。
最初は解析中にユーザに値を入力させるWindowsプログラムを考えてたから結構つくりが適当なんです。
158: 名前は開発中のものです。 [sage] 2005/10/24(月) 13:59:29 ID:0fWB76iK(1) AAS
逆汗した後テーブルファイルを作るくらいなら、
直接逆汗テキストに書き込んでしまうと思うけど・・・
予めユーザーがFCまたは7Cが存在するのを知っているならそれでいいけど
大抵は逆汗するまでわからないものだと思うし
コンソール入力でユーザーに判断してもらうようにするか
リストの先頭アドレスに辿り着くまでアドレスリストを吐き続けるようにするかじゃないですかね
でもそれだと、アドレスリストのすぐ後に先頭アドレスが開始されない場合は
読み間違い確定になってしまうんだよなぁ・・・
ちなみにエクスプローラライクなのが良いと思うのは
その辺を考慮して適宜自分で修正できるってのが理由
159: 名前は開発中のものです。 [sage] 2005/10/25(火) 02:44:17 ID:sulmJKDH(1/2) AAS
逆汗後と言うか、つまりFCとか7Cってジャンプ先がいくつかある可能性があるし、
コンソール入力だと複数入力させるのに対応させるのが面倒だし、
ジャンプ先が設定ファイルに書いてない場合のデフォルトの操作として
警告でそのアドレスを出力させたりするとか考えてる。
たまにサブルーチンの中でサブルーチン開始アドレスより前のアドレスに飛んで合流する事があったりしてあまりややこしい事はやりたくないのよ。
とか言うもののエクスプローラライクが解析しやすいってのも分かるけどね。
上下前次1-新書関写板覧索設栞歴
あと 296 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.018s