ファミコンのプログラム2at GAMEDEV
ファミコンのプログラム2 - 暇つぶし2ch756:名前は開発中のものです。
07/09/25 20:25:14 BaS36VCt
>>752
>>754
あれって結局どれのこと??

>>755
ディスクは縦横スクロールの切り替えができたとおもう

757:名前は開発中のものです。
07/09/25 20:39:20 TqbfhCga
>>756
やっぱりそうなのか
サンキューサンキュー

758:名前は開発中のものです。
07/09/25 23:14:47 NsHkjNv/
ドッカン
          ドッカン
                  ☆ゴガギーン
        .______
.        |    |    |
     ∩∩  |     |    |  ∩∩
     | | | |  |    |    |  | | | |  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
    (  ,,)  |     |    | (・x・ )<おらっ!出てこい、>>749!!
   /  つ━"....ロ|ロ   . | l   |U \___________
 ~(  /   |    |    |⊂_ |~
   し'∪  └─┴─┘  ∪

759:名前は開発中のものです。
07/09/25 23:20:52 2Bw0KVXn
ゼルダの縦スクロールってどこのこと?

760:名前は開発中のものです。
07/09/26 01:35:58 MPZZdALw
>>759
縦方向にマップ切り替える時も画面上部のエリアがそのまま残ってるからさ
どうなってんのかな?と思ったんだ

761:名前は開発中のものです。
07/09/26 13:47:50 VaRvmNuT
>>756
だとすると、ROM版はどうなるんだい?

762:名前は開発中のものです。
07/09/26 21:32:09 7MNB23As
ロム版は静止画になってたよ

763:756
07/09/26 23:31:32 TaMm3Csb
>>761
ROM版のマッパーであるMMC1にも実はH/Vミラーリング切り替え機能がついている
たしかMMC3にもついてる

764:名前は開発中のものです。
07/09/27 02:16:06 etK1Tkui
ミラーリングのH/V切替はメジャーなマッパーにはほとんどついてるでしょ。
アドレス線線一本つなぎかえるだけなんだからな。
実装しない方がおかしい。

765:761
07/09/27 02:45:58 2fAlXZFD
回答ありがとう。
でも、、、君たちの言っている言葉の意味が分からない。
このスレ読んでると何となく楽しいから興味本位で聞いてみただけなんだ。
ごめんね、、、そしてありがとう。

766:名前は開発中のものです。
07/09/27 03:54:38 yk8sCyvW
ゼルダのスクロールがどんなだったかは覚えてないが、
ミラーリングじゃなくて、IRQの話なんじゃないの?

767:759
07/09/27 16:35:32 jXU565hn
>>760
サンクス。
>縦方向にマップ切り替える時も画面上部のエリアがそのまま残って
町とかダンジョンのように水平スクロールの場面からフィールドに出たときのことか。
ミラーリング切り替えた後フィールドじゃ画面外の部分を1/4位は書き換えてないので残ってるようだね。

768:名前は開発中のものです。
07/09/27 18:04:31 uF6GajD5
>>760
V-Sync割り込み?

769:名前は開発中のものです。
07/09/27 23:20:42 etcx5xT4
>>760の疑問自体は>>766のいうIRQもしくは0番スプライトを使った
BG描画位置を途中で切り替えるテクニックで実現している

H/V切り替えは>>760の疑問には直接的な関係はまったくないです

ただゼルダはマップ切り替え時に切り替え先のマップを全部描画してから
スクロールするというあまり見かけない手順を踏んでいるのでH/V切り替えが必要になる

なので方法を変えればH/V切り替えがなくても縦スクロール自体は実現できるはずです

>>767
それはリンクの冒険じゃないかな?

770:名前は開発中のものです。
07/09/28 07:22:01 vZWV6RlS
なるほど
垂直/水平ミラーどちらを選んでも、縦横両方のラスタースクロールは可能なのか
勉強になるなあ

771:759
07/09/28 15:57:39 8fypBKhz
>>769
>それはリンクの冒険じゃないかな?

すいません。リンクの冒険でした。
ゼルダの伝説とリンクの冒険は別物だったのか。
リンクの冒険はゼルダの伝説の副題かと思ってた。

772:名前は開発中のものです。
07/09/30 22:40:23 4zpMsZUy
BGの書き込みでちらつきが出るのは、いっきに書き込み過ぎて処理が間に合ってないってことなのかな?
勝手にスクロールしたりするし、よくわからんなー

773:名前は開発中のものです。
07/09/30 22:58:20 ctrzx47m
>>772

>>735あたりを参考にしてはどうだろうか?

774:名前は開発中のものです。
07/09/30 23:34:14 4zpMsZUy
>>773
おお、ごめん
このスレずっと読んでたはずなのに>>735はスルーしてたわ
BGは少しずつ転送するものなのね

775:名前は開発中のものです。
07/10/25 04:23:19 UcTvIsDj
初代ゼルダのフィールドの画面切り替えの縦スクってドット単位だったかな?
キャラ単位で直接書き換えてなかったっけ。8ドットスクロールしてる。
横スクロールと、オープニング・アイテム画面への切り替え、の縦スクロールはドット単位だけど。
アイテム画面は、縦方向なら、スクロール時に画面外でBGを逐一書き換えれば見掛け上、残っているように見せることは可能だし。

初代ゼルダはさておいて、
両方向ともスクロールする場合、固定画面のゲージは画面の下に持って行ってるソフトが多かったかな。
水平ミラーにして、ゲージは縦スクロールの都度にBG内を逃げ回ってるのかな。
画面の横端はスクロールの書き換えで、ちらついてるし。

776:名前は開発中のものです。
07/10/25 06:19:19 UcTvIsDj
そういえばグラIIはボス戦でゲージが消えてたな。

777:名前は開発中のものです。
07/10/25 22:38:06 UcTvIsDj
virtualnesで見たらゼルダは切り替えてる。

778:名前は開発中のものです。
07/11/11 10:15:38 o0+OaF/m
ほしゆ

779:名前は開発中のものです。
07/11/11 15:52:00 NkvtGXk8
アセンブラの勉強もかねて、
ファミコンソフト開発をやろうかなとか思いました。

780:名前は開発中のものです。
07/11/11 16:04:58 az0lrOpc
6502のアセンブラ覚えてもほとんど役立たないとは思うけど
面白いとは思うので頑張ってください

781:名前は開発中のものです。
07/11/11 16:07:27 NkvtGXk8
とりあえず、ギコ猫します。

782:名前は開発中のものです。
07/11/11 16:15:59 NkvtGXk8
>>780
ありがとうございます。

いつも、Cとかのメモリ周りの処理でうなされるので
アセンブラで簡単なアルゴリズムとか理解できるようになれば、
今後の助けにもなるかなぁとかな感じです。

783:名前は開発中のものです。
07/11/11 19:57:24 NkvtGXk8
スプライトのパレットが変わらなくて、
上下が左右が入れ替わると思ったら、
bit0-7の桁を逆に見てたorz

784:名前は開発中のものです。
07/11/11 21:07:43 +2rF8fti
ファミリーベーシックのリファレンスってどっかにありませんか?

785:名前は開発中のものです。
07/11/11 22:32:16 QaWoRbrs
ヤフオク、ハードオフ

786:名前は開発中のものです。
07/11/22 02:12:25 ixnafG3i
ギコ猫で勉強してるんだけど
なぜかアセンブルするときセグメンテーションエラーが出る。
別のPCだと何ら問題なくできる。
VC++入れてるせいかな?

787:名前は開発中のものです。
07/11/22 07:25:08 tyRfI0nu
俺もVC++入ってるけどそのエラーは出たことないな
NESASMのソース読んで確認してみたらどうかな?

788:名前は開発中のものです。
07/11/22 07:32:28 kNQWsH/p
1) exeファイル破損
2) HDD壊れてる
3) 64bit Windows
4) 気のせい

