ファミコンのプログラム4 (567レス)
1-

422
(3): 名前は開発中のものです。 [sage] 2015/11/02(月) 19:23:11.78 ID:Lz25rOrT(1) AAS
ファミコンのプログラムに興味出たんだけどアセンブラやるならnesasmとcc65はどっちがオススメ?
423: 名前は開発中のものです。 [sage] 2015/11/02(月) 19:37:42.20 ID:GmeIn7pj(1) AAS
nesasmがアセンブラ
cc65がC
なのでアセンブラやるならnesasm

プログラミング経験者?
424: 名前は開発中のものです。 [sage] 2015/11/03(火) 00:48:13.34 ID:dgydVfeg(1) AAS
cc65はca65つーアセンブラも付属してるよ。

>>422
ca65もnesasmも結果として作れるソフトに差はない。
なので、そういう質問するレベルなら簡素なnesasmで十分だと思う。
425: 422 [sage] 2015/11/04(水) 00:04:33.96 ID:MG7aGI5u(1/2) AAS
皆さんありがとう
プログラミングは初心者です
公式で配布しているnesasmは64bitで使えないみたいだから、まだ更新しているca65の方がマシかなと思った
自分の探し方が悪いのか?
426: 名前は開発中のものです。 [sage] 2015/11/04(水) 01:29:45.57 ID:jDbZfAAt(1) AAS
nesasmはソース付いてるから、自前でビルドして64Bit版nesasm作ってもいいのだが、面倒くさいなら、
MS-DOS Player
外部リンク[html]:homepage3.nifty.com
とか使えば、配布されてるnesasmのバイナリも、そのまま64Bit版Windowsのコマンドプロンプトの中で動くと思う。
427: 422 [sage] 2015/11/04(水) 01:38:18.31 ID:MG7aGI5u(2/2) AAS
ありがとうございます
そのソフト別の意味で面白そう
なるほど、自分でビルドしても良いのか
勉強がてらやってみます
428: 名前は開発中のものです。 [sage] 2015/11/04(水) 01:39:43.60 ID:MqFJsopM(1) AAS
64bit版NESASMは既にある
外部リンク[html]:www.2a03.jp
429: 名前は開発中のものです。 [] 2015/11/27(金) 19:22:03.16 ID:FGwJ1plm(1/2) AAS
>>1
1(3): 名前は開発中のものです。 [sage] 2012/07/29(日) 14:19:03.64 ID:a5QeqSA0(1/2) AAS
■過去スレ

ファミコンのプログラム
2chスレ:gamedev

ファミコンのプログラム2
2chスレ:gamedev

ファミコンのプログラム3
2chスレ:gamedev

■関連サイト

MagicKit Homepage
外部リンク:www.magicengine.com
すずめ愛好会
外部リンク[html]:web.archive.org
ギコ猫でもわかるファミコンプログラミング
外部リンク:gikofami.fc2web.com
わいわいの巣
外部リンク:www.geocities.jp
mck hogehoge
外部リンク:takamatsu.cool.ne.jp
NES info, programs, and demos
外部リンク:nesdev.parodius.com
pgate1@crystal
外部リンク:crystal.freespace.jp
cc65 @ wiki
外部リンク:www34.atwiki.jp
外部リンク[php]:orisari.cswiki.jp
430: 名前は開発中のものです。 [sage] 2015/11/27(金) 19:23:07.72 ID:FGwJ1plm(2/2) AAS
>>1
外部リンク[php]:orisari.cswiki.jp
431: 名前は開発中のものです。 [sage] 2015/11/27(金) 22:00:09.01 ID:AEiSUGo8(1) AAS
VBlank待ちで$2002読んだ後VBlank中にスプライト書き込むプログラム書いたけど実機だと
左から右にスプライトを動かそうとするとスムーズに動いてくれない。ドンキーコングとか市販のソフトみたいに綺麗に動かすには
何を気をつけたらいいですか?
432
(1): 名前は開発中のものです。 [sage] 2015/11/27(金) 22:46:48.97 ID:BXn0P/af(1) AAS
普通は$2002を使ったVblank待ちを常用するようなことはしない、ギコ猫〜のサイトでも見たのかな?
詳しくはこのスレの上のほうにあるレスを見てね
433: 名前は開発中のものです。 [sage] 2015/11/29(日) 20:25:04.83 ID:MHj/oA6M(1) AAS
>>432 ありがとうござます。プログラム変更します。
434: 名前は開発中のものです。 [] 2015/12/16(水) 22:25:48.20 ID:+xc8/nu+(1) AAS
>>1
アプリ倉庫だったところ
外部リンク:www6.atpages.jp
435
(1): 名前は開発中のものです。 [sage] 2015/12/27(日) 12:38:46.49 ID:/47Z3a2E(1) AAS
東方老桜夢のver0.20をアップしました。

外部リンク[zip]:homepage3.nifty.com

1面ボスまでの実装、ボムは未実装です。

プログラム構造的には、色々と変更中です。
当初は8KBのバンク1個にステージデータを格納する算段だったのですが、一番短い1面で現地点で5〜6KBぐらいのデータになったので、複数のバンクに分散して持つように変更しています。
弾丸パターンのデータが思いのほか大きかった。会話データはこれからだし。

