ファミコンのプログラム3
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2008/06/23(月) 17:38:05ID:z53SrIuZでも900すぎてホンモノが現れたみたいだ。
もう要らねぇと思ってたけど、そいつらの為に立てたよ。
0338名前は開発中のものです。
2009/12/26(土) 23:19:52ID:QFbZJHKM0339名前は開発中のものです。
2009/12/27(日) 03:58:45ID:k5Jwzm510340名前は開発中のものです。
2009/12/27(日) 04:17:31ID:dzEUSWU40341名前は開発中のものです。
2009/12/28(月) 19:43:15ID:qRtC33abありがとう337
0342名前は開発中のものです。
2009/12/29(火) 12:33:01ID:lTW0p2Tuテトリスすごい
0343名前は開発中のものです。
2010/01/01(金) 00:56:26ID:WEjwCp2Hまた、今回修正版を作りました。
ソースファイルmainの273行目を、and #%10000000からand#%11000000
に変更でBボタンの回転が可能に。
また、相対パスにしてどこにファイルを置いてもアセンブル可能に。
連射のバグについては、修正できませんでした。つまり、私に出来る限界であります。
またの機会があれば、挽回したいと思います。
ファイルのURL > http://ppup.dip.jp/uploader/download/1262274542.zip
pass fami2
0344名前は開発中のものです。
2010/01/07(木) 01:25:45ID:jF22eACi0345名前は開発中のものです。
2010/01/07(木) 18:24:09ID:/pb3LoGRGJ あとP'L'AYERに直せない?
0346名前は開発中のものです。
2010/01/10(日) 13:08:37ID:29GXWjNI0347名前は開発中のものです。
2010/01/21(木) 06:45:05ID:Q/sVFXNuhttp://sourceforge.net/projects/nesdevkit/
これで作ってるやついないんか
0348名前は開発中のものです。
2010/01/21(木) 12:00:44ID:wsJ4sicJと書かれているな
0349名前は開発中のものです。
2010/01/23(土) 01:50:27ID:hz4QiZI90350名前は開発中のものです。
2010/02/10(水) 17:01:51ID:vFQj1T+qスタックが原因で暴走してしまいます。
ループを使って何体もの敵と判定しているのですが、
なぜか2回以上ループさせると暴走してしまいます。
スタックについて、良く分からないのですが、
誰か教えてくれませんか?
0351名前は開発中のものです。
2010/02/10(水) 17:33:12ID:asha1W500352名前は開発中のものです。
2010/02/10(水) 21:56:06ID:n6ohQVMg0353名前は開発中のものです。
2010/02/10(水) 22:39:11ID:vFQj1T+qclc
adc #$0D
cmp $10
bcc crashsprite
lda $200,y
clc
sbc #$0D
cmp $10
bcs crashsprite
lda $201,y
clc
adc #$0D
cmp $11
bcc crashsprite
lda $201,y
clc
sbc #$0D
cmp $11
bcs crashsprite
lda #$00;当たり判定で当たった時の処理
sta $202,y
sta $201,y
jmp nosprite
crashsprite:
0354名前は開発中のものです。
2010/02/11(木) 06:19:52ID:+wEnMjxV0355名前は開発中のものです。
2010/02/11(木) 11:16:39ID:4IEAI3zI0356名前は開発中のものです。
2010/02/11(木) 12:52:58ID:QsCNBYLySもしくはスタック領域($100-$1ff)を操作しているのはどこ?
ループのどこかで PHA/PLA/PHP/PLP をしてない?
ループの中で PH* して PL* し忘れはよくやる。
0357名前は開発中のものです。
2010/02/11(木) 13:52:48ID:4IEAI3zI0358名前は開発中のものです。
2010/02/11(木) 15:37:49ID:et5xB1Ayjsrで呼びっぱなしになるとスタックに戻り先番地が積みっぱなしになるから
0359名前は開発中のものです。
2010/02/11(木) 18:10:10ID:4IEAI3zI解決できませんでしたが、自分の力で何とかしていきたいと思います。
ありがとうございました。
0360名前は開発中のものです。
2010/02/13(土) 11:28:12ID:sDFwUFjGありがとうございました。
0361名前は開発中のものです。
2010/02/14(日) 00:03:10ID:LaFtPQUDまてまて、自己解決したときは、問題点はどこだったのか、どう改善したのかを書いていくんだ。
0362名前は開発中のものです。
2010/02/14(日) 03:31:52ID:syypGNiCそもそもスタックについてよくわからないのに、何故スタックが原因だと思ったのかが謎。
たぶん結果的にハズレだったのだと想像してるけど。
0363名前は開発中のものです。
2010/02/14(日) 10:56:58ID:gOZSpFKOそっちに当たり判定を書いたらうまくいきました。
>>362
メモリビューアをみたら、$100^$1FF
が、おかしくなってたからです。
0364名前は開発中のものです。
2010/02/17(水) 21:19:35ID:JTomCMoHnospriteとcrashspriteの2つのパスがあるけど、片方にRTSが実行されないバグ
があったとかじゃないかな? (RTSせずにJMPで呼び出し元に戻ってるとか)
もしくはJMPと間違えてJSRを使っているとか。
0365名前は開発中のものです。
2010/03/03(水) 22:25:15ID:NWYoUOba0366名前は開発中のものです.
2010/03/05(金) 23:52:48ID:xdcULiY0横スクロールゲームをつくっているのですが,
なぜか15フレームに1回8ドットだけ縦にスクロールして,次の15フレーム分は
正常に水平方向にスクロールするという現象が起きており,その原因と解決法が分らず
困っています.
0367名前は開発中のものです。
2010/03/06(土) 02:40:39ID:KnZNd5Bxどういう手順でやろうとしてるのか見たいから。
0368366
2010/03/06(土) 03:01:24ID:AwxGSoRfNMI始めのVRAMアクセスで一度に大量のデータを転送しているのが
原因である可能性が高い
新たな地形のグラデータをPPUメモリに書き込む際,
16*16ドットのブロックを縦一列(13個)分
=合計52バイト,しかも2回に1回は属性テーブル7バイト分をあわせた59バイト
をもいっぺんに書き込んでいるからかもしれません.
属性テーブル転送をやめ.ネームテーブルに書き込むデータを半分にすると正常に
動作しました.
とりあえず明日,VRAMアクセスを分配するようにコードし直し,それでも直らなければ
コード晒します.
0369名前は開発中のものです。
2010/03/06(土) 12:32:36ID:W2DZun6NFC の Vblank 期間は全 262 ラスタラインのうちの 20 ラインだから、
(1789772 / 60 / 262) * 20 ~= 2277
つまり Vblank 期間に入ってから 2277 CPU クロックくらいで
次のフレームの最初のラスタラインの描画が始まってしまう(BG or SP表示時)。
それまでに VRAM アクセスを完了して $2005 を設定しておかないと
スクロールが乱れると思う。
0370名前は開発中のものです。
2010/03/07(日) 23:52:29ID:kQ66zFZu0371名前は開発中のものです。
2010/03/08(月) 04:41:47ID:5IzYvlf+スプライトDMA切って、BG書込みのループを全展開すれば
128くらいはいけるはず(実用的ではないが)
要はコードによると思う。
0372名前は開発中のものです。
2010/03/08(月) 10:23:58ID:muoqTmRUあれは別にハードの制約ではなかったのか・・・
0373名前は開発中のものです。
2010/03/20(土) 23:30:35ID:7oRZCS9Kバグを直したいのでふが
0374名前は開発中のものです。
2010/03/22(月) 00:33:34ID:GTcRHOUJ自分の作ったものならソースあるだろ
他人の作ったもの?著作権って知ってるか?
0375えいいち ◆GRGSIBERIA
2010/03/22(月) 06:17:25ID:TX6qXJ0Q0376名前は開発中のものです。
2010/03/22(月) 09:41:05ID:15cuNssQ0377名前は開発中のものです。
2010/03/22(月) 10:05:38ID:NnDh2GxTまだこんなこと言ってる人いたんだ
0378名前は開発中のものです。
2010/03/22(月) 14:32:44ID:yMBeUZhuつーか、バグの内容を書けない時点で、どうせよからぬ方向性なんじゃねーの。
裏技・改造板のAC化スレの連中の真似でもして、なんかハックROMでも作って神とか呼ばれたいだけとかさ。
0380名前は開発中のものです。
2010/03/22(月) 19:22:48ID:6QPzvgeXまずお前がエミュレーター動かしてる時点で著作権も糞も無いという理由を言えよ
0381えいいち ◆GRGSIBERIA
2010/03/22(月) 22:47:19ID:TX6qXJ0Qある仕組みを再現するソフトを無断で作ってばら撒いたら財産権のいずれかにはヒットするだろう。
場合によってはその仕組みを利用している業界団体から訴えられることもあるが。
(PowerTabEditorとかは勝訴したけど、逆転するまでは公開差し止め食らってたし)
はい、次。
0382名前は開発中のものです。
2010/03/22(月) 23:45:51ID:6QPzvgeXばら撒いたらとか、なんでエミュレータの配布の話になってるんだよ。
ファミコンソフトの著作権とエミュレータ自体の違法性の話をごっちゃにするな。
0383えいいち ◆GRGSIBERIA
2010/03/22(月) 23:59:50ID:TX6qXJ0Q違法ダウンロードの拡大解釈で適用できなくもないような気がしないけど。
改正著作権法自体が新しいし目立った判例も少ないからなんとも言えんけどね。
違法であることを知っててダウンロードした、ってことに焦点を置けばいいけど、
エミュレータ自体の違法性が立証できなきゃだめだろうね。
ところで、>>376-377マダー?
0384名前は開発中のものです。
2010/03/23(火) 07:41:37ID:/Gz7GN4J「こんなに真似てるんだから絶対どこかで法に触れてるはず。よって違法」では不足なんだろう。
古いニュースだが、米国ではプレステのエミュレーターについての裁判でソニーが敗訴しているらしい。
http://wiredvision.jp/archives/200010/2000100301.html
リバースエンジニアリングは基本的に合法。ソフトウェアエミュレーションも一般にありふれた技術で、
禁止すべきものではない。ただし内部資料を不正に入手するのはダメという判断らしい。
国内でどう考えられてるかは知らないが、まあ似たようなもんじゃないか。
勝算があるならマジコンみたいにガンガン裁判を吹っかけて潰しにかかってるだろう。
ちなみに、PowerTabEditorで問題になったのはこのソフトそのものじゃなくて
このソフトのためのタブ譜ファイル(ギターの楽譜みたいなやつ)の著作権らしいから、
「ある仕組みを再現」することとは関係ないんじゃないかな。
0385えいいち ◆GRGSIBERIA
2010/03/23(火) 17:08:55ID:lRzZdafXなるほどね。
でも、地方裁では一応仮差し押さえに成功してるわけでしょ?
これって、ソニーが主張する財産権の侵害が(一時的に)認められた、ってことだから、
まだエミュレーションとかが違法である、ってことの余地は残してないかい?
>「ある仕組みを再現」することとは関係ないんじゃないかな。
違法ダウンロードを促したとして『ある仕組みを利用』している団体から訴えられるかもしれない。
かもしれないで現実にないからアレなんだけど。
0386名前は開発中のものです。
2010/03/23(火) 20:09:34ID:d1ah2GJ70387名前は開発中のものです。
2010/03/23(火) 21:31:29ID:/Gz7GN4Jその仮差押えは取り消されて、最高裁で件のエミュレーターの製作販売が認められた。決着はついている。
んで、仮に「違法ダウンロードを促した」場合があったとしても、それがどんな法に触れてるのかが問題。
先にも書いたけど、エミュレーターを差押えられる見込みがあるならゲーム会社はとっくに動いている。
それが全てだ。安心してコードを書け。
0388名前は開発中のものです。
2010/03/24(水) 03:11:17ID:tfq2QM22分かったからとりあえず、VPCとVMwareとXen試してこい
ただし、ちゃんと正規ライセンスは用意すること
ついでにプログラムの特許について調べてくるべきだな
LAMEがMP3の特許侵害にならない理由とか
0389名前は開発中のものです。
2010/03/24(水) 16:09:45ID:N9+dhc0yどんなところか気になるところ。絶好調だといいんですけどね。
0390名前は開発中のものです。
2010/03/25(木) 00:10:07ID:PKJfXCTY今さら8bitマシンをアセンブラであれこれする気力は沸かないな・・・
もうオッサンなのだろうか・・・
0391名前は開発中のものです。
2010/03/26(金) 18:33:48ID:SSNKuKyTFC音源について書かれているようです。これを見れば、
音楽ルーチンの作成に役立つかもしれませんな。
>ttp://dic.nicovideo.jp/a/fc%E9%9F%B3%E6%BA%90
0392名前は開発中のものです。
2010/03/26(金) 23:37:38ID:z7k/h6T4これは、良く細かいところまで載ってるな。
0393名前は開発中のものです。
2010/03/30(火) 02:05:14ID:5nqzQvfU普通、VBlank中に転送しないと表示がおかしくなるとのことですが、
BGもスプライトも表示を消した状態であれば、VBlank中でなくても転送
は滞りなくできるのですか?
0394名前は開発中のものです。
2010/03/30(火) 19:56:11ID:CrwKa28Y0395名前は開発中のものです。
2010/03/30(火) 20:12:31ID:5nqzQvfUありがとうです。なんとかやりたいことができそうです。
0396名前は開発中のものです。
2010/04/10(土) 04:18:56ID:zo1pPVQpまだ完成には程遠いですがお試し版としてうp
0397名前は開発中のものです。
2010/04/10(土) 04:20:38ID:zo1pPVQpすみません パス忘れてました
pass:nes
0398名前は開発中のものです。
2010/04/10(土) 12:48:31ID:+d1SMMvc縦に並ぶ赤い妖精が強くて倒せない。。
あと、横にスプライトが多く並ぶと一部消えて見えなくなりますね。
(VirtualNESのスプライト全て表示はさせない設定でプレイ)
俺もファミコンPG作ってるけど、
弾とか敵とかの制御できてるのが羨ましいです。
0399名前は開発中のものです。
2010/04/10(土) 14:23:31ID:bxcAWhGu遊んでみた。
・自機の弾が敵をすりぬけてるように思えるときがある
・出現してすぐの敵を倒して出たアイテムが、画面右端で消える(仕様?)
・>>398も書いてるけど、横シューならスプライト横並び対策は必須かと
・敵弾もうちょっと遅いほうがいいかも?
これだけ動くものができてるから完成まで頑張って欲しい。
0400名前は開発中のものです。
2010/04/10(土) 22:59:00ID:nXNNY2Kb0401名前は開発中のものです。
2010/04/11(日) 00:01:47ID:n+a+0+LZナムコは逆
0402鈴(396)
2010/04/11(日) 03:26:21ID:9cQwh3q2プレイ&指摘どうもです
・横に5体以上キャラが並ぶと1体消える ←解決済み
・一部の敵がショットをすりぬける ←解決済み
・全体的に難易度が高すぎ ←弾速落とす、当たり判定甘くするなどして改善
こんな感じです
アイテムが消えることに関しては現在解決法を考え中です。
ちゃんと消えないようにプログラムしたのに...
かなり難易度が下がったと思います。
製作者とはいえpower 0%で最後の赤妖精全員倒せましたから。
とりあえずもう完成まで上げるつもりありませんので今しばしお待ちくださいm(_ _)m
0403名前は開発中のものです。
2010/04/21(水) 00:32:17ID:e7zSGiCFというリッチな使い方をしているようで。また
マリオ3では8KB SRAMを使ってコース全体の当たり判定を行っているみたいです。
他のソフトではメモリをいっぱい使わないブロックの判定法を使っているのか
気になりますね。
0404名前は開発中のものです。
2010/04/21(水) 00:55:24ID:QyI9F7Nx0405名前は開発中のものです。
2010/04/25(日) 11:51:46ID:06Ka9G+L>ttp://www.1072ch.net/up20b/upload.cgi?mode=dl&file=381
pass nes
0406名前は開発中のものです。
2010/04/25(日) 18:13:01ID:9/mZBqJt$5010を見ると
enabled = ~data & PCM_DISABLE; // PCM_DISABLE = 0x1
になってて、そこにdata == 1を送ると
0b111...110 & 1 == 0
だから有効にならないという話のようだ。0もしくは偶数を送ると正しく機能する。
1を送るのが正解ならソースの方が間違ってるな。
0407名前は開発中のものです。
2010/04/25(日) 22:49:07ID:10N6ndT1発音しました。VirtuaNESですと、0でも1でも音声が鳴るようです。
資料を見ると1で発音するとかいてあるようですが、実際の使用は
どうなのか、解りませんね。8bitPCMを使用したソフトが実際に存在
していないために、厳密に確かめる必要性が無かったためでしょうか。
0408名前は開発中のものです。
2010/04/25(日) 23:19:14ID:9/mZBqJtDTM板のMCKスレでTNS-HFC2持ってる人に頼むか、MDC5を動かしてる人に頼むしかないだろうね。
0409名前は開発中のものです。
2010/04/26(月) 00:35:45ID:rrvQgS7x難しいようです。自分で環境を整えるしかないと言えましょうか。
また、これは、エミューレーターのバグにカウントされるか気になる
ところでありますね。
また、とりあえずはPCMとMMC5のテンプレートデモという感じで触れて
遊んでみてください。
0410名前は開発中のものです。
2010/04/26(月) 00:44:34ID:BcHSj2s40411名前は開発中のものです。
2010/04/26(月) 23:18:50ID:jPpRkmLaMMC5PCMの$5010設定を少々変更いたした。また、コメントの増加と
処理ごとの改行を行い読みやすくした次第に候。
ついでに、解説書もつけました。
>>ttp://www.1072ch.net/up20b/upload.cgi?mode=dl&file=382
pass nes
0412名前は開発中のものです。
2010/04/28(水) 00:33:23ID:RgnYBRO4チップ資料でも入手しない限り。
0413名前は開発中のものです。
2010/05/04(火) 17:03:30ID:E406zDRE複雑なやつだとエミュ毎の挙動が違いすぎてわかりづらいし
調べてもMCKばっかりで全然みつからないです
0414名前は開発中のものです。
2010/05/09(日) 16:35:57ID:ljBvp+5kヘッダーサイズ間違ってるぜ…(P:512k、C:64kにして不要FFカット)
実機は本家ニューファミコンと、互換機代表GameAXEで。
元役満天国のカセットにとりあえず書き込んでみた。
結果
動いた!音もなりますぜ。
電源直後はグラ化けするのが謎だが、リセット押すと画像もほぼ正常。
(MMC5の自作ROMで、起動時グラ化けしないのは見たことない・・・何でなのだろう?)
なお、互換機だとリセット後正常、NEWファミだbニ若干ゴミが残b
以上っす。応援bオてます。
0415末シ前は開発中のb烽フです。
2010/05/09(日) 17:44:16ID:caBbEHck0416名前は開発中のものです。
2010/05/09(日) 17:52:08ID:R2SJf4c70417名前は開発中のものです。
2010/05/09(日) 18:10:32ID:caBbEHck0418名前は開発中のものです。
2010/05/09(日) 21:31:26ID:ljBvp+5k.inesprg 32
.ineschr 3
にしないとエミュがエラー吐くね。まぁ当然か。
(実機では64kということにしといて不足分FFで埋めればOK、
24kのままでも動くとは思うが未確認)
画像の差し替えは私のスペックを超えてました。
0419名前は開発中のものです。
2010/05/10(月) 03:46:17ID:TE50dZ+Bパワーオンリセットと挙動が違うってことだろ。
0420名前は開発中のものです。
2010/05/12(水) 21:32:37ID:O3IiPcDdこれは助かります。実機で動くのはどのような感じか、これからも色々教えてくだされ。
また、413殿の思いを受け止め、簡単なサンプルを同梱した、PCMデモの最終形を
あげておきまする。
実機でのエラーですが、私にはさっぱりわかりません。電源ONとリセット
時は、6502は同じアドレスから始まるので、処理にそう違いはないと思われます。
メモリの初期化か、または、MMC5に未知の仕様が存在するのかは、実際のゲームの
プログラムを調べるか、サンプルで実験してみない限り解りませんので、後々調
べてみようと思っております。
http://www.1072ch.net/
pass nes
0421名前は開発中のものです。
2010/05/13(木) 15:36:00ID:NjCrxXBB>ttp://www.1072ch.net/up20b/upload.cgi?mode=dl&file=385
0422名前は開発中のものです。
2010/05/13(木) 19:47:00ID:dhnZwxxG0423名前は開発中のものです。
2010/05/16(日) 00:19:30ID:ihwmJ3hc0424名前は開発中のものです。
2010/05/16(日) 13:12:42ID:qXre/0foBad Appleなるデモがあるみたい。
>ttp://www.geocities.jp/littlimi/bad_apple.htm
なかなか、すごいデモですよ。
0425名前は開発中のものです。
2010/05/16(日) 20:34:07ID:fzJret20あんなのキモオタ寄せにしかならないっつーの
0426名前は開発中のものです。
2010/05/17(月) 22:23:31ID:8yXBi1bsそもそもMMC5を一番エミュレートできてるエミュってどれなんだろう?
0427名前は開発中のものです。
2010/05/18(火) 01:30:52ID:DVDOhv0q0428名前は開発中のものです。
2010/05/20(木) 23:35:03ID:jqT7zHMX実機ではMMC5PCMのグラも(リセットかければ)ほぼ正常に表示されてるし。
ただ、リセットでグラが表示されるようになるという挙動自体は同じだから
やはり再現性の高さを表してるの…か?
とはいえ、MMC5PCMが正常動作するNestopiaでcpu jam!になり、
FCEUXでぴくりとも動かない、とある自作ROMが、
実機(しかし互換機)とVirtuaNESでは動いたりする。
う〜む、ミステリー。
0429名前は開発中のものです。
2010/05/21(金) 06:45:13ID:k2m9xYvKカテゴリとしては実機ではなくemuだと思う
0430名前は開発中のものです。
2010/05/21(金) 10:27:30ID:jsk7CO4f0431名前は開発中のものです。
2010/05/21(金) 21:05:19ID:E8K3L2kXしかし、普通のファミコン互換機はあくまで互換ハードウェアであって
ソフトウェア再現ではないんだぜ?
0432名前は開発中のものです。
2010/05/22(土) 01:18:38ID:grEqDVmjそういう話ではないでしょ。
要するに、ソフトウェアによる実装かハードウェアによる実装かは関係なく、
互換性(イレギュラーな使い方を含めて)の問題。
互換チップでも微妙に動作が違ったりするからね。
486の時代、AMDは不具合も含めて互換性のあるチップを作ろうとしていたし、
Intel純正でも286はIRET命令に不具合があってひどかったという例もある。
0433名前は開発中のものです。
2010/05/22(土) 16:23:23ID:1VfCzTxKエミュか実機かと問われれば、どちらかというと実機寄りじゃないの?
0434名前は開発中のものです。
2010/05/22(土) 16:32:10ID:zFfFANIO0435名前は開発中のものです。
2010/05/22(土) 16:41:40ID:1VfCzTxKあれもエミュ(寄り)なの?それとも実機なの?
もしC1を実機と定義するなら、中国メーカーが作る互換機と
シャープのC1の違いはなんなの?
(互換性の良し悪しはあれど、C1だってファミコンの完全互換じゃないぜ?
一部ソフトはC1では動きませんと裏に書いてるし。)
0436名前は開発中のものです。
2010/05/22(土) 16:47:44ID:6iXuP9YW0437名前は開発中のものです。
2010/05/22(土) 19:08:15ID:cRjfa83oで思ったんだけどその初期化に時間がかかってる可能性があるから適当にウェイト入れたらいいかもね
■ このスレッドは過去ログ倉庫に格納されています