どれかだと予想...

789:名前は開発中のものです。
07/11/22 19:26:16 ixnafG3i
>>787-788
レスありがとうございます。
VC++は関係ないですか。
サイト上のソースを直接試してみてもダメでした。
ご指摘いただいた点も4)を除けば、問題ありませんです。

色々と検証してみたのですが、正常にアセンブルできるPCでは、コマンドプロンプトで
$ nesasm test.asm
と実行すると、コマンドプロンプト上の文字が一旦クリアされてから

Microsoft (R) KKCFUNC バージョン 1.10
Copyright (C) Microsoft Corp. 1991,1993. All rights reserved.
KKCFUNCが組み込まれました.
マイクロソフトかな漢字変換 バージョン 2.51
(C)Copyright Microsoft Corp. 1992-1993
NES Assembler (v2.0)

と表示されます。
しかしうまくいかない方のPCでは、文字がクリアされないまま

NES Assembler (v2.0)
Exiting due to signal SIGSEGV
…略

となってしまいます。
$ nesasm nofile.asm
と存在しないファイルを引数に実行すると、上記のようなKKCFUNC云々が表示され
その後、inputファイルが存在しない旨エラーが出ます。

色々調べてみたけどよくわかりませんでした。
コマンドプロンプトがおかしいような気がしないでもないんだが…

790:名前は開発中のものです。
07/11/22 22:53:48 kNQWsH/p
>>789
なんとなく、command.comで動かしてるんで無い?
cmd.exeで動かしたらどうなるだろ?

791:名前は開発中のものです。
07/11/23 01:29:11 DgWJFham
cmdでやってました。
command.comで試してみたけど、やはり同じエラー。
小出しになってしまい申し訳ないんですが、エラーは以下のようなものです。

NES Assembler (v2.0)

