ウォッチドッグ。

PIC不安定の原因が分かった。デフォルトでウォッチドッグタイマーがenableになっているからだった。
なんらかの割り込みが原因なんだろうなあと思って、バイナリを逆アセンブルしたり、アセンブラでコードを書き直したりしたけど、あっさりした理由だった。

ところで、アセンブラで書くときはCALLやGOTOを多用するよりメモリの許す限りループを展開したほうが高速になるんですな。と今更ながら思った。学生のときもチューンしまくったコードを書いていた訳じゃないしなー。