source: asp3_gr_sakura/trunk/kernel/overrun.trb@ 318

Last change on this file since 318 was 318, checked in by coas-nagasima, 7 years ago

プロパティの文字コードにUTF-8を追加、キーワードを削除

  • Property svn:eol-style set to native
  • Property svn:mime-type set to text/x-ruby; charset=UTF-8
File size: 3.9 KB
Line 
1# -*- coding: utf-8 -*-
2#
3# TOPPERS/ASP Kernel
4# Toyohashi Open Platform for Embedded Real-Time Systems/
5# Advanced Standard Profile Kernel
6#
7# Copyright (C) 2015 by FUJI SOFT INCORPORATED, JAPAN
8# Copyright (C) 2015,2016 by Embedded and Real-Time Systems Laboratory
9# Graduate School of Information Science, Nagoya Univ., JAPAN
10#
11# 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
12# ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
13# 変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
14# (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
15# 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
16# スコード中に含まれていること.
17# (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
18# 用できる形で再配布する場合には,再配布に伴うドキュメント(利用
19# 者マニュアルなど)に,上記の著作権表示,この利用条件および下記
20# の無保証規定を掲載すること.
21# (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
22# 用できない形で再配布する場合には,次のいずれかの条件を満たすこ
23# と.
24# (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
25# 作権表示,この利用条件および下記の無保証規定を掲載すること.
26# (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
27# 報告すること.
28# (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
29# 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
30# また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
31# 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
32# 免責すること.
33#
34# 本ソフトウェアは,無保証で提供されているものである.上記著作権者お
35# よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
36# に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
37# アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
38# の責任を負わない.
39#
40# $Id$
41#
42
43#
44# オーバランハンドラ機能の生成スクリプト
45#
46
47#
48# オーバランハンドラがサポートされていない場合のエラーチェック
49#
50if !$TOPPERS_SUPPORT_OVRHDR
51 if $cfgData.has_key?(:DEF_OVR)
52 error("E_NOSPT: DEF_OVR is not supported on this target")
53 end
54end
55
56#
57# オーバランハンドラ機能に関する情報の生成
58#
59$kernelCfgC.comment_header("Overrun Handler Functions")
60
61if $cfgData[:DEF_OVR].size() > 0
62 # 静的API「DEF_OVR」が複数ある(E_OBJ)[NGKI2619]
63 if $cfgData[:DEF_OVR].size() > 1
64 error("E_OBJ: too many DEF_OVR")
65 end
66
67 params = $cfgData[:DEF_OVR][1]
68
69 # ovratrが無効の場合(E_RSATR)[NGKI2612]
70 #(TA_NULLでない場合)
71 if params[:ovratr] != $TA_NULL
72 error_illegal("E_RSATR", params, :ovratr)
73 end
74
75 # オーバランハンドラ初期化ブロックの生成
76 $kernelCfgC.add("const OVRINIB _kernel_ovrinib[1] = {")
77 $kernelCfgC.add("\t{ (#{params[:ovratr]}), (OVRHDR)(#{params[:ovrhdr]}) }")
78 $kernelCfgC.add2("};")
79
80 # オーバランハンドラ機能初期化関数の追加
81 $initializeFunctions.push("_kernel_initialize_overrun();")
82else
83 $kernelCfgC.add2("TOPPERS_EMPTY_LABEL(const OVRINIB, _kernel_ovrinib);")
84end
Note: See TracBrowser for help on using the repository browser.