スーファミのプログラム
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
04/09/13 17:14:12ID:oqwjwnvfすずめ愛好会
http://vsync.org/
極楽プログラマの部屋
http://www.inetmie.or.jp/~koh/inside/index.htm
Console/Emulator Programming Resource in Japan
http://www.geocities.co.jp/Playtown/2004/816_2.txt
http://www.geocities.co.jp/Playtown/2004/sndtech.txt
http://www.geocities.co.jp/Playtown/2004/sfc.txt
0127名前は開発中のものです。
2005/07/24(日) 00:13:11ID:MShYV+2Oどうやってるの?
0128名前は開発中のものです。
2005/07/25(月) 12:12:35ID:TNMJR8I7改造専門だけどねぇ
0129名前は開発中のものです。
2005/08/30(火) 14:14:13ID:8PZqCpWB0130名前は開発中のものです。
2005/08/30(火) 17:17:41ID:N6kzttSe0131名前は開発中のものです。
2005/09/01(木) 02:54:05ID:dgO3PdCzそれただの噂だ
事情通ぶって情報を鵜呑みにしてるだけだろおまえ
IC自体に6502エミュレーションモードはあるがAPUその他が追いついてないんだから当然だろうが
>>128といいオツムの足りない奴ばかりだな
改造専門てwwwwwリソースハックとか分岐変えたりして遊んでるの?wwwwwww
0132名前は開発中のものです。
2005/09/01(木) 13:47:36ID:/f0+7eUxコマント゛?
0133名前は開発中のものです。
2005/09/01(木) 16:43:13ID:80i9041u0134名前は開発中のものです。
2005/09/02(金) 18:06:29ID:3yuuXMzO0135名前は開発中のものです。
2005/09/03(土) 22:30:02ID:QvqXUpey0136名前は開発中のものです。
2005/09/04(日) 16:44:10ID:2n7OtZ+R市販のROMを違法な手段で入手して解析する事がまじめな事なのかな?
逆汗なんて非効率的だよ。わざわざそんな手間をかけて少ないエッセンスを得ようとするよりも
データ構造や設計方法論を学ぶ事をお薦めするね。
あ、改造厨にはどうでもいい話かなw
0137名前は開発中のものです。
2005/09/04(日) 16:51:10ID:t/pYge900138名前は開発中のものです。
2005/09/04(日) 17:09:23ID:KiGBsHVy>>130
それただの噂だ
事情通ぶって情報を鵜呑みにしてるだけだろおまえ
開発当時のスーパーファミコンには ファミコンとの互換性が考えられていた
ttp://www.ne.jp/asahi/oroti/famicom/mab01.html
0139名前は開発中のものです。
2005/09/05(月) 17:06:15ID:VIJGdgOy0140名前は開発中のものです。
2005/09/05(月) 17:46:48ID:Tm7tvd2U0141名前は開発中のものです。
2005/09/07(水) 17:41:31ID:5qAvvR6R救いようのない馬鹿もいるもんだね
0142名前は開発中のものです。
2005/09/07(水) 19:48:26ID:Gir0Q90i0143名前は開発中のものです。
2005/09/17(土) 09:34:19ID:SGK26XtE基本的には正しい情報を吐き出せない可能性のほうが高い。
アキュムレーター8bit/16bit インデックスレジスタ8bit/16bitに
自由に切り替えが出来るが、例えばサブルーチンではA8X16前提で
呼ばれるとして、サブルーチンの頭でいちいち設定しないものもあるだろう。
ご丁寧に全てのルーチンにおいて設定してあるなら、問題ないがな。
A16X16でずっとやればいいんじゃ?なんて言う人もいるだろうが
LDA #0でも、A8なら命令長2バイト、A16なら3バイトと違うし
実行速度も変化する。
CPUが遅い&メモリが少ないという制約が結構あるので、その辺は
当時のプログラマはこだわって作っていた気がしないでもない・・・
0144名前は開発中のものです。
2005/09/19(月) 17:05:15ID:jM2IG00Z命令長を頻繁に変えてバグが探しにくいのも大問題だし。
実行速度が稼げなかったら、あとは処理を間引くとか?
敵は30fpsで動くとか・・・
0145名前は開発中のものです。
2005/10/13(木) 15:08:12ID:/wRgIeSssnescてのがあるみたい。ぼくも見つけたばかりでこれから調べるんだけど
0146名前は開発中のものです。
2005/10/20(木) 04:02:34ID:nxVrrZhD試しに作ってみたけどたぶん違う所でバグってる。
0147名前は開発中のものです。
2005/10/20(木) 15:27:12ID:5TU3rAft呼び出されたアドレスとレジスタサイズを記録して
それを元に呼び出されたサブルーチンを再度読み直しをするようにする
・アブソリュート・インデックス・X・インダイレクトの命令で、例えば
FC D192 : jsr (92D1,x)
ってのがあったとして、92D1以降から、↑で記録されている最短のサブルーチン開始アドレスまでは
2バイトのアドレスとして読み込む
これらを実現できれば読み間違いは大分減ると思うがどうか。
個人的にはサブルーチン呼び出しをツリーにしてエクスプローラ感覚で操作できる
逆アセンブラがあると面白いと思う
0148名前は開発中のものです。
2005/10/21(金) 03:14:12ID:DbQnAJ3P・指定されたアドレスから読み込み始めて要はプログラム部だけを読む。
・REP/SEPによるレジスタサイズの変化に追従。
っての。
サブルーチンって別にスタックいじったりしてませんよね。
むしろしてた方が楽な気もするんですけど。
あとCOPとかよく分からないのは適当にほっといてる。
というか適当にまとめた自作のテキストがどこまで合ってるのやら。
0149名前は開発中のものです。
2005/10/21(金) 07:14:50ID:Gjb8q/6pJSLもJSRもスタック使うよ。でないと戻ってこれない
サブルーチン呼出や割り込み前後でSレジスタは変化させられないんで
Sレジスタの変化を見とくと一応エラー検出できる
COPは基本的にはサブルーチン呼出と似たようなことしてるだけ、のはず
0150名前は開発中のものです。
2005/10/22(土) 02:37:32ID:nKn2P5yaソースとテキストを苺1M2217に上げましたんで興味がおありでしたら見てください。
細かい作りは結構適当です。
少なくともスタック関係はちゃんと対応するように組まれてる事を前提にしてます。
解凍パスはdis。
あとreadmeの例はラストバイブル3。
それとヘッダに対応してないというか外してください。
もう1つ、C++コンパイラはありますよね。
そういえばソースも人目に出すには適当すぎ。
0151名前は開発中のものです。
2005/10/22(土) 10:19:44ID:8BwQhggQ0152名前は開発中のものです。
2005/10/22(土) 19:39:34ID:pej7E3Fe0153名前は開発中のものです。
2005/10/23(日) 01:05:29ID:ua+9qehO自作のテキストでどこの人かわかってしまったw
同じ住民じゃないけど乙です
サブルーチン呼出で退避するのはPCまたはPC,PBで
フラグを退避するのは割り込みです
あと動かしてみたけど、LoROMでバンクが偶数の時に
指定したアドレスから8000引くのを忘れてますよ
82DE25で指定したら1DE25が逆汗されてました
0154名前は開発中のものです。
2005/10/23(日) 02:00:53ID:bY1d22Lhこういうやりとりでレスを消費すんのが面倒だから嫌なんだよ。こういう虹っぽい隠し方っつーか。
0155150
2005/10/23(日) 04:24:59ID:fbSsnlDs住人言うか解析つながりで見てたんですけどね。
というかあっちではスルーされてたなぁ。
前はswitchで命令分けてて滅茶苦茶面倒になって投げたんですよね。
他にもテキストで変な所ありませんでした?
>154
なんつーか癖というか習性です。
カキコする前にチェックしてなかったからもしかしてと思ったけど解凍できましたよ。
0156名前は開発中のものです。
2005/10/23(日) 09:39:21ID:ua+9qehO>>150
他に見つけたのは
・FCがJSR ($MMLL,X)ではなくJSR ($LL,X)で表示される
・stert→start
0157150
2005/10/24(月) 04:05:55ID:qudMBFQwども、あとでチェックしてみます。
個人的にはF4とかも自信が無いっす。
そういやインデックスレジスタの直値系はXフラグで見るので大丈夫ですかね。
テキスト言うか65816-C.txtを元に作ってるんでコレが間違ってるとプログラムは多分間違ってます。
いや、合ってても間違ってる部分がほかにもあるのは確定。
FC JSR とか逆汗しても分からない部分はどうしよう。
そのあたり解析用のファイルをユーザに作らせてジャンプ先のテーブルを書き込むって方式はどうだろうか。
最初は解析中にユーザに値を入力させるWindowsプログラムを考えてたから結構つくりが適当なんです。
0158名前は開発中のものです。
2005/10/24(月) 13:59:29ID:0fWB76iK直接逆汗テキストに書き込んでしまうと思うけど・・・
予めユーザーがFCまたは7Cが存在するのを知っているならそれでいいけど
大抵は逆汗するまでわからないものだと思うし
コンソール入力でユーザーに判断してもらうようにするか
リストの先頭アドレスに辿り着くまでアドレスリストを吐き続けるようにするかじゃないですかね
でもそれだと、アドレスリストのすぐ後に先頭アドレスが開始されない場合は
読み間違い確定になってしまうんだよなぁ・・・
ちなみにエクスプローラライクなのが良いと思うのは
その辺を考慮して適宜自分で修正できるってのが理由
0159名前は開発中のものです。
2005/10/25(火) 02:44:17ID:sulmJKDHコンソール入力だと複数入力させるのに対応させるのが面倒だし、
ジャンプ先が設定ファイルに書いてない場合のデフォルトの操作として
警告でそのアドレスを出力させたりするとか考えてる。
たまにサブルーチンの中でサブルーチン開始アドレスより前のアドレスに飛んで合流する事があったりしてあまりややこしい事はやりたくないのよ。
とか言うもののエクスプローラライクが解析しやすいってのも分かるけどね。
0160名前は開発中のものです。
2005/10/25(火) 02:55:32ID:sulmJKDH---------
imagefile=rom.smc
HiROM=true
C42846:0,2,4,6,8
C53782:0,8,10,18
(etc)
---------
C42846とかいうのがFCとか7Cとかがあるアドレスで続く数字がJMP (LLMM,X)のXにあたるとか。
ひょっとすると直接ジャンプ先のアドレス書いた方がいいかも。
0161名前は開発中のものです。
2005/10/27(木) 00:28:36ID:vFW/i5XC設定は直接ジャンプ先でいんでない?
バイナリエディタからコピペして加工すれば済むし
0162名前は開発中のものです。
2005/10/27(木) 02:59:31ID:jdqmjTvRジャンプ先は2通り対応した方がいいかな。
とりあえずまた作り直すのがほぼ決定なんだけど設定ファイル用の
つまりはフォーマット付き入力がよくわからんのでそのあたりも調べないと。
そういやレジスタ対象の命令は標準の表記がいいかな。
INXとかよりもINC Xの方が分かりやすく作りやすいけど。
ただPH?系とかどうしよう。
0163名前は開発中のものです。
2005/10/31(月) 09:47:24ID:rmsqBq+d自分の好みでいんじゃないの
0164名前は開発中のものです。
2005/11/01(火) 02:49:44ID:q10jnAvVヘタに変えると困る人とかいそう。
PULLのコメントをPOPにしといてこんな事言うのもなんだけど。
FCの表記確認しました。
というか表記以外も間違ってる可能性があるんでよく見ないと。
あと読み取りのバグはバンクが奇数の時に0x8000引くようになってたみたいっす。
よく分からないのがコプロ。
というかコプロってなに?状態。
イメージいじってログ取って調べた方が早いかな。
0165名前は開発中のものです。
2005/11/02(水) 10:14:00ID:0w+mMXTo手持ちの資料探した中ではこれが一番詳しかった
COPの説明で$FFF$-$FFF5ってなってるとこあるけど
$FFF4$-$FFF5で、しかもこれはエミュレーションモードの時の話だね
0166名前は開発中のものです。
2005/11/03(木) 03:10:50ID:PZ6xvnHzなんかソフト割り込みがどうとか書いてあるみたいですね。
という事はRTIで帰るのかな。
とりあえずCOPの所はスルーしてそういう特殊系でまとめて処理していいかも。
BRKもそんな感じでいいのかな。
そういやOSの話で「こぷろせす」って聞いたような気がするけど、
ずっと「子プロセス」だと思ってた。
違うのかな。
0167名前は開発中のものです。
2005/11/04(金) 20:58:23ID:oBKib+Vnまあジャンプするためのアドレスが逆汗でわかるとは限らないから、
無視しても構わないだろうね
あとCoprocessorね
0168名前は開発中のものです。
2005/11/05(土) 03:49:54ID:9TfWbpA3普通に考えると、戻ってきた時に元の状態になってるはず。
戻るのか分からないですけど。
そのあたりがとりあえずスルーできる理由っす。
ただ、COPとかBRKとか使ってる所見たことないんでなんとも。
ひょっとして前のバージョンでほとんど逆汗できてなかったのはそのあたりが原因なのかも。
0169名前は開発中のものです。
2005/11/09(水) 04:58:19ID:D4X0VspCパスはやはり半角小文字で「dis」。(確認済み)
未完なんでパスは必要だと思うのですよ。
大して機能拡張でもした訳じゃないのに半月ぐらいかかってる。
(厳密に言うとする予定だったけど面倒すぎるので途中で止めたっす。
直値完全追跡なんてやってられません。)
多分まともに動かないので後日じっくりデバックする必要がありそう。
今、気分がのらない&サンプル探すのが面倒で。
0170名前は開発中のものです。
2005/11/09(水) 22:12:31ID:UbOIbpVHあと条件分岐で飛んだ先でステータスフラグが変更された時に
条件分岐をスルーした場合でもフラグが変更されてる
サブルーチン呼び出しと同じ扱いになってるぽい?
0171名前は開発中のものです。
2005/11/10(木) 01:35:25ID:UfBHXBz8DataOutはプログラム部以外の箇所の出力のフラグです。
多分カウンタが進まなくなってるんですね、きっと。
2件目はひょっとすると関数の参照渡しの意味がなくなってるかも。
サブルーチン呼び出しの処理と条件分岐処理を違うようにしたんで。
ここまで書いて別の処理思いついたんで明日あたりにUPします。
実は試した結果、バンク20とか読んでるっぽいんですけど多分おかしい。
0172名前は開発中のものです。
2005/11/10(木) 02:12:01ID:UfBHXBz8というかレジスタ周りをまとめたんだからオブジェクトを別に作ってそっちに値入れればよかった。
0173名前は開発中のものです。
2005/11/11(金) 03:25:51ID:b8RC05sA解凍もいつもの通り。
0174名前は開発中のものです。
2005/11/15(火) 00:25:52ID:H33sBX7Cコンパイルの仕方教えてください。
mainが複数あったり、VCやgccやmingwとかで適当にやったけどエラーこいた。
0175名前は開発中のものです。
2005/11/15(火) 03:51:14ID:+JSjKb/Mあー、このあたりはものすごく不親切ですね。
hanra.cpp以外のmainはテスト用なんで気にしないで下さい。
気になる様でしたら消しても大丈夫かと思われます。
未完成バージョンなんでできればコンパイルできる人向けなんですけど、
(というか実はmakeの書き方がよく分からないので載せられない)
開発環境のプロジェクトにcppファイル入れてメイクすれば大丈夫かと。
エラーってリンクエラーですよね。
コンパイルエラーだったらえらい事に。
0176175
2005/12/04(日) 02:01:51ID:yri0ODA5動作が不定になる可能性大。
というかその別件ではおもいきり不定になっててあからさまに動作が変だった。
0177名前は開発中のものです。
NGNGポートのモニタプログラムを走らせたらどうなるんだろうか?
0178名前は開発中のものです。
2005/12/25(日) 12:26:23ID:jWD3UQui0179名前は開発中のものです。
2005/12/25(日) 16:22:46ID:wP9hKjvp0180名前は開発中のものです。
2005/12/25(日) 17:45:52ID:5M4Cw9fvロマサガ1でフリーズバグの原因が色数を出し過ぎたため
というわけのわからん理由がファミ通に載ってた
0181名前は開発中のものです。
2005/12/26(月) 12:40:13ID:lx/b81Fi4000色も使えるのか・・・
高解像度モードはフォントぐらいにしか使われなくて
グラフィック全般で使いこなすソフトも出なかったし
つくづく惜しいハードだな
0182名前は開発中のものです。
2005/12/26(月) 16:38:32ID:wDgqU2Zm0183名前は開発中のものです。
2005/12/27(火) 19:05:32ID:tRRImiDw0184名前は開発中のものです。
2005/12/30(金) 00:13:56ID:MAZOgJ6I0185名前は開発中のものです。
2005/12/30(金) 22:54:27ID:qxUEYWk6MAZOは縛って吊るしage
0186名前は開発中のものです。
2006/01/02(月) 06:40:33ID:/v8ljJ5z展開させることは出来るの?
0187名前は開発中のものです。
2006/01/02(月) 08:45:01ID:VK8EZZKb対応エミュレータなら展開ルーチン積んでいるじゃね?
0188名前は開発中のものです。
2006/01/03(火) 02:06:37ID:ht1SVq7Y0189名前は開発中のものです。
2006/01/03(火) 02:43:54ID:ljqHLRRW0190名前は開発中のものです。
2006/01/03(火) 02:46:22ID:ht1SVq7Y0191名前は開発中のものです。
2006/01/04(水) 00:00:41ID:7/chIMn70192名前は開発中のものです。
2006/01/04(水) 02:59:56ID:7P0HbDqIぶっこ抜きでもすんのか?
いくらでも覗けばいいじゃん
0193名前は開発中のものです。
2006/01/06(金) 01:08:34ID:9/R2ok3q0194名前は開発中のものです。
2006/01/06(金) 01:32:47ID:eDJa4D7Bproject-faoより
0195名前は開発中のものです。
2006/01/06(金) 01:41:35ID:KW7/7C7g少しは頭を使え
0196名前は開発中のものです。
2006/01/06(金) 01:43:08ID:9/R2ok3q0197名前は開発中のものです。
2006/01/06(金) 17:04:02ID:SwaqaUFsttp://www.geocities.com/illegal_eagle_2003/vsnes/index.htm
0198名前は開発中のものです。
2006/01/06(金) 19:09:39ID:9/R2ok3qこれエミュなの?まあスクショ見る限りそれらしい機能はついてるみたいだけど
デバッガ出来るSNESエミュってこれくらいかな
ttp://geigercount.net/crypt/
0199名前は開発中のものです。
2006/01/06(金) 21:42:06ID:93V+mTOHRAMの中身を見るのに便利かなぁと思ってね
0200名前は開発中のものです。
2006/01/07(土) 07:31:55ID:fFW0Exm70201名前は開発中のものです。
2006/01/09(月) 23:38:48ID:zBwxJxEq0202名前は開発中のものです。
2006/01/10(火) 21:07:33ID:r75obu750203名前は開発中のものです。
2006/01/18(水) 17:58:44ID:Xj/1O64p,密接に関係しているみたいなのですが.
0204203
2006/01/18(水) 18:06:03ID:UKJ+fawb0205名前は開発中のものです。
2006/01/18(水) 18:25:00ID:Xj/1O64p0206205
2006/01/18(水) 18:50:54ID:2SH+Qcry0207名前は開発中のものです。
2006/01/18(水) 20:18:48ID:Xj/1O64p0208名前は開発中のものです。
2006/01/20(金) 06:45:35ID:dQzHZbAR0209名前は開発中のものです。
2006/02/10(金) 15:15:28ID:HiBkYN9P0210名前は開発中のものです。
2006/02/10(金) 21:28:19ID:N2umP0K+0211名前は開発中のものです。
2006/02/10(金) 21:39:24ID:N2umP0K+すずめにも情報無いし
0212名前は開発中のものです。
NGNG0213任天堂本社より警告
2006/03/21(火) 20:49:16ID:5b78pgIg本社はファミリーコンピューターの権利を放棄していないので
旧式といえ全権は本社にあります。
デバイスを使用しての開発は合法ですが(改変した場合違法です)、
プログラム事態を改変した場合はなんらか処分をさせていただきます。
この件は2ちゃんねる管理人に許諾を得て行っています。
0214名前は開発中のものです。
2006/03/21(火) 21:30:30ID:VZtpEY3x0215名前は開発中のものです。
2006/03/21(火) 21:35:14ID:2+maRf/q情報通達部なんて任天堂にはないよ。
嘘つくならもっとマシな嘘ツケ。
0216名前は開発中のものです。
2006/03/22(水) 13:28:59ID:2Rhu187Z藻前のその警告も一種の犯罪行為
0217名前は開発中のものです。
2006/03/30(木) 00:44:51ID:XybIBHyL誤字ってるし、偽計業務妨害で通報した。
0218名前は開発中のものです。
NGNG0219名前は開発中のものです。
2006/08/04(金) 20:45:56ID:/zD+fGDi作ろうと思っているのですが、
オススメのアセンブラもしくは、コンパイラってありますか?
あれば、教えてください。
0220名前は開発中のものです。
2006/08/04(金) 20:47:41ID:/zD+fGDi0221名前は開発中のものです。
2006/08/04(金) 22:19:33ID:gwdTM7Lhすずめ愛好会というサイトにアセンブラがある。ある。
他に自分は使ってみたこと無いけどsnesc.zipという
怪しげなコンパイラが存在したりするらしい。
でも難しいんで自分はあきらめました。
ちょっと複雑なことをしようとすると動作速度の壁にぶちあたるよ。
この時代のアセンブラプログラムに精通してて高速化技法みたいなのに
自信があるならチャレンジする価値あるのかな。
機能が同じ程度のGBAの方が環境が整ってるよ。
0222名前は開発中のものです。
2006/08/14(月) 21:16:40ID:eWSF5E+eスーファミ本体で動かすことやった人っています?
0223名前は開発中のものです。
2006/08/15(火) 04:10:05ID:5/toywye0224名前は開発中のものです。
2006/08/15(火) 21:14:05ID:LSlz4hEC0225名前は開発中のものです。
2006/09/08(金) 19:39:32ID:hK/sV2GVすずめ愛好会は分かりにくいし。
0226名前は開発中のものです。
2006/09/24(日) 11:28:34ID:ZnF28V7Aすずめには、解説HPが多いとか認知度が高いとか書いてあるけど、
日本の解説サイトは無いに等しいですなぁ。
自分は海外のサンプルを参考にして作ってる・・・
■ このスレッドは過去ログ倉庫に格納されています