orz

先週の金曜からトータル6時間ほどの補講で悩みまくってたアセンブラ
今日も午後から開始して4限も終わり、一向に進まないまま。
ルーレットで止まった場所によって得点を上下させたいんだが何度やっても1回目で変な値になって2回目以降はうんともすんとも言わない。ぱっと見プログラムには何の異常も無いように見えるが…。
とりあえず2点以上の点数の上下をしなければ仕様は満たせるのでもう諦めるかなーと思いつつ最後に先生に聞いてみた。

「このサブルーチンで得点を上下してるんですけど」
「いたって普通やな」
「なのに動かないんですよ」
「なんでや」
「謎です」
「そんでここに飛ぶわけか…ん?」
「ん?」
ここMOVWF PORTAじゃなくてMOVF PORTA,0じゃないか?

変数入れるべきところに定数入れてたよorz

結局最初に書いたプログラムを2行書き換えるだけで動いた罠。

低級言語のデバッグって難しい。