あと、415さんの報告してくれたバグを元に実機判定を行うことで実機用とエミュ用に分けてたnesファイルを一本化できました。感謝です。
436: 名前は開発中のものです。 [sage] 2015/12/27(日) 13:21:57.15 ID:eEDVBk4A(1) AAS
ちゃんとゲームになってて面白いわ
437: 名前は開発中のものです。 [] 2016/01/17(日) 16:27:08.58 ID:X7lsGmSN(1) AAS
8BIT MUSIC POWER

外部リンク[html]:riki2riki.com
外部リンク[html]:www.gamespark.jp
動画リンク[YouTube]


プログラムが凄すぎる。

CrystalMarkみたいなスプライト量。
 YouTube30fpsの動画では4倍というのがいまいちよくわからない。チラつきだけで4倍表示させてるのか?
 DMAでスプライトダブラー行為するにはBGとSPR両方オフにしないと出来ないという噂だがどこかでオフになっている感じがしない。
 音楽部分で消費するクロック数は、VBLANK内か近傍に収めているだろうね、それとも下の方のラインでjsrしてるのか?。
 割り込み使うとレジスタ退避などでクロックを浪費するから極力使いたくないだろう。
 当初、sprite quadrupler スプライト クワドラプラー かと思ったが違うよな。
 計算で位置求めるのは不可能だろうし、横並びのところはスプライト循環もやってるだろうし、
 データ丸ごとテーブルで持ってるかな、そうなら長時間収録はできない。

パターンテーブルを4.5バンク切り替えてる?のか、全画面で複雑な絵。
 絵1枚で0x2000バイトのパターンを3.5面分総とっかえってことかな。
 どこでCHRバンクチェンジしているのか意識させない、バンクチェンジのノイズを抑えているようだ。
 こちらはクロック数が切迫していないから、割り込みは使い放題かな。
438: 名前は開発中のものです。 [sage] 2016/01/17(日) 16:46:29.69 ID:t/N02VRF(1) AAS
パソファミ関係者っていうのがヤダ
439
(1): 名前は開発中のものです。 [sage] 2016/01/26(火) 08:49:51.39 ID:+RbTUT9y(1) AAS
>>435
ファミコンでも弾幕張れるんだなと関心してしまった
所でVirtuaNES v0.97でプレイすると表記が色々ズレるんだけれどもこのエミュレータでは正常に出来ないということかな?
440: 名前は開発中のものです。 [sage] 2016/01/27(水) 19:47:28.79 ID:8OkpSUkH(1) AAS
>>439
VirtuaNES 0.97で確認してみました。

東方老桜夢ver0.20では、実機/エミュ判定を行っていてIRQ割り込みの頭で、実機/エミュ別にnopを入れてタイミングを調整しています。
実機 nop 2個、エミュ nop 0個となっているのですが、VirtuaNESでは、nop 3個で画面が安定しました。
実機は nop 3個でも安定した画面になるので nopを増やすのは問題ないのですが、
VirtuaNES は、実機/エミュ判定で、エミュと判断されているため、実機側に判定させる何かしらの手立てが必要な状況です。
Aボタンを押した状態で立ち上げたら実機側とするといった方法でも構いませんでしょうか?
441
(1): 名前は開発中のものです。 [sage] 2016/01/27(水) 23:31:46.97 ID:iuhjgLDC(1) AAS
ほう、実機判定してるんだ。

 VirtuaNESにあわせる必要はない。
使いやすさは最高だが、エミュレーション精度はいまや時代遅れだからだ。
 対しPPUクロック精度で書かれたより新しいエミュは
動作が重いという罠もある。
442: 名前は開発中のものです。 [sage] 2016/01/28(木) 00:04:07.25 ID:aAl7ptEy(1) AAS
>>441

では、申し訳ありませんが、VirtuaNES対応は宿題とさせていただきます。

実機判定は、VBlank期間中にMMC3のIRQを発生させれるかを行っています。
FCEUX Nestopia NNNesterJ で動作確認しましたが、この判定をパスしたのは Nestopia だけでした。
再現性が高いという評判は流石と思いました。
443: 名前は開発中のものです。 [sage] 2016/01/28(木) 00:08:59.07 ID:4HlAPjuX(1) AAS
しかし1クロック単位を考慮しなきゃならんソフトが多いってのもなぁ
ファミコンはホントに難儀なハードだよ
普通は表面だけをマネできればいいが、ファミコンの場合そうもいかないのがな
444
(1): 名前は開発中のものです。 [sage] 2016/01/28(木) 19:42:33.80 ID:ej2nMNKX(1) AAS
VirtuaNESで見たが、ゲーム固有オプション>タイル で奇麗になる。
445: 名前は開発中のものです。 [sage] 2016/01/29(金) 08:12:40.13 ID:IhMTdY1w(1) AAS
>>444
ありがとうございます。
ヘルプにタイル状に分割して描画とあったので、ボスの体力ゲージなどの狭いライン間隔での割り込み部分が
どうななるのか気になったのですが、問題なく表示されるのを確認しました。
446: 名前は開発中のものです。 [sage] 2016/02/02(火) 21:14:25.02 ID:Xla8KbIU(1) AAS
ニコ動(sm28114684)に 8BIT MUSIC POWER の動画が投稿されていたので見たけど、
スプライト量4倍は、8x16モードで(8x8に対して2倍×偶数/奇数フレームで時間軸に分散で2倍 っぽい。

画面止めて、移動するオブジェクトの数を数えたけど、64個以内に収まっている。
オブジェクトの移動は、円軌道や微妙な加速減を行っているようで、それなりに負荷はありそう。でも無理のない範囲。
1-
あと 121 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.014s