【65816:SNES】アセンブリ【6502:NES】

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
05/03/05 01:56:33
やってるやついねーの?
暇潰しでもいいからいじって遊ぼうぜ。
2010/02/07(日) 21:49:05ID:p3Qr7jDT
>>203
検索してみ?
スーファミには乗除算器ちゃんとあるぞ。
あとそこの研究所って所資料足りてない。
205名前は開発中のものです。
垢版 |
2010/02/07(日) 23:20:12ID:dPg09lrX
>>204
検索したら出てきました。
余計な口突っ込んですいません。
206名前は開発中のものです。
垢版 |
2010/02/09(火) 17:33:34ID:hmI1E4PD
今6502をギコ猫で勉強してるんだけど
第11章のネームテーブル
http://gikofami.fc2web.com/nes/nes011.html
これの

adc #1

なんだが、
G−NESのデバッガ見てたら
1回目は2を足してて、2回目からはちゃんと1を足してるみたい
どうして1回目は2を足すんですか?




2010/02/09(火) 20:14:37ID:3RJrolvd
>>206

adc → Add with Carry
キャリーフラグの内容も一緒に加算する。
これによって複バイト分の加算をするときの繰り上がりを簡易にできる。
2010/02/09(火) 21:38:36ID:hmI1E4PD
>>207
なるほど
理解しました
ありがとうございます
2010/02/10(水) 06:00:21ID:EXaN1Km+
また分からないところがあるんだが
ここでちょくちょく質問していっていいですかね?
ギコ猫の第14章の
http://gikofami.fc2web.com/nes/nes014.html
一番下のソースのgetPadBitの

ora <KeyBuffer ; キーバッファにora

これなんだがOR演算ってのはだいたい分かったけど
ここで使う理由がイマイチわかりません
実際ここの命令消してもちゃんと動いてるみたいだし。
2010/02/10(水) 14:39:07ID:5TL6Al/8
ちゃんと動かんと思うのだが。
そのoraを省くと、直前で$4016を読み出してand #1した内容しか、KeyBufferに書き込まれなくなるだろ。
ループ回って、最後にstaでKeyBufferに書き込まれるのは右ボタンの状態だから、右にしか動かなくなると思うが。
2010/02/10(水) 15:32:09ID:EXaN1Km+
>>210
その通りでした、ごめんなさい
OR演算をちゃんと理解してなかったかも

OR演算によって1byteの情報を1bitだけにして
1回目はbit0に書き込んで
2回目はbit1に書き込んでるってことですかね?
2010/02/11(木) 04:45:25ID:yuPo8Fe0
前回のKeyBufferの右シフトは分かったのですが

ギコ猫第15章の
http://gikofami.fc2web.com/nes/nes015.html

lsr a ; Aレジスタ右シフト(半分にする)

これによってスクロールの速さが半分になるのは分かったのですが
どういう理屈でこうなってるのですか?

初心者すぎる質問で申し訳ないですが、お願いします
2010/02/11(木) 06:21:37ID:+wEnMjxV
ヒント1:2進数
ヒント2:二進数で1000を0100にすると十進数では・・・?
2010/02/11(木) 07:24:50ID:yuPo8Fe0
>>213
8が4になる
半分になる
なるほど
分かりました、ありがとうございます
2010/03/03(水) 21:10:13ID:zZTtY1h1
マッパとbank orgが解りません

現在$c000がミラーになっている状態です。bank1が$a000と$e000
nesasmです。
どう書けばいいのでしょう?
2010/03/03(水) 22:57:47ID:v0jzLIac
マッパ絡むならファミコンスレで聞いたほうがいいと思うんだ
2010/03/03(水) 23:43:05ID:zZTtY1h1
ありがとうございます。
視野が狭くなっていました。(m_m)
218名前は開発中のものです。
垢版 |
2010/10/12(火) 22:08:22ID:qsZioCiZ
http://codepad.org/qsGp7Diu
http://codepad.org/74XbFXAi
http://codepad.org/QiIb2vyD

