UNIX系の環境(cygwinとかでも可)とH8用のgccが設定されていることを前提としている。
この文書は不親切で情報量が少ない。出来れば誰か書き直して〜
もし手にいれたファイルが.lzhファイルなら、展開するのは難しくないはずだ。 .tar.gzならシェルで次のように入力する。
$ tar zxvf monitor-1.2-3069.tar.gz$はシェルのプロンプトだから入力する必要はない。 うまく行けば、大量に文が出力されてmonitor-1.2-3069なるディレクトリが作られる。 中には色々なファイルがあるはずだ。大抵はテキストファイルなので、terapadとかで覗いてみるといい。
3069S.H(H8/3069用のレジスタ定義ファイル)はライセンスの関係上、ここに含めることが出来ない。 ルネサスのサイトからH8/300H用のヘッダファイルをダウンロードして、その中に含まれる3069S.Hをmonitor-1.2-3069/include/にコピーする。
このヘッダファイルはint型が16bit幅であることを仮定しているので、そのままではgccで-mint32オプション(int型を32bit幅に変更)を指定すると誤動作することがある。
各自エディタなどで"unsigned int"を"unsigned short int"に置換する必要がある。
標準関数にはint型を32bit幅と仮定している物が多いらしく、-mint32オプションをつけないと誤動作することが多いらしい。モニタや全てのサンプルプログラムでは-mint32オプションが付けられているので、この変更は必ず行なうこと。
gcc等のツール群の設定が完璧なら、モニターが展開されたディレクトリに移動してmakeすればよい。 以下のように入力する。
~$ cd monitor-1.2-3069/ (←展開したディレクトリに移動) ~/monitor-1.2-3069$ make (←コンパイル)
大量の出力が出てコンパイルが完了するはずだ。エラーが出ないようにお祈りしよう。
/usr/local/bin/h8300-hms-gcc -mh -Wall -mint32 -g -O2 -c monitor.c -o monitor.o /usr/local/bin/h8300-hms-gcc -mh -Wall -mint32 -g -O2 -c int.c -o int.o /usr/local/bin/h8300-hms-gcc -mh -Wall -mint32 -g -O2 -c sio.c -o sio.o /usr/local/bin/h8300-hms-gcc -mh -Wall -mint32 -g -O2 -c misc.c -o misc.o /usr/local/bin/h8300-hms-gcc -mh -Wall -mint32 -g -O2 -c sbrk.c -o sbrk.o /usr/local/bin/h8300-hms-gcc -mh -Wall -mint32 -g -O2 -c write.c -o write.o /usr/local/bin/h8300-hms-gcc -mh -Wall -mint32 -g -O2 -c read.c -o read.o /usr/local/bin/h8300-hms-gcc -mh -Wall -mint32 -g -O2 -c reset.c -o reset.o /usr/local/bin/h8300-hms-ld startup/romcrt0.o monitor.o int.o sio.o misc.o sbrk.o write.o read.o reset.o -Map monitor.map -Tldscript/3069.x -O2 -mh8300h -nostdlib -relax -lm -lc -lgcc -L/usr/local/lib/gcc-lib/h8300-hms/3.2.1/h8300h/int32 -L/u sr/local/h8300-hms/lib/h8300h/int32 -o monitor.coff /usr/local/bin/h8300-hms-size -Ax monitor.coff monitor.coff : section size addr .vectors 0x100 0x0 .text 0x16e00 0x100 .data 0x740 0xffef20 .bss 0x318 0xfff660 .stack 0x0 0xffff1c .monwork 0x0 0x400000 Total 0x17958 /usr/local/bin/h8300-hms-objcopy -v -O srec monitor.coff monitor.mot monitor.coff(coff-h8300) から monitor.mot(srec) へコピーします ~/monitor-1.2-3069$
といった感じだとコンパイル終了だ。(メッセージの細部は異なるかも知れない)
エラーが出たら最寄りの生き字引に相談して欲しい。(その後、この文書を改善するのを忘れないように!)
H8を買った時にマニュアルがついてきたと思う。それに従う事。 作成されたmonitor.motが書き込むべきファイルだ。
もしも付属ソフト無しのH8を購入したのなら みついわゆきおさんのページにあるOpen SH/H8 writerを使わせてもらう。