Ignore:
Timestamp:
Jun 10, 2015, 8:40:31 PM (9 years ago)
Author:
coas-nagasima
Message:

SHIFT_JISのコードにcharsetプロパティを付けた

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uKadecot/trunk/ssp/arch/rx630_ccrx/prc.tf

    • Property svn:mime-type changed from text/plain to text/plain; charset=SHIFT_JIS
    r101 r107  
    66$  Copyright (C) 2013      by Mitsuhiro Matsuura
    77$
    8 $  ã‹L’˜ìŒ ŽÒ‚́CˆÈ‰º‚Ì(1)`(4)‚ÌðŒ‚ð–ž‚½‚·ê‡‚ÉŒÀ‚èC–{ƒ\ƒtƒgƒEƒF
    9 $  ƒAi–{ƒ\ƒtƒgƒEƒFƒA‚ð‰ü•Ï‚µ‚½‚à‚Ì‚ðŠÜ‚ށDˆÈ‰º“¯‚¶j‚ðŽg—pE•¡»E‰ü
    10 $  •ÏEÄ”z•ziˆÈ‰ºC—˜—p‚ƌĂԁj‚·‚邱‚Ƃ𖳏ž‚Å‹–‘ø‚·‚éD
    11 $  (1) –{ƒ\ƒtƒgƒEƒFƒA‚ðƒ\[ƒXƒR[ƒh‚ÌŒ`‚Å—˜—p‚·‚éê‡‚ɂ́Cã‹L‚Ì’˜ì
    12 $      Œ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’肪C‚»‚Ì‚Ü‚Ü‚ÌŒ`‚Ń\[
    13 $      ƒXƒR[ƒh’†‚ÉŠÜ‚Ü‚ê‚Ä‚¢‚邱‚ƁD
    14 $  (2) –{ƒ\ƒtƒgƒEƒFƒA‚ðCƒ‰ƒCƒuƒ‰ƒŠŒ`Ž®‚ȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    15 $      —p‚Å‚«‚éŒ`‚ōĔz•z‚·‚éê‡‚ɂ́CÄ”z•z‚É”º‚¤ƒhƒLƒ
    16 ƒƒ“ƒgi—˜—p
    17 $      ŽÒƒ}ƒjƒ
    18 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L
    19 $      ‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    20 $  (3) –{ƒ\ƒtƒgƒEƒFƒA‚ðC‹@Ší‚É‘g‚ݍž‚ނȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    21 $      —p‚Å‚«‚È‚¢Œ`‚ōĔz•z‚·‚éê‡‚ɂ́CŽŸ‚Ì‚¢‚¸‚ê‚©‚ÌðŒ‚ð–ž‚½‚·‚±
    22 $      ‚ƁD
    23 $    (a) Ä”z•z‚É”º‚¤ƒhƒLƒ
    24 ƒƒ“ƒgi—˜—pŽÒƒ}ƒjƒ
    25 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜
    26 $        ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    27 $    (b) Ä”z•z‚ÌŒ`‘Ô‚ðC•Ê‚É’è‚ß‚é•û–@‚É‚æ‚Á‚āCTOPPERSƒvƒƒWƒFƒNƒg‚É
    28 $        •ñ‚·‚邱‚ƁD
    29 $  (4) –{ƒ\ƒtƒgƒEƒFƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚é‚¢‚©‚Ȃ鑹
    30 $      ŠQ‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð–Ɛӂ·‚邱‚ƁD
    31 $      ‚Ü‚½C–{ƒ\ƒtƒgƒEƒFƒA‚̃†[ƒU‚Ü‚½‚̓Gƒ“ƒhƒ†[ƒU‚©‚ç‚Ì‚¢‚©‚Ȃ闝
    32 $      —R‚ÉŠî‚­¿‹‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð
    33 $      –Ɛӂ·‚邱‚ƁD
    34 $
    35 $  –{ƒ\ƒtƒgƒEƒFƒA‚́C–³•ÛØ‚Å’ñ‹Ÿ‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Å‚ ‚éDã‹L’˜ìŒ ŽÒ‚¨
    36 $  ‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚́C–{ƒ\ƒtƒgƒEƒFƒA‚ÉŠÖ‚µ‚āC“Á’è‚ÌŽg—p–Ú“I
    37 $  ‚ɑ΂·‚é“K‡«‚àŠÜ‚߂āC‚¢‚©‚È‚é•ÛØ‚às‚í‚È‚¢D‚Ü‚½C–{ƒ\ƒtƒgƒEƒF
    38 $  ƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚½‚¢‚©‚Ȃ鑹ŠQ‚ÉŠÖ‚µ‚Ä‚àC‚»
    39 $  ‚̐ӔC‚𕉂í‚È‚¢D
    40 $
    41 $
    42 
    43 $
    44 $  ƒA[ƒLƒeƒNƒ`ƒƒˆË‘¶ƒeƒ“ƒvƒŒ[ƒgiRX630—pj
    45 $
    46 
    47 
    48 
    49 $
    50 $  ATT_ISR‚ÅŽg—p‚Å‚«‚銄ž‚ݔԍ†‚Æ‚»‚ê‚ɑΉž‚·‚銄ž‚݃nƒ“ƒhƒ‰”ԍ†
     8$  上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
     9$  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     10$  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     11$  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     12$      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     13$      スコード中に含まれていること.
     14$  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     15$      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     16$      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     17$      の無保証規定を掲載すること.
     18$  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     19$      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     20$      と.
     21$    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     22$        作権表示,この利用条件および下記の無保証規定を掲載すること.
     23$    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     24$        報告すること.
     25$  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     26$      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     27$      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     28$      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     29$      免責すること.
     30$
     31$  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     32$  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     33$  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     34$  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     35$  の責任を負わない.
     36$
     37$
     38
     39$
     40$  アーキテクチャ依存テンプレート(RX630用)
     41$
     42
     43
     44
     45$
     46$  ATT_ISRで使用できる割込み番号とそれに対応する割込みハンドラ番号
    5147$
    5248
     
    5652
    5753$
    58 $  DEF_INT^DEF_EXC‚ÅŽg—p‚Å‚«‚銄ž‚݃nƒ“ƒhƒ‰”ԍ†^CPU—áŠOƒnƒ“ƒhƒ‰”ԍ†
     54$  DEF_INT/DEF_EXCで使用できる割込みハンドラ番号/CPU例外ハンドラ番号
    5955$
    6056
     
    6460
    6561$
    66 $  CFG_INT‚ÅŽg—p‚Å‚«‚銄ž‚ݔԍ†‚ÆŠ„ž‚Ý—Dæ“x
     62$  CFG_INTで使用できる割込み番号と割込み優先度
    6763$
    6864
     
    7268
    7369$
    74 ƒ^[ƒQƒbƒg”ñˆË‘¶•”‚ÉŠÜ‚Ü‚ê‚é•W€‚ÌŠ„ž‚ÝŠÇ—‹@”\/—áŠOŠÇ—‹@”\‚̏‰Šú‰»ˆ—‚ðŽg—p‚·‚é
     70ターゲット非依存部に含まれる標準の割込み管理機能/例外管理機能の初期化処理を使用する
    7571$
    7672
     
    8076
    8177$
    82 ƒXƒ^ƒbƒNƒTƒCƒY‚̃`ƒFƒbƒN•û–@Žw’è
     78スタックサイズのチェック方法指定
    8379$
    8480
     
    8783
    8884$
    89 ƒ^ƒXƒNƒXƒ^ƒbƒNƒTƒCƒY‚̍ŏ¬’l
    90 $
    91 ƒ^ƒXƒN‹N“®Žž‚É4byte,
    92 Š„ž‚Ý“üŒûˆ—‚É‚Ä48byte, CPU—áŠO“üŒûˆ—‚É‚Ä84byte,
    93 ‚Å‚ ‚邽‚ß, Å¬’l‚Í88byte‚Æ‚·‚é.
     85タスクスタックサイズの最小値
     86$
     87タスク起動時に4byte,
     88割込み入口処理にて48byte, CPU例外入口処理にて84byte,
     89であるため, 最小値は88byteとする.
    9490$
    9591
     
    9894
    9995$
    100 ’萔’è‹`
     96定数定義
    10197$
    10298
     
    105101
    106102$
    107 $ ƒ^[ƒQƒbƒgˆË‘¶‚ÌŠ„ž‚Ý‘®«‚Ì’è‹`
     103$ ターゲット依存の割込み属性の定義
    108104$
    109105
     
    112108
    113109$
    114 $ ƒ^[ƒQƒbƒgˆË‘¶‚ÌŠ„ž‚݃nƒ“ƒhƒ‰‘®«‚Ì’è‹`
     110$ ターゲット依存の割込みハンドラ属性の定義
    115111$
    116112
     
    119115
    120116$
    121 $ ƒJ[ƒlƒ‹ŠÇ—ŠOŠ„ž‚݃nƒ“ƒhƒ‰‚͌Œ肳‚¹‚È‚¢‚½‚ß,
     117$ カーネル管理外割込みハンドラは固定させないため,
    122118$ INTNO_FIX_KERNEL
    123119$ INHNO_FIX_KERNEL
    124120$ INHNO_FIX_NONKERNEL
    125121$ INHNO_FIX_NONKERNEL
    126 $ ‚ð’è‹`‚µ‚È‚¢.
    127 $
    128 
    129 
    130 $
    131 •W€ƒeƒ“ƒvƒŒ[ƒgƒtƒ@ƒCƒ‹‚̃Cƒ“ƒNƒ‹[ƒh
     122$ を定義しない.
     123$
     124
     125
     126$
     127標準テンプレートファイルのインクルード
    132128$
    133129$INCLUDE "kernel.tf"$
     
    136132
    137133$
    138 $  CFG_INT‚̃^[ƒQƒbƒgˆË‘¶‚̃Gƒ‰[ƒ`ƒFƒbƒN
     134$  CFG_INTのターゲット依存のエラーチェック
    139135$
    140136
    141137$FOREACH intno INT.ORDER_LIST$
    142 $ IRQŠ„ž‚ݔԍ†‚©‚Ç‚¤‚©‚ðƒ`ƒFƒbƒN
     138$ IRQ割込み番号かどうかをチェック
    143139        $IF ( LENGTH( FIND( INTNO_INT, INT.INTNO[intno] ) ) != 0 )$
    144140
    145 $   TA_POSEDGE‚ÆTA_NEGEDGE‚ª“¯Žž‚ɐݒ肳‚ê‚Ä‚¢‚éê‡
     141$   TA_POSEDGEとTA_NEGEDGEが同時に設定されている場合
    146142                $IF ((INT.INTATR[intno] & ( TA_POSEDGE | TA_NEGEDGE )) == ( TA_POSEDGE | TA_NEGEDGE ))$
    147143                        $ERROR$ INT.TEXT_LINE[intno]:$FORMAT(_("illegal %1% `%2%\' of `%3%\' in %4%"), "intatr", INT.INTATR[intno], INT.INTNO[intno], "CFG_INT")$$END$
    148144                $END$
    149145
    150 $   TA_POSEDGE‚ÆTA_BOTHEDGE‚ª“¯Žž‚ɐݒ肳‚ê‚Ä‚¢‚éê‡
     146$   TA_POSEDGEとTA_BOTHEDGEが同時に設定されている場合
    151147                $IF ((INT.INTATR[intno] & ( TA_POSEDGE | TA_BOTHEDGE )) == ( TA_POSEDGE | TA_BOTHEDGE ))$
    152148                        $ERROR$ INT.TEXT_LINE[intno]:$FORMAT(_("illegal %1% `%2%\' of `%3%\' in %4%"), "intatr", INT.INTATR[intno], INT.INTNO[intno], "CFG_INT")$$END$
    153149                $END$
    154150
    155 $   TA_NEGEDGE‚ÆTA_BOTHEDGE‚ª“¯Žž‚ɐݒ肳‚ê‚Ä‚¢‚éê‡
     151$   TA_NEGEDGEとTA_BOTHEDGEが同時に設定されている場合
    156152                $IF ((INT.INTATR[intno] & ( TA_NEGEDGE | TA_BOTHEDGE )) == ( TA_NEGEDGE | TA_BOTHEDGE ))$
    157153                        $ERROR$ INT.TEXT_LINE[intno]:$FORMAT(_("illegal %1% `%2%\' of `%3%\' in %4%"), "intatr", INT.INTATR[intno], INT.INTNO[intno], "CFG_INT")$$END$
    158154                $END$
    159155
    160 $   TA_POSEDGE‚ÆTA_NEGEDGE‚ÆTA_BOTHEDGE‚ª“¯Žž‚ɐݒ肳‚ê‚Ä‚¢‚éê‡
     156$   TA_POSEDGEとTA_NEGEDGEとTA_BOTHEDGEが同時に設定されている場合
    161157                $IF ((INT.INTATR[intno] & ( TA_POSEDGE | TA_NEGEDGE | TA_BOTHEDGE )) == ( TA_POSEDGE | TA_NEGEDGE | TA_BOTHEDGE ))$
    162158                        $ERROR$ INT.TEXT_LINE[intno]:$FORMAT(_("illegal %1% `%2%\' of `%3%\' in %4%"), "intatr", INT.INTATR[intno], INT.INTNO[intno], "CFG_INT")$$END$
     
    165161        $ELSE$
    166162
    167 $   IRQŠ„ž‚݈ȊO‚ÌŠ„ž‚݂ɑ΂µ‚ÄŠ„ž‚Ý‘®«‚ªŽw’肳‚ê‚Ä‚¢‚éê‡
     163$   IRQ割込み以外の割込みに対して割込み属性が指定されている場合
    168164                $IF (INT.INTATR[intno] & (~( TA_ENAINT | TA_EDGE ))) != 0$
    169165                        $ERROR$ INT.TEXT_LINE[intno]: $FORMAT(_("illegal %1% `%2%\' of `%3%\' in %4%"), "intatr", INT.INTATR[intno], INT.INTNO[intno], "CFG_INT")$$END$
     
    177173
    178174$
    179 $ Š„ž‚ݔԍ†‚©‚犄ž‚Ý—Dæ“x‹y‚Ñ‘®«‚ðŽæ‚èo‚·ƒe[ƒuƒ‹
     175$ 割込み番号から割込み優先度及び属性を取り出すテーブル
    180176$
    181177
     
    185181const CFG_INT_INFO _kernel_cfg_int_table[$LENGTH(INTNO_RANGE)$] = {$NL$
    186182$FOREACH intno INTNO_RANGE$
    187 $ Š„ž‚Ý—Dæ“x‚ðŽæ“¾
     183$ 割込み優先度を取得
    188184        $IF LENGTH(INT.INTNO[intno])$
    189185                $intpri = -INT.INTPRI[intno]$
     
    194190        $END$
    195191
    196 $ ƒe[ƒuƒ‹‚Ì’†g‚ðo—Í
     192$ テーブルの中身を出力
    197193        $TAB$$FORMAT("{ %2d, %08x }, /* %02u */", intpri, intatr, +intno)$$NL$
    198194$END$
     
    201197
    202198$
    203 ƒAƒZƒ“ƒuƒ‰o—̓tƒ@ƒCƒ‹
     199アセンブラ出力ファイル
    204200$
    205201
     
    207203
    208204;$NL$
    209 ;  RX630ƒA[ƒLƒeƒNƒ`ƒƒˆË‘¶o—̓tƒ@ƒCƒ‹$NL$
    210 ;$NL$
    211 Š„ž‚݃xƒNƒ^‹y‚ÑŠ„ž‚݃nƒ“ƒhƒ‰’è‹`$NL$
     205;  RX630アーキテクチャ依存出力ファイル$NL$
     206;$NL$
     207割込みベクタ及び割込みハンドラ定義$NL$
    212208;$NL$
    213209$NL$$NL$
     
    215211
    216212$
    217 Š„ž‚Ý“üŒûˆ—
    218 $
    219 
    220 $
    221 ‹¤’ʊ֐”‚̐錾
     213割込み入口処理
     214$
     215
     216$
     217共通関数の宣言
    222218$
    223219
     
    229225
    230226$
    231 Š„ž‚݃nƒ“ƒhƒ‰‚̏o—Í
     227割込みハンドラの出力
    232228$
    233229
     
    238234                        $TAB$.glb       __kernel_$INH.INTHDR[inhno]$_$+INH.INHNO[inhno]$_entry$NL$
    239235                        __kernel_$INH.INTHDR[inhno]$_$+INH.INHNO[inhno]$_entry:$NL$
    240                         $TAB$pushm      r1-r5                                           ; ƒXƒNƒ‰ƒbƒ`ƒŒƒWƒXƒ^‚ðƒ^ƒXƒNƒXƒ^ƒbƒN‚Ö‘Þ”ð $NL$
    241                         $TAB$mov.l      #$+INH.INHNO[inhno]$, r1        ; Š„ž‚݃nƒ“ƒhƒ‰”ԍ†‚ðr1‚Ö $NL$
    242                         $TAB$mov.l      #_$INH.INTHDR[inhno]$, r2       ; ƒnƒ“ƒhƒ‰‚̃AƒhƒŒƒX‚ðr2‚Ö $NL$
    243                         $TAB$bra.a      _kernel_interrupt                       ; ‹¤’ʃ‹[ƒ`ƒ“‚Ö $NL$$NL$$NL$
    244                 $END$
    245         $END$
    246 $END$
    247 
    248 
    249 $ –¢“o˜^Š„ž‚݃nƒ“ƒhƒ‰“üŒûˆ—
     236                        $TAB$pushm      r1-r5                                           ; スクラッチレジスタをタスクスタックへ退避 $NL$
     237                        $TAB$mov.l      #$+INH.INHNO[inhno]$, r1        ; 割込みハンドラ番号をr1へ $NL$
     238                        $TAB$mov.l      #_$INH.INTHDR[inhno]$, r2       ; ハンドラのアドレスをr2へ $NL$
     239                        $TAB$bra.a      _kernel_interrupt                       ; 共通ルーチンへ $NL$$NL$$NL$
     240                $END$
     241        $END$
     242$END$
     243
     244
     245$ 未登録割込みハンドラ入口処理
    250246$TAB$.glb$TAB$__kernel_default_int_handler_entry$NL$
    251247__kernel_default_int_handler_entry:$NL$
    252 $TAB$pushm      r1-r5                                                           ; ƒXƒNƒ‰ƒbƒ`ƒŒƒWƒXƒ^‚ðƒ^ƒXƒNƒXƒ^ƒbƒN‚Ö‘Þ”ð $NL$
    253 $TAB$mov.l      #0FFFFFFFFH, r1                                         ; Š„ž‚݃nƒ“ƒhƒ‰”ԍ†‚ðr1‚Ö $NL$
    254 $TAB$mov.l      #__kernel_default_int_handler, r2       ; ƒnƒ“ƒhƒ‰‚̃AƒhƒŒƒX‚ðr2‚Ö $NL$
    255 $TAB$bra.a      _kernel_interrupt                                       ; ‹¤’ʃ‹[ƒ`ƒ“‚Ö $NL$$NL$$NL$
    256 
    257 
    258 $
    259 $  CPU—áŠOƒnƒ“ƒhƒ‰“üŒûˆ—
     248$TAB$pushm      r1-r5                                                           ; スクラッチレジスタをタスクスタックへ退避 $NL$
     249$TAB$mov.l      #0FFFFFFFFH, r1                                         ; 割込みハンドラ番号をr1へ $NL$
     250$TAB$mov.l      #__kernel_default_int_handler, r2       ; ハンドラのアドレスをr2へ $NL$
     251$TAB$bra.a      _kernel_interrupt                                       ; 共通ルーチンへ $NL$$NL$$NL$
     252
     253
     254$
     255$  CPU例外ハンドラ入口処理
    260256$
    261257
     
    267263                $TAB$.glb       __kernel_$EXC.EXCHDR[excno]$_$+EXC.EXCNO[excno]$_entry$NL$
    268264                __kernel_$EXC.EXCHDR[excno]$_$+EXC.EXCNO[excno]$_entry:$NL$
    269                 $TAB$pushm      r1-r5                                           ; ƒXƒNƒ‰ƒbƒ`ƒŒƒWƒXƒ^‚ðƒ^ƒXƒNƒXƒ^ƒbƒN‚Ö‘Þ”ð $NL$
    270                 $TAB$mov.l      #$+EXC.EXCNO[excno]$, r1        ; CPU—áŠOƒnƒ“ƒhƒ‰”ԍ†‚ðr1‚Ö $NL$
    271                 $TAB$mov.l      #_$EXC.EXCHDR[excno]$, r2       ; ƒnƒ“ƒhƒ‰‚̃AƒhƒŒƒX‚ðr2‚Ö $NL$
    272                 $TAB$bra.a      _kernel_exception                       ; ‹¤’ʃ‹[ƒ`ƒ“‚Ö $NL$$NL$$NL$
    273         $END$
    274 $END$
    275 
    276 
    277 $ –¢“o˜^CPU—áŠOƒnƒ“ƒhƒ‰“üŒûˆ—
     265                $TAB$pushm      r1-r5                                           ; スクラッチレジスタをタスクスタックへ退避 $NL$
     266                $TAB$mov.l      #$+EXC.EXCNO[excno]$, r1        ; CPU例外ハンドラ番号をr1へ $NL$
     267                $TAB$mov.l      #_$EXC.EXCHDR[excno]$, r2       ; ハンドラのアドレスをr2へ $NL$
     268                $TAB$bra.a      _kernel_exception                       ; 共通ルーチンへ $NL$$NL$$NL$
     269        $END$
     270$END$
     271
     272
     273$ 未登録CPU例外ハンドラ入口処理
    278274$TAB$.glb$TAB$__kernel_default_exc_handler_entry$NL$
    279275__kernel_default_exc_handler_entry:$NL$
    280 $TAB$pushm      r1-r5                                                           ; ƒXƒNƒ‰ƒbƒ`ƒŒƒWƒXƒ^‚ðƒ^ƒXƒNƒXƒ^ƒbƒN‚Ö‘Þ”ð $NL$
    281 $TAB$mov.l      #0FFFFFFFFH, r1                                         ; CPU—áŠOƒnƒ“ƒhƒ‰”ԍ†‚ðr1‚Ö $NL$
    282 $TAB$mov.l      #__kernel_default_exc_handler, r2       ; ƒnƒ“ƒhƒ‰‚̃AƒhƒŒƒX‚ðr2‚Ö $NL$
    283 $TAB$bra.a      _kernel_exception                                       ; ‹¤’ʃ‹[ƒ`ƒ“‚Ö $NL$$NL$$NL$
    284 
    285 
    286 $
    287 ‰Â•ÏƒxƒNƒ^ƒe[ƒuƒ‹
    288 $
    289 
    290 ;$NL$
    291 ‰Â•ÏƒxƒNƒ^ƒe[ƒuƒ‹$NL$
     276$TAB$pushm      r1-r5                                                           ; スクラッチレジスタをタスクスタックへ退避 $NL$
     277$TAB$mov.l      #0FFFFFFFFH, r1                                         ; CPU例外ハンドラ番号をr1へ $NL$
     278$TAB$mov.l      #__kernel_default_exc_handler, r2       ; ハンドラのアドレスをr2へ $NL$
     279$TAB$bra.a      _kernel_exception                                       ; 共通ルーチンへ $NL$$NL$$NL$
     280
     281
     282$
     283可変ベクタテーブル
     284$
     285
     286;$NL$
     287可変ベクタテーブル$NL$
    292288;$NL$
    293289$NL$
     
    320316
    321317$
    322 ŒÅ’èƒxƒNƒ^ƒe[ƒuƒ‹
     318固定ベクタテーブル
    323319$
    324320$FOREACH excno EXCNO_RANGE$
     
    332328$NL$
    333329;$NL$
    334 ŒÅ’èƒxƒNƒ^ƒe[ƒuƒ‹$NL$
     330固定ベクタテーブル$NL$
    335331;$NL$
    336332$NL$
     
    341337
    342338$TAB$ .offset$TAB$ 020H$NL$
    343 $TAB$ .lword$TAB$ 00000000 $TAB$ ; §ŒäƒR[ƒh, IDƒR[ƒh1 - 3$NL$
    344 $TAB$ .lword$TAB$ 00000000 $TAB$ ; IDƒR[ƒh4 - 7$NL$
    345 $TAB$ .lword$TAB$ 00000000 $TAB$ ; IDƒR[ƒh8 - 11$NL$
    346 $TAB$ .lword$TAB$ 00000000 $TAB$ ; IDƒR[ƒh12 - 15$NL$$NL$
     339$TAB$ .lword$TAB$ 00000000 $TAB$ ; 制御コード, IDコード1 - 3$NL$
     340$TAB$ .lword$TAB$ 00000000 $TAB$ ; IDコード4 - 7$NL$
     341$TAB$ .lword$TAB$ 00000000 $TAB$ ; IDコード8 - 11$NL$
     342$TAB$ .lword$TAB$ 00000000 $TAB$ ; IDコード12 - 15$NL$$NL$
    347343
    348344$TAB$ .offset$TAB$ 050H$NL$
    349 $TAB$ .lword$TAB$ _$EXCHDR[20]$ $TAB$ $TAB$ ;$SPC$ 20:“ÁŒ –½—ß—áŠO $SPC$$NL$
     345$TAB$ .lword$TAB$ _$EXCHDR[20]$ $TAB$ $TAB$ ;$SPC$ 20:特権命令例外 $SPC$$NL$
    350346$TAB$ .offset$TAB$ 05CH$NL$
    351 $TAB$ .lword$TAB$ _$EXCHDR[23]$ $TAB$ $TAB$ ;$SPC$ 23:–¢’è‹`–½—ß—áŠO $SPC$$NL$
     347$TAB$ .lword$TAB$ _$EXCHDR[23]$ $TAB$ $TAB$ ;$SPC$ 23:未定義命令例外 $SPC$$NL$
    352348$TAB$ .offset$TAB$ 064H$NL$
    353 $TAB$ .lword$TAB$ _$EXCHDR[25]$ $TAB$ $TAB$ ;$SPC$ 25:•‚“®¬”“_—áŠO $SPC$$NL$
     349$TAB$ .lword$TAB$ _$EXCHDR[25]$ $TAB$ $TAB$ ;$SPC$ 25:浮動小数点例外 $SPC$$NL$
    354350$TAB$ .offset$TAB$ 078H$NL$
    355 $TAB$ .lword$TAB$ _$EXCHDR[30]$ $TAB$ $TAB$ ;$SPC$ 30:ƒmƒ“ƒ}ƒXƒJƒuƒ‹—áŠO $SPC$$NL$
    356 $TAB$ .lword$TAB$ _start $TAB$ $TAB$ $TAB$ $TAB$ ;$SPC$ 31:ƒŠƒZƒbƒg $SPC$$NL$
     351$TAB$ .lword$TAB$ _$EXCHDR[30]$ $TAB$ $TAB$ ;$SPC$ 30:ノンマスカブル例外 $SPC$$NL$
     352$TAB$ .lword$TAB$ _start $TAB$ $TAB$ $TAB$ $TAB$ ;$SPC$ 31:リセット $SPC$$NL$
    357353
    358354$NL$ $NL$
Note: See TracChangeset for help on using the changeset viewer.