マイペースなプログラミング日記

DTMやプログラミングにお熱なd-kamiがマイペースに書くブログ

やっぱりわからねー2

currentTask = (currentTask + 1) % taskCount;
stack[10] = taskData[currentTask].eip;

で、毎回元の位置に戻ってしまうタスク切り替えができるようになった。しかし、

taskData[currentTask].eip = stack[10];
currentTask = (currentTask + 1) % taskCount;
stack[10] = taskData[currentTask].eip;

のように割り込み時のEIPを保存しておくと何故かアボートしてしまう。stack[10]の値が怪しいのか?