ドラクエ風RPGファミコンプログラム講座

NES アセンブラ入門編】

【 16bitの変数】

ファミコン(6502)は、扱えるDATAが8ビット(1byte)長なので16ビットを

 超えるDATAは、8ビットずつ数回にわけて処理する必要があります。

『 メインカウンターの設置』

*ゲームプログラムには欠かせないメインカウンター(CT)を設置します。

  ZEROPAGEに 変数 CTを宣言します。  CT  = $10

 TEST用プログラムの無限ループの中に inc CT を追加します。

 これを 2byte を連動させるには、繰り上がりが発生したときに上位BYTEに加算

 します。

loop000:

   inc CT

   jmp loop000

inc は、オペランド+1する命令。

inc CT

bne loop000

inc CT+1

jmp loop000

*上記は、キャリー判定ではなく CT が0になったかを見ています。

 bne は、ゼロ出ない時 loop000 にjmpします。 

 

 

 

 

f:id:chien1956:20200220202414p:plain