Hewは4.09.01.007で、CPUはM30264FGPGP、ツールチェインはV.6.00 Release 00です。
Hew上のリンカ設定で以下のように指定していますが、出力されたモトローラSフォーマットのファイル内容がおかしいような気がします。
-noprelink -nomessage -list="$(CONFIGDIR)\$(PROJECTNAME).map" -show=symbol -start=MRAMSECT,bss_NE,bss_NO/0500,bss_FE,bss_FO/05000,IFVECTOR,MPRGSECT,program,MONTBL,rom_FE,rom_FO/0D0000 -nologo -library="$(TCINSTALL)\lib30\nc30lib.lib" -output="$(CONFIGDIR)\$(PROJECTNAME).abs" -end -input="$(CONFIGDIR)\$(PROJECTNAME).abs" -form=stype -record=s2 -output="$(CONFIGDIR)\$(PROJECTNAME).mot"=0D0000-0F7FFF -space=FF -exit
出力された内容(抜粋)
S00E000074657374202020206D6F7461S2140D0000CD060D00D6060D00DD060D00E4060D002ES2140D0010EB060D00F2060D00F9060D0000070D00ABS2080D002024000D0099S2140D0024EB600005EB708006C7030A00C7010400E9S2140D0034B70500C70F0800C7100600B70700B70AB4
~
S2140F7FE0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8DS2140F7FF0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7DS9030000FC
S2フォーマット指定で出力しているので、最後の行はS8となるのではと思いました。
出力されたファイルが正しいのか、それともリンカ設定の漏れが原因なのかなど
詳しい方ご教授お願いします。
モトローラSの書式では7~9のレコードタイプはプログラム開始アドレスですが、マイコンのROMイメージではプログラムの開始アドレスはリセットベクタ等で指定されるので、この場合は単に終了レコードとして
S 9←レコードタイプ 03←サイズ 0000←アドレス FC←チェックサム
0番地が記録されてるのみで、気にされなくて良いと思います。