18年くらい前の製品にM16C/62Aを使用した製品があり、今回ファームを触ることになりました。
当時はTMという三菱製統合開発環境を使用していてその環境(パソコン)がないので新たにWinXPにTMの試用版を入れてとりあえずコンパイルしてみました。
すると外部参照してる関数のサブルーチン分岐の飛び先が見つからないようなエラーが発生しています。
ソース
;=======================================; Initialize standard I/O;--------------------------------------------------------------------- .GLB _init .CALL _init,G JSR.A _init
コメントからstdio.hを初期化?するためのサブルーチンなのですが、いくつかのソースファイルを探しても見つかりません。
どなたかわかる方おられないでしょうか?ご教授ください。
M16C のことはなんもわからんのですが、適当にぐぐると見つかる FAQ に 『FAQ 104333 : デバッグ作業中に「Communication Timeout Error」が表示され、デバッグが中断してしまいます。』 ja-support.renesas.com/.../17796389 > なお、CコンパイラM3T-NC30WAのサンプルスタートアッププログラム > (ncrt0.a30)では、 標準入出力関数(init関数)を使用する設定になっています。 > これが設定されている場合、UART1が初期化されます。 > > 以下の方法で、標準関数入出力初期化処理を無効にしてください。(略) とか書いてあるので init() がプロジェクトに存在しない → UART1 を標準入出力に使っていない → FAQ の説明に従い無効化すればおk ということではないかと思います。