Exiting due to signal SIGSEGV
General Protection Fault at eip=00009a10
eax=fffd0000 ebx=00000000 ecx=000002af edx=fffd0000 esi=00004000 edi=0000000b
ebp=002615cc esp=002615bc program=D:\NESASM\NESASM.EXE
cs: sel=01a7 base=02af0000 limit=7d4fffff
ds: sel=01af base=02af0000 limit=7d4fffff
es: sel=01af base=02af0000 limit=7d4fffff
fs: sel=017f base=0002eb10 limit=0000ffff
gs: sel=01bf base=00000000 limit=7ffeffff
ss: sel=01af base=02af0000 limit=7d4fffff

Call frame traceback EIPs:
0x00009a10
0x0000998d
0x0000cc6c
0x0000a456
0x00004c7e
0x0000443d
0x000094fa

792:786
07/11/23 01:35:01 DgWJFham
連投すみません。
問題なくアセンブリできるPCで、command.comを試してみたら
>>791と同じエラーが出ました。
ということはcmdがなぜかcommand.comになってしまう…ということだろうか…

793:名前は開発中のものです。
07/11/23 09:58:21 O5K5+zHz
PCやOSがどんなのかもわからんけど、よくわからんねw
もしかしたらcygwin版なのか?

これに添付してあるNESASMなら動くかも。
どうやらこれはVisualC++とかでコンパイルされたもののようなんで。
URLリンク(takamatsu.cool.ne.jp)

794:名前は開発中のものです。
07/11/23 10:35:44 z/08mCDz
OSがNESASMの実行を不許可にしているとか
なんにせよ作る人が増えるのは嬉しいねー

795:786
07/11/23 15:22:47 DgWJFham
>>793-794
レスありがとうざいます。
WinXPsp2上で行っています。
Cygwinはインストしてるけど使ってませんw

そちらのサイトから落としたもので見事アセンブルできました。
こんなにあっさり動作してしまうとは…
なぜ今までのはダメだったかわかりません。
OSが実行を妨げてたということもあるんですかね~

796:名前は開発中のものです。
07/11/23 15:38:42 1vTEkJAZ
最近ゲームセンターCXってゲームで
ファミコンゲームの良さを再確認したとこなんだけど、
アセンブラの開発効率を考えたら躊躇してしまう・・・
まあCぐらいならシャレになるけど、アセンブラだと・・・
Cのコンパイラはあるみたいだけど、調べても使い方が
よくわからんし。そこらへんを詳しく解説してるサイトってない?
当時の開発者もCでやってたんじゃないのかな?

797:名前は開発中のものです。
07/11/23 17:07:35 je64UXYk
Cでまともに開発できるんならみんなやってますがな

798:名前は開発中のものです。
07/11/23 18:18:10 bcCNCl00
>>769
普通のCは一時変数をスタックに入れるけど、ファミコンのスタックは正直使えない。
mov eax [esp - 4] みたいにスタックポインタを利用することができないから。
ファミコンのCはそこらへんどうなってるんだろう?どちらにしろファミコンでCは使えなさそう。

799:名前は開発中のものです。
07/11/23 20:58:35 TC3s5J9X
0ページインダイレクト利用するにきまってるだろ
ちみは素人か

800:名前は開発中のものです。
07/11/24 01:11:40 3IffJmji
ゼロページインダイレクト
処理対象データをメモリ間接で示す方法です。オペランドには、対象アドレスを格納
したゼロページアドレスを記述し、メモリに2 バイトの対象アドレスを格納します。

URLリンク(documentation.renesas.com)

801:名前は開発中のものです。
07/11/24 01:15:22 W176UE3O
BRKの使いどころがわからない

802:名前は開発中のものです。
07/11/24 01:21:12 WabE+qEc
BITも使いどころがわからない

803:名前は開発中のものです。
07/11/24 01:42:58 rlJAJiPe
>>796
Cコンパイラを使ってたのはごく一部(光栄だけかも?)位なもんですよ。

>>798
使い方さえ間違えなければ問題ないかと。
PCで使うような感じでは組めないだろうけどね。

>>801
あまり使われてないけど、よく使うルーチン(アドレス計算とか)を
少ないバイト数で呼び出すために使ったりとか。
Z80で言う所のRST xxHか。

>>802
bit7とbit6はAレジスタに無関係にオペランドのデータと比較するから、
データを工夫して、bit7とbit6に何かしらのフラグを詰め込んで判定に
使うとか…と思ったが、

LDA $??
BMI どこか
AND #$40
BNE どこか

でもあんまかわらんなw

あと参考になりそうなとこ。cc65とか使ったサンプルあるっぽ。
URLリンク(hp.vector.co.jp)


804:名前は開発中のものです。
07/11/24 03:07:02 W176UE3O
>>803
BRKは結局アドレスを指定しないで良いJSRみたいなもんか
BITは計算結果を後で二つのフラグに応じて加工したい場合に一応使えるかな

805:名前は開発中のものです。
07/11/24 06:11:23 rlJAJiPe
>>804
BRKはドラクエIIIあたりで多用されてたっぽい。
IRQも併用だとフラグ判別が面倒だけど。

BITで思い出したので追加