昔PCエンジン用に作ったF-ZERO風ゲームのソース
2011/08/03(水) 08:24:23.23ID:ZQrFVvJL
RP2A03の未定義命令を解説しているサイトってありますか?
2011/09/13(火) 17:27:38.93ID:6DL8Eput
http://nesdev.parodius.com/2A03%20technical%20reference.txt
221名前は開発中のものです。
垢版 |
2012/03/05(月) 03:28:21.22ID:bNrxt/wR
PSPでNesterJ最新を使っていますが
save機能が機能しません。
statesaveするとちゃんとリストに日時と共にsaveされるんですが
そのファイルをstateloadしてゲーム画面に戻っても
loadが反映されてくれないのです。

そういう状況になって解決した方、いらっしゃいますか?

ちなみに、関係あるかわかりませんが
一度statesaveした場所にはdeleteしてsaveしなおさない限り上書き出来ません。
(save→yesしてもsave日時が変わらないのでsave出来て無い?)

ゲームは問題無く動きますが
NesterJのsave機能を利用するための
データかなんかの入れ忘れとか考えられますか?
2012/03/05(月) 12:35:55.88ID:ssuNvARh
マルチな上に明らかにスレ違い。
2012/03/10(土) 08:42:48.44ID:YAppe1P3
逆汗って機械語を読める形に変換してるだけだよね?
書換えて機械語に戻すってことは出来ないの?

説明聞いた感じだと逆汗して解読しながら機械語書換えてるみたいなんだけど・・・
2012/03/13(火) 00:37:17.60ID:MTJotzS2
>>223
逆アセンブラ=逆汗知ってて
アセンブラ知らないの?

実際は逆アセンブラがテキストを出力したとして、変数や関数の役目は書いてないわけで、、、それを解析して解読するのが解析神。
試しにWindowsの.exeを逆アセンブルしてごらん。超意味不明だから。

プログラムの規模がある程度大きいと、
逆汗したものを、再アセンブルするのは困難を伴う場合が多い。
2012/03/13(火) 00:50:41.31ID:0neKniZs
>>224
逆汗の事ばっかり考えてて頭が固まってたようだ・・・
可逆変換なんだから戻せないわけが無かったね、ありがとう
2012/04/10(火) 13:23:56.58ID:NddKazTP
ものによっては可逆ってわけでもない
データをコードとして扱ってしまい意味が変わる場合もあるし
普通にコード自体も意味が変わってしまう場合もある
2012/04/10(火) 17:06:22.62ID:oLiChzL/
逆汗する場合はバイナリが16進で併記されるツールがいいよ。
8ビット世代だとアセンブラで書いてるソフトが多く、感心するほどキレイなやつもあるんだけどね。
データ部はだいたいバイナリに法則性があるから、慣れれば見分けがつく。
2012/09/20(木) 17:51:26.96ID:cGMaKOFB
hos
229名前は開発中のものです。
垢版 |
2012/09/20(木) 17:54:15.47ID:4k8cLmU9
ふむ
2012/09/20(木) 19:09:31.58ID:f/XsJWvW
普通に逆汗してもメモリジャンプの位置とかステージデータとかキャラデータとか
すべて目を通して手直ししないといけないからSMWを高級言語にするのは不可能

一番の問題はデータが散在しててアンセブラがそこも逆汗するからバグる
素人にデータとプログラム部分を見分けられるとはとても思えない
2012/09/20(木) 20:30:06.88ID:/2q+0d4/
6502なんて命令少ないし、意味のあるプログラムか否かなんて結構機械的に判断できそうな感じだけどな。
2012/09/20(木) 22:06:39.96ID:U5jp9Vm/
エミュによってはcodeとdataのlogをとれるやつあるけどな
2012/09/21(金) 16:39:47.95ID:OAdH7gAE?BRZ(10002)

OS/A65 - a Multitasking/Multithreading Operating System for 6502 computers
(C) 1996-2006 André Fachat

ttp://www.6502.org/users/andre/icapos/osa65.html
2013/01/31(木) 00:28:22.70ID:6eMaXvnA
6502よりゲームボーイ(Z80C)のがわりかしわかりやすかった
235名前は開発中のものです。
垢版 |
2013/03/21(木) 02:42:37.61ID:yPAEg+sf
人がいなそうだけど聞いてみる。

22 16 2A C0     JSL $002A16 -> $002A16    //Jump Subroutine Long

