猫又です、宜しくおねがいします。
古くなってきたCA78K0RからCCRLへの移植を検討しております。その中で、セクションの割り当てがよくわからず困っております。
具体的にやりたいことは、たとえば64kBのF13マイコンを使うとしてCS+ for CCで以下のようにセクション配置をする方法をご教示いただけませんか?
CS+のリンクオプションのセクション(-STARt)を設定すると予想しているのですが、恥ずかしながらアプリケーションノート等を読んでも使い方がわかりませんでした。
ご教示何卒宜しくお願い致します。
猫又さん、こんにちは。NoMaYです。cstart.asmとstkinit.asmは以下のようにしてブートクラスタ0に配置してみました。cstart.asm
;;;;;;;;.SECTION .text, TEXT.SECTION .text_BCL0, TEXT
stkinit.asm
;;;;;;;;.textf .CSEG TEXTF.text_BCL0 .CSEG TEXT
*** Mapping…
猫又さん、こんにちは。NoMaYです。プロジェクトを1つ作ってみました。(すみません、本件に直接関係無い細かい設定は、単に私の好みです。)issue_RL78F13_64K_20230128.zipRL78F13_64K.map
Renesas Optimizing Linker (W3.05.00 ) …
猫又さん、こんにちは。NoMaYです。あと、以下のアセンブラソースは、生成されたソースを書き換えるなどして、セクション名を変える必要がありそうに思います。そうした方がブートクラスタ0に配置し易いと思うのです。(試そうとしていたところで、これからです。)cstart.asm(stkinit.asm)(hdwinit.asm)
*** Mapping List ***SECTION START END SIZE ALIGN.vect 00000000 0000007f 80 0.constf 00000080 00000080 0 2.init_array 00000080 00000080 0 2.data 00000080 00000080 0 2.sdata 00000080 00000080 0 2.option_byte 000000c0 000000c3 4 1.security_id 000000c4 000000cd a 1.RLIB 000000c4 000000c4 0 1.SLIB 000000c4 000000c4 0 1.monitor1 000000ce 000000d7 a 1.text_BCL0 000000d8 0000018b b4 1.const 00004000 00004000 0 2.text 00004000 00004089 8a 1.textf 0000408a 00004179 f0 1.monitor2 0000fe00 0000ffff 200 1.bss 000fef00 000fef09 a 2.dataR 000fef0a 000fef0a 0 2.sbss 000ffe20 000ffe20 0 2.sdataR 000ffe20 000ffe20 0 2