アキュムレータを破壊しないという利点がある。
ディスクシステムBIOSの割り込みルーチンで使われてたの思い出した。

806:名前は開発中のものです。
07/11/24 12:01:32 WabE+qEc
>803-805
なるほど。
BITは即値が使えないんだよね。
AND取る時はいつも即値でやってるから使い道が無いように感じてたのかも。
BITに置き換えられる部分がないか、以前のソース見直してみる。

807:名前は開発中のものです。
07/12/02 05:59:20 DC5FGIeU
唐突ですけど、ファミコンでスプライトダブラをやってたソフトってありますか?
まあやるにしても標準の2Kのメモリでは増やしたスプライトの情報を確保するのがそもそも無理そうですけど…
コナミの後期ゲームではもしかしてやっていたんでしょうか?

808:名前は開発中のものです。
07/12/02 11:34:30 4sJ+GQXo
多分無いと思うけど。

809:名前は開発中のものです。
07/12/02 19:59:06 DC5FGIeU
烈火とかグラIIをデバッガで見た感じだとNMI割り込みにつきDMA転送が一回だからやってなさそう
Y軸に関してソートするのはファミコンじゃやっぱり無理か…メモリも少ないし
MSXではやっていたのがあったらしいんですけどね

810:名前は開発中のものです。
07/12/02 22:28:11 4sJ+GQXo
表示中にDMAしたら動かなくなった記憶があるw

811:名前は開発中のものです。
07/12/02 23:16:25 /I6PKiKL
シューティングならやりくり次第では、メモリに結構余裕があると思うよ。
1フレーム間に2回以上もDMA転送したことないから、
スプライトダブラが可能かどうかはわからないけど。

812:名前は開発中のものです。
07/12/24 02:10:53 WDReFZ3W
>>809
烈火でさえやってないのね。なら、国内はないだろう
可能性あるとしたら、海外ものか・・

813:名前は開発中のものです。
07/12/25 01:33:19 a+dDmNqn
グラ2はやってるって噂だったが、嘘か?

814:名前は開発中のものです。
07/12/31 01:19:19 kYbV1FFj
ギコファミで勉強中なんだが(第九章スプライトDMAまで理解できた)
スプライトを移動させるときにマリオとかみたくアニメーションさせる方法を
教えてください。


815:名前は開発中のものです。
07/12/31 03:03:50 MbVyzQhq
>>814
スプライトDMAする内容を時間経過で変えていけばおk

816:814
07/12/31 03:08:48 kYbV1FFj
>>815
時間を取得する方法とは?
やはりゼロページに適当に変数作ってひたすらインクリメントしてオーバーフロー
を起こした時などのようにやるのでしょうか?

817:名前は開発中のものです。
07/12/31 03:26:12 73X1rpDN
10章読みなさい
答えにたどり着けるはず

818:814
08/01/01 04:52:01 knyurTO2
自力で解決したZE★


819:名前は開発中のものです。
08/01/01 06:13:28 hvcEjHSr
ほら解決したろ。よかったな。
タイミングを計るには
Vblank割り込みを使う
0番スプライトヒットをポーリングする
使った命令から総サイクル数を計算しておく
の三つから好きなものを選べばいいわけだ。

820:名前は開発中のものです。
08/01/07 05:45:47 4pGCNPYq
領域の境界で消えまくりそう。処理がまにあえばいいけど・・

画面を横に四つに切る、四つの領域(バッファ)を考えて
そこへ32枚ずつ表示を考え、最大128枚の表示をめざす。
バッファに入らなかったスプライトは残念ながら表示されない。
表示するスプライトのうち、Y=0..59ドットのものはAのバッファへ。
60..119をB、120..179をC、180..239をDへ設定。
四つの領域である程度分割されたバケツソートの意味合いがある。

垂直回帰線割り込み終了までに四つの領域それぞれでYで
ソートをすませておく
画面の0~、60~、120~、180~でラスター割り込みで、
それぞれ転送する
いっぺんに32枚のDMA転送は間に合わないので、
ラスター割り込みを何度もかけて数バイトずつ転送していく。
Yでソートされているので、ラスターを何回か経過したとして
もちらつくことは少ないと考えられる。

※領域ごとに64枚の処理はどうせ間に合いっこないので
32枚で考えました。メモリの節約も考えています。
それにファミコンのスプライトは8枚ならんだら
どのみちちらついてしまいます。
※ファミコンの場合、ラスター割り込みではなく、
フラグを監視するのでしたっけ?知識があいまいです。

821:名前は開発中のものです。
08/01/07 09:18:08 g1ISiWA7
何の話?

822:名前は開発中のものです。
08/01/07 10:08:36 KdyvFZW6
スプライトタブラーだろ
ゲームカセットにハード入れりゃいいのに

823:名前は開発中のものです。
08/01/07 21:50:41 DGu4+3+B
>>822
たとえばマッパー4?

824:814
08/01/10 17:03:00 OjgtnRWb
またまた質問があるのですが、ファミコンで乱数を使う場合どのようにすればいいのでしょう?
I/Oの0x400Eを使うっぽいと思うんですがだれか。