アセンブラ読めないけど、初めて改造に手を出そうと思ってるんですが
なんで $C02A16 じゃなくて $002A16 なんでしょうか? dist65816です。
あと、65c816のニーモニックの解説でオススメサイトあったら教えてください。
2013/03/21(木) 11:11:30.63ID:A78LSmbb
素人だけどC0の部分がジャンプ命令なんじゃないかな
2013/03/21(木) 13:02:01.12ID:eR9L18ep
>>235
SNESだとしたら、
HiROMだと、00の部分がバンクなので、
C0がミラーバンクになるはず。
LoROMだと、ちょっと違うけど。
2013/03/21(木) 18:17:24.85ID:fEWioKjJ
>>235
わりとガチな事言うけど読めるんならSNESのソースをお勧めする。
解説サイトで分からない事が出てきた場合にとても分かりやすい。
2013/03/21(木) 22:46:31.36ID:yPAEg+sf
>>236
22 がジャンプ命令って先入観があったけど C0がなにかの引数(フラグ)的な役割の可能性ありますね。
なるほど。ありがとう。

>>237
>SNESだとしたら
スーファミのって意味ですよね? スーファミのDQ6です。
HiROMっぽいですね。
さらっと見てみましたがミラーバンクがよくわからなかった
(0x80〜 が 0x00 のミラーバンクと読める →とすると 0xc0 は 0x00 とはならないのでは?) ので
もう一度ググってみます。ありがとう。

>>238
>SNESのソース
(スーファミのソースって何??)と悩みましたが
SNESというエミュのソースプログラムが公開されてるのでそれを参考に ってことですね。
探してみます。ありがとう。
2013/03/21(木) 23:00:57.73ID:eR9L18ep
バンクのミラーは、
80〜だけでなく、C0〜もある。
持っている資料ではそうなっている。
2013/03/22(金) 04:25:50.22ID:wiXBJRbA
>>238
それって"ない"という回答であるという認識でいいのかなぁ?
まあ自分もいいサイト知らない。
Westan Design(仕様開発元)かSHARP(製造元)がいいのかもね(調べてないけど)
242名前は開発中のものです。
垢版 |
2014/02/15(土) 01:43:33.73ID:gYTXJhyH
cc65 6502用C言語コンパイラ
2014/03/28(金) 11:07:17.51ID:+zloHXLO
μPD612x
μPD613x
には加算命令がないのです、乗算命令とかアホなこと言うなボケ。
さらにレジスタだってAレジスタ1つだけだ。
メモリアドレスだって16個だけだ。バカ言うな。
スタックなんて4階層だけだ。
2014/04/09(水) 17:40:28.58ID:Aiee0k4j
>>218
うちのでべろに突っ込んでみる
2015/08/14(金) 23:04:08.62ID:FbSUW76W
ca65(nes)の情報でそこそこ詳しいとこってどっかあります?
詳しいとこてか要はコードがあればいいんだけど
英語全くわからんけど英語圏でもいいです

おらのスペック
8080のCP/M2.2環境(エミュ環境)でEDをディスアセンブルでの独学解析(完全にゼロからで一年ぐらいかかってます)、ラインエディタをやっとこ自作程度(公式?公開のPL/MはCぽくてわかるようで意味不明
だったのでアセンブラに直して何とか)その後一気に16bitや32bitアセンブラに進んでみたら アレ?これ普通に高級言語じゃね?と敵前逃亡
ファミコンなら8bitだし行けるかなと思ったらいきなり意味わからん
とりあえず簡単に調べると一ファイルで作る?見たいなレベル高げなのがヒットする
え?ソースて?そもそも復数ファイル必要なの?レベルだす
246245
垢版 |
2015/08/15(土) 00:06:56.46ID:r1UAelHl
あっ普通にディスアセンブラついてたんか
適当なのやってみると.byteてのがいっぱいある
EQUかDB的なもんなんかな?
即値をなんかしてんだろう
他は普通の命令ぽいしなんとかわかるかな
16進と三文字程度の命令見るとなんか落ち着く

でもなんか情報あればいただきたい
247245
垢版 |
2015/08/22(土) 20:54:26.46ID:lmAY31um
ん〜中々無いか・・・
まぁCやpythonレベルですら、日本語環境は著名サイトや書籍でも「公式マニュアル翻訳しただけor毛が生えた転載レベル」情報ばっかだもんな・・・
とりあえず画像処理音声処理とか千年早そうなので8080をもちょっとちゃんとやってみよう うん
248名前は開発中のものです。
垢版 |
2017/02/05(日) 08:29:23.99ID:7/zag2Au
そうかそうか
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況