昨日電源スイッチ交換したら、電源周りはOKになったのに、動作させるとなぜか挙動がおかしい(T_T) 中のプログラムは変更してないんで、以前と同じ動作をするはずなんだけどねえ。そいや、お客が「たまに途中で止まるんだけど」って言ってたやつか? 今まで気づかんかったorz
しょうがないので、解析中のデータをメモリに展開するようにしてみたら、思いっきり不正なデータを展開してやがりました(T_T) そら、途中で止まるわなって感じ。
でも、半日ソースを眺めてたけどおかしいところはないし、同僚解説デバッグ(^_^;)っていう手法を使ったのに解決できず。そのままじっくりソース眺めてもらったけど、やっぱりダメ。
どう考えてもCコンパイラが腐ってるとしか思えん。てか、それに決めた。でも、いまさらそんなこと判明しても困るんだけどな。CPU替えて設計しなおすのはめんどくさいし、ほかにCコンパイラは持ってないし。
てことで、いろいろ考えた結果、その部分だけアセンブラで記述して回避するのが一番早かろうって結論に達したんだけど、要するに、ハンドアセンブルならぬハンドコンパイルってことやね。
ちなみにCPUはZ80だったりするんだけど、ニーモニックは思い出せても、フラグの動作は思い出せないね。がんばって思い出すと、脳年齢若くなるかしらん(^_^;)
しかし、いまどきこんな仕事やる人居るんだろうか。原始的だなぁ・・・。
私はデバッガーですか?
えー、違うんですか?(^_^;)
Z80っていつの時代のCPUでござりますかな?
調べてみたら、1976年発表だって。長生きだねえ。
むぅ。ほぼ私たちと同じ年代ですな