825:名前は開発中のものです。
08/01/10 17:33:31 N1q/jj2z
それ音声用だから値は取得できない
擬似乱数でググって好きなの使えや

826:814
08/01/11 03:34:55 R/XuHjLJ
自力で解決したZE★

827:名前は開発中のものです。
08/01/12 21:07:38 Te3dHOGv
すみません、ファミコンプログラムを新しく始めようと思ったのですが、
すずめもギコ猫も閉鎖のようで困っています。

どこかよい入門サイトはないでしょうか?

828:名前は開発中のものです。
08/01/12 22:08:20 YCUe1kyM
急いでギコ猫開いたけど、驚かせやがってまだあるじゃん
URLリンク(gikofami.fc2web.com)

829:名前は開発中のものです。
08/01/12 22:52:50 WVC5D6DD
そうやって人にググらせて自分でググる手間を省く
ググググ詐欺だから気をつけろよ

830:名前は開発中のものです。
08/01/13 19:26:35 C14nC1gP
電源を入れた一瞬だけBGが表示されてからすぐスプライトだけになってしまう
のはなぜ?

831:名前は開発中のものです。
08/01/16 23:15:56 4fd74qnV
MMC3のNESファイルのプログラムが始まるのって何バイト目なのでしょうか?
6502の情報はあってもNESファイル自体のフォーマットってみつからない...


832:名前は開発中のものです。
08/01/16 23:16:28 n7RHHgvL
ヘッダでぐぐれ

833:名前は開発中のものです。
08/01/17 01:01:00 XmraM3Wj
>>831
6502の情報はしっかり読んだのか?

834:名前は開発中のものです。
08/01/17 20:29:44 MFRvwVD0
ありがとです。とりあえずプログラムの分割はうまく出来たんですが、
今度はどれが最初にロードされるかってのが分かんないままです。

835:名前は開発中のものです。
08/01/17 21:39:29 3grYd5u4
あてずっぽで答えるけど
リンクした順だと思うよ

836:名前は開発中のものです。
08/01/19 13:45:34 sVRM+WoC
最終バンクのベクタに書いてあるアドレスから始まるお

837:名前は開発中のものです。
08/01/19 16:47:04 /dJ7WQvQ
開始時に2回VBlankを待つ意味がわからない。


838:名前は開発中のものです。
08/01/19 19:12:13 sA5AMxJm
スレ違いかもしれませんが少々お聞きしたいことがあります。
当方ゲーム業界には全くの未経験なのですが、知り合いのゲーム狂の人から
聞いたのですが、ドットで絵を描く技術があればしばらくの間食いっぱぐれないと
いっていたのは本当でしょうか?また絵心のない素人でも目指せるものなのでしょうか?


839:名前は開発中のものです。
08/01/19 19:17:57 FNn0MEGQ
> 477 名前: 名前は開発中のものです。 投稿日: 2008/01/19(土) 18:44:02 ID:sA5AMxJm
> スレ違いと思いますが、オンラインゲーム会社って潰れやすいのでしょうか?
> ゲーム業界に入りたいのですが、GMとかカスタマーサポートとか未経験で募集している
> 所を良く見かけるのですが、あまりお薦めの業種ではないのでしょうか?
> 年収とかどの程度もらえるのでしょうか?
> 宜しくお願いいたします。
>
> 232 名前: 名前は開発中のものです。 投稿日: 2008/01/19(土) 19:01:48 ID:sA5AMxJm
> スレ違いですが質問させてください。ゲームデバッガーが正社員で募集かけているのですが、
> 年俸300万ぐらいで・・。やはり先はないですか? 当方30歳で、
> 現在デスクワーク職を探しているのですが・・。前職は小売してました。
>
> 175 名前: 名前は開発中のものです。 投稿日: 2008/01/19(土) 18:54:42 ID:sA5AMxJm
> 質問させてください。ゲームデバッガーが正社員で募集かけているのですが、
> 年俸300万ぐらいで・・。やはり先はないですかねえ。当方30歳で、
> 現在デスクワーク職を探しているのですが・・
>
> 838 名前: 名前は開発中のものです。 投稿日: 2008/01/19(土) 19:12:13 ID:sA5AMxJm
> スレ違いかもしれませんが少々お聞きしたいことがあります。
> 当方ゲーム業界には全くの未経験なのですが、知り合いのゲーム狂の人から
> 聞いたのですが、ドットで絵を描く技術があればしばらくの間食いっぱぐれないと
> いっていたのは本当でしょうか?また絵心のない素人でも目指せるものなのでしょうか?
>
> 245 名前: 名前は開発中のものです。 投稿日: 2008/01/19(土) 19:14:07 ID:sA5AMxJm
> スレ違いですが質問させてください。ゲームデバッガーが正社員で募集かけているのですが、
> 年俸300万ぐらいで・・。やはり先はないですか? 当方30歳で、
> 現在デスクワーク職を探しているのですが・・。前職は小売してました。
> こつこつ大好きです。


