kiteasm -l life.asm lst2ram -s -f -2 life.lstメモリの初期化は以下のように $readmemh を利用する。
initial begin $readmemh( "life.ram", MEM ); end
;; ;; Life Game for LCD Monitor on SpartanIIIe board ;; .word MAIN ; ARレジスタの初期値を0にしたことにより、 .word 0 ; スタートベクタが0番地に配置された。 .word 0 ; KITE-2 の仕様に合わせ、最初の16ワードを .word 0 ; ベクタテーブルとする。 .word 0 .word 0 .word 0 .word 0 .word 0 .word 0 .word 0 .word 0 .word 0 .word 0 .word 0 .word 0 MAIN: ld16 #STACK ; sp = 0x800 スタックポインタの初期化 mv sp, acc ;; ;; Main Loop ;; NEXT1: call disp ; 生物情報の画面への表示 call wait ; 時間待ち call clear_work ; ワークエリアの初期化 call simulation ; ライフ本体 call copy_work ; ワークエリアから初期エリアへコピー jp NEXT1 disp: ... wait: ... clear_work: ... simulation: ... copy_work: ... end