(toppers-users 3265) Re: 「RSK-M16C-62P(ルネサステクノロジ)簡易パッケージ」のポーティング
高橋和浩@nifty
takahashi_kazuhiro @ nifty.com
2010年 10月 15日 (金) 20:09:52 JST
今晩は、アライブビジョンソフトウエアの高橋と申します。
以前、M16C/aspの簡易パッケージでビルドした環境があったので確認していました。
自分も、小田様とたぶん同じ値になっているかと思います。
具体的には以下の通りです。
----------------------
offset.inc
TCB_tstat .equ 20
TCB_pc .equ 16
TCB_sp .equ 14
TCB_enatex .equ 21
TCB_enatex_bit .equ 2
TCB_enatex_mask .equ 4H
TCB_texptn .equ 10
-----------------------
これでたぶん正解だと思っています。
NC30の標準のポインタはnearになり、
TCBのメンバのうち
const TINIB *p_tinib;
はconst宣言のためfarで他はnearポインタですね。
さらに
target_stddef.hにて
#pragma STRUCT task_control_block arrange
と宣言してメンバーの順番が変えられる指定になっています。
またコンパイルオプションについても、元からあるHEWのワークスペースファイルそのままで
特にコンパイルオプションを強制farなどのオプションは設定されていませんので
それでいいはずです。
ですので、上記のような順番とサイズになるようです。
makeoffset.cのコメントに20とか24とかありますが依存部でない部分のコメントでもあり、あくまで参考では
ないでしょうか。
On Fri, 15 Oct 2010 09:39:08 +0900
小田 純之 <oda-yoshiyuki @ jvc-victor.jp> wrote:
> 小田と申します。
>
> offset.incについて質問させてください。
>
> 現在「RSK-M16C-62P(ルネサステクノロジ)簡易パッケージ」から
> RENESAS製 M16C65マイコンへのポーティングを行っています。
>
> offset.incの作成を、HEWの環境でmakeoffset.c内の説明を元に行い
> ました。
> それを元にsample1プロジェクトをビルドし実行すると、TCBの要素へ
> 正しく参照できません。
> offset.incでは「TCB_sp:20」「TCB_pc:24」となっていますが、
> sample1でTCB内の配置を確認するとは「sp:14」「pc:16」となってい
> ました。
>
> 簡易パッケージ内のtask.hのTCBやTINIBの内容をいじらなくても
> 、makeoffset.cの内容を自分で設定する必要があるのでしょうか?
>
> 以上です。
> 宜しくお願い致します。
>
> =========================================
> ビクターテクノブレーン株式会社
> システムG システム1チーム(兼 開発G 開発3チーム)
> 小田純之
> E-mail : oda-yoshiyuki @ jvc-victor.jp
> =========================================
>
---
アライブビジョンソフトウエア株式会社
高橋和浩
673-0005兵庫県明石市小久保2-2-7幹線ビル4F
Email:takahashi_kazuhiro @ nifty.com
http://homepage3.nifty.com/ALVS/
TEL:078-922-2177