gnupic(gpasm)でもいけるかも
PAアセンブラはダメだった。ずいぶん記法の違いがあり、PAアセンブラで通るように書いても課題提出はできそうにない。
なわけで、gpasmで通るように修正を試みる。
Errorは2箇所で、1箇所はなんとコメントの";"なしでコメントが書かれていた。何かの間違いか・・・ うっかり書き換えたか? ありえない。ここはコメントアウトしてクリア。
もうひとつはこんな記述。学校の掲示板で先生が通らないと指摘していたところだ。
MOVLW #(fifo_bottom - fifo_top) / 2
ここのやりたいことを通るように書き換えようと思ったが、なにやら単純な、静的に求まる演算をしているように見える。値を直接書いて逃げてもよさそうだ。とにかくこの記法について調べよう。と、MPASMのUserManualとかネットをググったりしても見つからず。単純に#とっても変わらないのでは・・・ #をとるとgpasmは通った。
ということで、ThinkPadのMPLABでテストしてみる。
top equ 0xbd bottom equ 0xde movlw bottom - top movlw #(bottom - top) movlw (bottom - top)/2 movlw #(bottom - top)/2 end
このいいかげんなソースをビルド。
MPASM 03.70 Released E.ASM 10-23-2004 14:51:04 PAGE 1 LOC OBJECT CODE LINE SOURCE TEXT VALUE 000000BD 00001 top equ 0xbd 000000DE 00002 bottom equ 0xde 00003 0000 3021 00004 movlw bottom - top 0001 3021 00005 movlw #(bottom - top) 0002 3010 00006 movlw (bottom - top)/2 0003 3010 00007 movlw #(bottom - top)/2 00008 Warning[205]: Found directive in column 1. (end) 00009 end MPASM 03.70 Released E.ASM 10-23-2004 14:51:04 PAGE 2
んー やっぱり変わらないので、これでいけそうかも。ぼちぼち出かけるので、帰宅したらROMに焼いてみよう。