ファミコンのプログラム4at GAMEDEV
ファミコンのプログラム4 - 暇つぶし2ch305:266
14/06/12 01:31:23.63 VinxFlKC.net
>>292 >>296

1)
NMIの説明はまぁ正解。300さんの指摘の通りVBlankを割り込みと言い切るのは誤り。
NMIは割り込みの種類を示す言葉でVBlankは映像信号に関する言葉であり、そもそもカテゴリが違う。

2)
私が考えていた正解は、
PPUから出るVBlank期間を示す信号線が、CPUのNMI割り込みの入力ピンにつながっているから
300さんが「必ず訪れる」は誤りと言っているのは、VBlank期間に入ったときに
VBlank期間を示す信号線に信号を出すか出さないかをPPUで制御できるため

3)
NMIを使用するかどうかは別に問題ではない。
NMIとIRQのベクタ(割り込み時に実行されるアドレス)に0が設定されているから。
PPUなどのレジスタの設定を誤り割込みを受け付ける状態になった場合に
何が書かれているかわからない0番地をプログラムが走ることになり、
安全性を考慮しておらず、知識不足であることが読み取れるから。
割り込みを使わないのであれば、すぐに rti で戻るルーチンのアドレスをベクタに設定するべき。

Nmi:
  rti
Irq:
  rti

  .org $FFFA
  .dw Nmi
  .dw Start
  .dw Irq


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