840:名前は開発中のものです。
08/01/20 01:01:20 Y8Qd0Csc
夢からさめなさーい

841:名前は開発中のものです。
08/01/26 19:45:53 pcXY3xH1
>>839
ワラタ

842:名前は開発中のものです。
08/02/02 11:33:09 1nDtXC13
最近なんか作った?

843:名前は開発中のものです。
08/02/09 21:37:45 o+W6Qao2
ゲーム・ジェネレーションX ~8BITの魂~ていうDVDに
ミスタースプラッシュのソース入ってる
糞高いけど買ってみた

844:名前は開発中のものです。
08/02/09 21:49:41 De8TOQpK
>>843
うp

845:名前は開発中のものです。
08/02/09 21:59:53 U5FDHTrV
>>843
ビルドするならこの辺参照
スレリンク(skyp板:508-番)

846:名前は開発中のものです。
08/02/09 22:16:40 o+W6Qao2
>>845
それの>>490俺だし

847:名前は開発中のものです。
08/02/15 22:31:58 uGndRfzQ
NESファイルというのをいただいたんですが開くことができません
どうすれば開くのでしょうか 教えてください

848:名前は開発中のものです。
08/02/15 22:32:04 36W2us5r
前にもカキコしたけど,VBLANKを2回待つメリットっていうか意味を教えて下さい.
任天堂のゲームは2回待っている模様


849:名前は開発中のものです。
08/02/15 23:36:11 uIOxrlI0
一回だけ待つとこうなる
 待ってみるつもりが既にVBLANKだったぜラッキー!
 だがVBLANKの終了直前だったみたいで転送処理が全部おわんね


850:名前は開発中のものです。
08/02/16 01:37:22 p9v8b4r1
>>847
URLリンク(virtuanes.s1.xrea.com)

851:名前は開発中のものです。
08/02/16 02:14:14 VD5lPrwS
なるほどね,それじゃあやっぱり自分もこれからは2回まった方がいいね,癖にしておこう.
回答していただき,有難うございました.>>849

852:名前は開発中のものです。
08/02/17 17:25:34 Vj+9qYk1
今スーパーマリオ1の逆汗テキスト読んでたんだが,気になる事が.
NMI割り込みルーチン内でスプライトDMA転送するとき
lda #$00
sta $4013
してたんだがこれって意味あんの?DMA利用ならしなくていい希ガス

853:名前は開発中のものです。
08/02/17 17:29:07 Vj+9qYk1
スマソ,もう1個聞きたかったんだが忘れてた
NMI割り込みが起こったとき,自動的にインタラプトフラグがセットされるのなら
わざわざ
NMI:
lda (PPUCTL1の値が入っている変数)
and #$7F ; NMI禁止
ってしなくていいと思うんだが.
上のもそうだけど,やらんでもいいけど念のために一応ってことなのか?


854:名前は開発中のものです。
08/02/17 18:14:49 YZmmPMQz
もちつけ
     /\⌒ヽペタン
   /  /⌒)ノ ペタン
  ∧_∧ \ (( ∧_∧
 (; ´Д`))' ))(・∀・ ;)
 /  ⌒ノ ( ⌒ヽ⊂⌒ヽ
.(O   ノ ) ̄ ̄ ̄()__   )
 )_)_) (;;;;;;;;;;;;;;;;;;;)(_(

855:名前は開発中のものです。
08/02/19 20:44:34 hKFDiVgN
VDP側がROMじゃなくてRAMになってるタイプで
マッパーが普通の74LSとかで組んでるゲームがあったら教えて下さい
アテナがそうらしいけど、高くて買えないので…

856:名前は開発中のものです。
08/02/22 22:18:48 8jCbI3Ds
手持ちのボンバーキング開けてみたらそれだったので解決しました

857:名前は開発中のものです。
08/03/18 04:01:08 ftdzuL2t
日本のゲーム機なのに資料が少なすぎだろ・・・

858:名前は開発中のものです。
08/03/22 01:23:16 pdTWW93c
ほんと
割り込み調べたら「ゼロ爆弾」だって。
遠回りしちゃった
もうなんだかね

ラスター割り込みをかけるのは不可能で
ビットを調べるんですよね?

859:名前は開発中のものです。
08/03/22 09:37:33 zDal5JxT
>>858
MMCについて調べてみたら?
中には割り込みかけられるものが有るかもよ。

860:名前は開発中のものです。
08/03/22 11:43:24 rSgVHWgR
>>858
ラスター割り込みをかけるにはスプライトのヒット割り込みを使用するんだよ

861:名前は開発中のものです。
08/03/22 12:16:41 44zgMaPM
割り込みじゃなくてポーリングな
つか>>858>>427だろ
まだ言ってるのかw

862:名前は開発中のものです。
08/03/22 15:17:02 CxqUzKDX
>>860みたいな間違った知識をひけらかす輩が減らないからこういう誤解が生まれるんだよな

863:名前は開発中のものです。
08/03/22 16:20:29 zDal5JxT
どういう理屈で出来ると思ったのかには興味がある。
>>860 さん説明プリーズ。


864:名前は開発中のものです。
08/03/22 16:31:46 rSgVHWgR
0番のスプライトを透明にしておき
0番のスプライトがラインバッファに展開されるときに割り込みを掛ける
割り込みが掛かったらスクロールレジスタをいじる
ギコ猫でもわかるファミコンプログラミングはレジスタの変化をポーリングで見ているので
処理としてみるとかなり無駄

865:名前は開発中のものです。
08/03/22 16:44:20 n8G80DnX
透明じゃ爆発しないよ。
バッファーに展開されるだけじゃ、まだBGとヒットするか分からないよ。

866:名前は開発中のものです。
08/03/22 16:48:12 rSgVHWgR
そうかMMC3を使用しないでラスタースクロールをさせようとしているのか
すまん今までののは忘れてくれ

867:名前は開発中のものです。
08/03/22 17:22:01 csbukLQx
MMC3でも>>864のようなことはできないと思うんだけど、どうだろう

868:名前は開発中のものです。
08/03/22 17:35:20 CxqUzKDX
ID:rSgVHWgRは割り込みがどういう物なのかすら良くわかっていないな

869:名前は開発中のものです。
08/03/22 17:56:21 rSgVHWgR
文章的には多重割り込みみたいな書き方になってしまってすまんが
まあすべて忘れてくれ

870:名前は開発中のものです。
08/03/22 18:07:57 ZHnGj0uE
多重割り込みってのでも話が全く違うw

871:名前は開発中のものです。
08/03/22 18:36:07 zDal5JxT
正直理解出来なかったが、とりあえず説明乙。

872:名前は開発中のものです。
08/03/22 20:57:40 baVac2O7


873:名前は開発中のものです。
08/03/23 00:08:33 jBgLa1TI
PCエンジン版ドラクエ(音量注意)
URLリンク(www.nicovideo.jp)

よく考えたらファミコンとCPU一緒なんだよな
MSXに移植するよりはるかに楽なのになんで移植しなかったんだろ?

874:名前は開発中のものです。
08/03/23 00:54:26 /OtFdBez
大人の事情

875:名前は開発中のものです。
08/03/23 02:44:16 iO1IjpfL
一緒と言うか上位互換じゃなかったっけ

876:名前は開発中のものです。
08/03/23 03:38:28 NR48CCe+
>>875
そう思った理由はなに?
俺の目には別物に見えるけど。

877:名前は開発中のものです。
08/03/23 04:55:09 1IdRwEBV
CPUに関しては互換だろ
NESASMだってPCエンジン用のアセンブラのおまけみたいなもんなんだから

878:名前は開発中のものです。
08/03/23 05:01:24 NR48CCe+
聞いた俺が馬鹿だった。
忘れてくれ。

879:名前は開発中のものです。
08/03/23 05:15:20 1IdRwEBV


880:名前は開発中のものです。
08/03/23 05:34:15 NR48CCe+
オブラートに包んだ言い回しって難しいな。

881:名前は開発中のものです。
08/03/23 06:07:50 +F+RSyfx
つまりX68000のソフトは同じCPUのメガドライブや、ネオジオや、
初期のUNIXマシンや、Macの上でも動くわけですね!

882:名前は開発中のものです。
08/03/23 08:39:08 2Xh2a013
>ファミコンとCPU一緒なんだよな
ってのを受けて

>上位互換じゃなかったっけ
と書いたら、そりゃCPUが上位互換だと言ってると考えるのが普通じゃないか?w

883:名前は開発中のものです。
08/03/23 11:35:33 7jOaOmNA
>>881
移植だと言っているのにお前は何を

と釣られてやろう

884:名前は開発中のものです。
08/03/23 12:47:09 /aF1W36L
そういう流れだったのか。
これは失敬。

885:名前は開発中のものです。
08/03/23 13:15:34 Oei8nD2Z
移植とかいってマシン語やアセンブラ弄るつもりなのか?

よほど変なCPUじゃないかぎり、
CPUメーカーからCコンパイラ供給されるからCPUの仕様の違いは吸収できる。

むしろVRAMやサウンド関係の仕様(特に容量)の違いがあるから、
そちらの方が移植の障害になる。

CPUが同じだから移植ができるとか仰る方は、、
知的に障害がございますようなので明日医者お行きなさい。
別に急患じゃないから決して救急車使わないでくださいね。
人様の迷惑になりますから。

886:名前は開発中のものです。
08/03/23 13:33:02 iO1IjpfL
というか何で移植の話になってるのか分からないんだけど、
873のドラクエって移植というよりエミュレートに近いんじゃないの?

そりゃ音とか絵周りが違うのは手を加えないといけないけど


887:名前は開発中のものです。
08/03/23 14:55:18 j//5XBBb
メガドラに勝手に移植したドラクエもあったな

888:名前は開発中のものです。
08/03/23 15:32:40 zVsIokeY
885
は何が言いたいんだ?
ドラクエだといってるのにCとか

とりあえず
>>873
をよく読め


889:名前は開発中のものです。
08/03/23 15:48:15 zVsIokeY
それにしてもいつも誰も居ないのに
こうも人が来ると気味が悪い

890:名前は開発中のものです。
08/03/23 18:13:44 XAwxuj8j
>>873
MPUが全く別だからあまり楽とは言えないとおもわれ
MSXよりPCEのほうがスペック的に高い分だけは楽かもしれないが

891:名前は開発中のものです。
08/03/27 19:10:10 hcbDb5Fi
音源は再現しきれてるのか?

892:名前は開発中のものです。
08/03/29 12:10:03 qWPgrjug
SMB1ではNMIがコールされるたびに
lda #$00
sta $2005
sta $2005
としているがなぜこれで画面がスクロールするのかわかる人いたらおしえて

893:892
08/03/29 12:15:53 qWPgrjug
ごめん
今自己解決した

894:名前は開発中のものです。
08/03/30 22:07:45 AtognkZa
どうでもいい話だが873はNES版ドラクエであってPCエンジン版ではないと思う
PCエンジンのNESエミュかCDロムロムの画面くっつけてるだけだ

895:名前は開発中のものです。
08/04/05 15:43:58 WhGJWVuk
ファミコンって52色中16色じゃないの?
ここ見たら64色って書いてあるんだけど。
URLリンク(www9.atwiki.jp)

896:名前は開発中のものです。
08/04/05 18:14:29 2cWf7sFt
一般的には全52色と認識されている
64色というのは6ビット使ってパレット番号を指定しているところからくる誤解だろう
そのうちのBG13色(透明色含む)とスプライト12色を足した25色が同時に発色可能


897:名前は開発中のものです。
08/04/07 18:10:13 Re35z2Ny
MMC5を使用したファミリーベーシックが欲しかったな。
そういや32bitの入門向け開発機がどうのこうのと昔任天堂が言ってなかったけ?

898:名前は開発中のものです。
08/04/22 19:17:10 JlUji/kO
たけ挑で時間を経過させると宝の地図が出てくるギミックってあるじゃないですか。
あのソフトは時計を内蔵してないと思うんですけども、
どういう原理なんですか?フレームを数えてるとか?

899:名前は開発中のものです。
08/04/22 23:38:51 WsGplEiB
一般的な話、水晶乗ってるんだから時間計測くらい何とでも出来るだろ


900:名前は開発中のものです。
08/04/22 23:45:00 PoL7rtGA
Vblankは1/60sに一回起こる。つまりそういうことです。

というか実際のところどうなんだろうね。
どこまで1/60sに近い数字なんだろう。

901:名前は開発中のものです。
08/04/23 00:38:27 byKYi0oI
NTSCなら60000/1001で59.94fps
だからゲーム機上の60フレームは厳密には1秒では無い

902:名前は開発中のものです。
08/04/23 09:12:26 p6pBJev8
ファミコンはNTSCじゃないから、59.94ではない。
事実、テレビにファミコン映像が少し混ざった場合、上から下へ(あるいは逆かも)流れるので、
59.94と一致はしていない。

903:名前は開発中のものです。
08/04/23 13:31:06 p6pBJev8
そう言えばエミュで、迷宮組曲の連射測定機能を測ると、理論値より少し多く出るな。 なんでだろう。

904:名前は開発中のものです。
08/04/24 22:33:31 4GaXT/pf
>>901-902
ファミコンは60.1Hzっぽいな
1/(4/21.48e6*341*262) = 60.106

以下 NTSC 2C02 technical reference から抜粋
> Other than the 3-stage Johnson counter, the 21.48 MHz signal is not used
> directly by any other PPU hardware. Instead, the signal is divided by 4 to
>get 5.37 MHz, and is used as the smallest unit of timing in the PPU.

> - 341 PPU cc's make up the time of a typical scanline (or 341/3 CPU cc's).
> - One frame consists of 262 scanlines. This equals 341*262 PPU cc's per
> frame (divide by 3 for # of CPU cc's).

その差が効いてくる場面は、ゲームで遊ぶ分にはあまりなさそうで、
実機のキャプチャとかじゃなけりゃ気にすることはないだろうが。

>>898のようなのなら、ふつーは垂直同期を数えるかな。
MSXのBASICで秒間60増えるTIME変数は便利だったのを思い出した。

905:名前は開発中のものです。
08/04/24 23:42:03 soSdpCPx
(21477270/4) / (341*262)=60.098
だろ?

906:名前は開発中のものです。
08/04/26 09:49:47 nl7Vbcs/
このスレの住人ってすげーな。

907:名前は開発中のものです。
08/04/26 14:59:29 rnaVgqqK
>>904
まあ正確な時計を作るわけでもないから
普通は60フレーム数えて1秒とすれば問題ないよなぁ

そもそもマリオなんかは秒計算じゃないし


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch