--- /dev/null
+
+ ¡á TOPPERS/JSP¥«¡¼¥Í¥ë ¥æ¡¼¥¶¥º¥Þ¥Ë¥å¥¢¥ë ¡á
+ ¡ÊSH3/SH4 ¥¿¡¼¥²¥Ã¥È°Í¸Éô¡Ë
+
+ ¡ÊRelease 1.4.2Âбþ¡¤ºÇ½ª¹¹¿·: 11-Jul-2005¡Ë
+
+------------------------------------------------------------------------
+ TOPPERS/JSP Kernel
+ Toyohashi Open Platform for Embedded Real-Time Systems/
+ Just Standard Profile Kernel
+
+ Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory
+ Toyohashi Univ. of Technology, JAPAN
+
+ ¾åµÃøºî¸¢¼Ô¤Ï¡¤°Ê²¼¤Î (1)¡Á(4) ¤Î¾ò·ï¤«¡¤Free Software Foundation
+ ¤Ë¤è¤Ã¤Æ¸øɽ¤µ¤ì¤Æ¤¤¤ë GNU General Public License ¤Î Version 2 ¤Ëµ
+ ½Ò¤µ¤ì¤Æ¤¤¤ë¾ò·ï¤òËþ¤¿¤¹¾ì¹ç¤Ë¸Â¤ê¡¤ËÜ¥½¥Õ¥È¥¦¥§¥¢¡ÊËÜ¥½¥Õ¥È¥¦¥§¥¢
+ ¤ò²þÊѤ·¤¿¤â¤Î¤ò´Þ¤à¡¥°Ê²¼Æ±¤¸¡Ë¤ò»ÈÍÑ¡¦Ê£À½¡¦²þÊÑ¡¦ºÆÇÛÉۡʰʲ¼¡¤
+ ÍøÍѤȸƤ֡ˤ¹¤ë¤³¤È¤ò̵½þ¤ÇµöÂú¤¹¤ë¡¥
+ (1) ËÜ¥½¥Õ¥È¥¦¥§¥¢¤ò¥½¡¼¥¹¥³¡¼¥É¤Î·Á¤ÇÍøÍѤ¹¤ë¾ì¹ç¤Ë¤Ï¡¤¾åµ¤ÎÃøºî
+ ¸¢É½¼¨¡¤¤³¤ÎÍøÍѾò·ï¤ª¤è¤Ó²¼µ¤Î̵Êݾڵ¬Ä꤬¡¤¤½¤Î¤Þ¤Þ¤Î·Á¤Ç¥½¡¼
+ ¥¹¥³¡¼¥ÉÃæ¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¤³¤È¡¥
+ (2) ËÜ¥½¥Õ¥È¥¦¥§¥¢¤ò¡¤¥é¥¤¥Ö¥é¥ê·Á¼°¤Ê¤É¡¤Â¾¤Î¥½¥Õ¥È¥¦¥§¥¢³«È¯¤Ë»È
+ ÍѤǤ¤ë·Á¤ÇºÆÇÛÉÛ¤¹¤ë¾ì¹ç¤Ë¤Ï¡¤ºÆÇÛÉÛ¤Ëȼ¤¦¥É¥¥å¥á¥ó¥È¡ÊÍøÍÑ
+ ¼Ô¥Þ¥Ë¥å¥¢¥ë¤Ê¤É¡Ë¤Ë¡¤¾åµ¤ÎÃøºî¸¢É½¼¨¡¤¤³¤ÎÍøÍѾò·ï¤ª¤è¤Ó²¼µ
+ ¤Î̵Êݾڵ¬Äê¤ò·ÇºÜ¤¹¤ë¤³¤È¡¥
+ (3) ËÜ¥½¥Õ¥È¥¦¥§¥¢¤ò¡¤µ¡´ï¤ËÁȤ߹þ¤à¤Ê¤É¡¤Â¾¤Î¥½¥Õ¥È¥¦¥§¥¢³«È¯¤Ë»È
+ ÍѤǤ¤Ê¤¤·Á¤ÇºÆÇÛÉÛ¤¹¤ë¾ì¹ç¤Ë¤Ï¡¤¼¡¤Î¤¤¤º¤ì¤«¤Î¾ò·ï¤òËþ¤¿¤¹¤³
+ ¤È¡¥
+ (a) ºÆÇÛÉÛ¤Ëȼ¤¦¥É¥¥å¥á¥ó¥È¡ÊÍøÍѼԥޥ˥奢¥ë¤Ê¤É¡Ë¤Ë¡¤¾åµ¤ÎÃø
+ ºî¸¢É½¼¨¡¤¤³¤ÎÍøÍѾò·ï¤ª¤è¤Ó²¼µ¤Î̵Êݾڵ¬Äê¤ò·ÇºÜ¤¹¤ë¤³¤È¡¥
+ (b) ºÆÇÛÉۤηÁÂÖ¤ò¡¤Ê̤ËÄê¤á¤ëÊýË¡¤Ë¤è¤Ã¤Æ¡¤TOPPERS¥×¥í¥¸¥§¥¯¥È¤Ë
+ Êó¹ð¤¹¤ë¤³¤È¡¥
+ (4) ËÜ¥½¥Õ¥È¥¦¥§¥¢¤ÎÍøÍѤˤè¤êľÀÜŪ¤Þ¤¿¤Ï´ÖÀÜŪ¤ËÀ¸¤¸¤ë¤¤¤«¤Ê¤ë»
+ ³²¤«¤é¤â¡¤¾åµÃøºî¸¢¼Ô¤ª¤è¤ÓTOPPERS¥×¥í¥¸¥§¥¯¥È¤òÌÈÀÕ¤¹¤ë¤³¤È¡¥
+
+ ËÜ¥½¥Õ¥È¥¦¥§¥¢¤Ï¡¤ÌµÊݾڤÇÄ󶡤µ¤ì¤Æ¤¤¤ë¤â¤Î¤Ç¤¢¤ë¡¥¾åµÃøºî¸¢¼Ô¤ª
+ ¤è¤ÓTOPPERS¥×¥í¥¸¥§¥¯¥È¤Ï¡¤ËÜ¥½¥Õ¥È¥¦¥§¥¢¤Ë´Ø¤·¤Æ¡¤¤½¤ÎŬÍѲÄǽÀ¤â
+ ´Þ¤á¤Æ¡¤¤¤¤«¤Ê¤ëÊݾڤâ¹Ô¤ï¤Ê¤¤¡¥¤Þ¤¿¡¤ËÜ¥½¥Õ¥È¥¦¥§¥¢¤ÎÍøÍѤˤè¤êľ
+ ÀÜŪ¤Þ¤¿¤Ï´ÖÀÜŪ¤ËÀ¸¤¸¤¿¤¤¤«¤Ê¤ë»³²¤Ë´Ø¤·¤Æ¤â¡¤¤½¤ÎÀÕǤ¤òÉé¤ï¤Ê¤¤¡¥
+
+ @(#) $Id: sh3.txt,v 1.36 2005/09/26 06:26:36 honda Exp $
+------------------------------------------------------------------------
+
+£±¡¥SH3/SH4 ¥¿¡¼¥²¥Ã¥È°Í¸Éô¤Î³µÍ×
+
+
+1.1 ¥¿¡¼¥²¥Ã¥È¥·¥¹¥Æ¥à¤È³«È¯´Ä¶
+
+SH3/SH4 ¥×¥í¥»¥Ã¥µ¤Î¥¿¡¼¥²¥Ã¥È¥·¥¹¥Æ¥à¤È¤·¤Æ¤Ï¡¤SH7709A¡¤SH7729R¡¤
+SH7727¡¤SH7750¤òÅëºÜ¤·¤¿°Ê²¼¤Î¥Ü¡¼¥É¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¡¥¤Ê¤ª¡¤SH3-DSP
+¤Î DSP µ¡Ç½¡¤SH4 ¤Î FPU ¤Ï¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¤¤¡¥¡Ê¥Ç¥£¥¹¥Ñ¥Ã¥Á»þµÚ¤Ó³ä¹þ
+¤ß¤ÎÆþ¤ê¸ý¤Ç´ØÏ¢¤¹¤ë¥ì¥¸¥¹¥¿¤òÊݸ¤·¤Æ¤¤¤Ê¤¤¡Ë
+
+¡¦(³ô)ÆüΩĶLSI¥·¥¹¥Æ¥à¥ºÀ½¤Î MS7709ASE01 ¥Ü¡¼¥É (CPU: SH7709A)
+¡¦(³ô)ÆüΩĶLSI¥·¥¹¥Æ¥à¥ºÀ½¤Î MS7729RSE01 ¥Ü¡¼¥É (CPU: SH7729R)
+¡¦(³ô)ÆüΩĶLSI¥·¥¹¥Æ¥à¥ºÀ½¤Î MS7750SE01 ¥Ü¡¼¥É (CPU: SH7750)
+¡¦(³ô)ÆüΩĶLSI¥·¥¹¥Æ¥à¥ºÀ½¤Î MS7727CP01 ¥Ü¡¼¥É (CPU: SH7727)
+
+¤Ê¤ª¡¤MS7709ASE01¡¤MS7729RSE01¡¤MS7750SE01¤Ï¡¤¥Ï¡¼¥É¥¦¥§¥¢¹½À®¤¬»÷Ä̤Ã
+¤Æ¤¤¤ë¤¿¤á¡¤ solution_engine ¤È¤¤¤¦Ì¾Á°¤Î¥·¥¹¥Æ¥à°Í¸Éô¤È¤·¤Æ¤Þ¤È¤á¤Æ
+¤¤¤ë¡¥ÀÚ¤êÂؤ¨¤Ï¡¤¥·¥¹¥Æ¥à°Í¸Éô¤Î Makefile.clonfig ¤Ç»ØÄꤹ¤ë¡¥°Ê²¼¡¤
+¤³¤ì¤é3¼ïÎà¤Î¥Ü¡¼¥É¤òÆä˶èÊ̤·¤Ê¤¤¾ì¹ç¤Ï¡¤Solution Engine ¤Èɽµ¤¹¤ë¡¥
+
+³«È¯´Ä¶¤Ë¤Ï¡¤GCC ¤Ê¤É¤Î GNU³«È¯´Ä¶¤òÍѤ¤¡¤¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¥Õ¥©¡¼
+¥Þ¥Ã¥È¤Ï ELF ¤òɸ½à¤È¤¹¤ë¡¥
+
+Solution Engine ¤Ç¤Ï¼Â¹Ô´Ä¶¤È¤·¤Æ¡¤GDB¥¹¥¿¥Ö¤òÍѤ¤¤ëÊýË¡¤È JTAG-ICE
+¤òÍѤ¤¤ëÊýË¡¤ò¥µ¥Ý¡¼¥È¤¹¤ë¡¥GDB¥¹¥¿¥Ö¤Ï Toppers ¥×¥í¥¸¥§¥¯¥È¤Î¥Û¡¼¥à¥Ú¡¼
+¥¸¤«¤é¥À¥¦¥ó¥í¡¼¥É²Äǽ¤Ç¤¢¤ë¡¥JTAG-ICE¤È¤·¤Æ¤Ï¡¤µþÅÔ¥Þ¥¤¥¯¥í¥³¥ó¥Ô¥å¡¼
+¥¿À½¤ÎPARTNER-J¤Ç¤ÎÆ°ºî¤ò³Îǧ¤·¤Æ¤¤¤ë¡¥GDB¥¹¥¿¥Ö¤òÍѤ¤¤ë¾ì¹ç¤Ë¤Ï¡¤
+Makefile Ãæ¤Ç¡¤DBGENV ¤Ë GDB_STUB ¤òÀßÄꤹ¤ë¡Ê¥Ç¥Õ¥©¥ë¥È¡Ë¡¥PARTNER-J
+¤òÍѤ¤¤ë¾ì¹ç¤Ë¤Ï¡¤DBGENV¤Ë PARTNER_J ¤òÀßÄꤹ¤ë¡¥
+
+MS7727CP01 ¤Ç¤Ï¡¤T-Monitor ¤òÍѤ¤¤ëÊýË¡¤ÈJTAG-ICE¤òÍѤ¤¤ëÊýË¡¤ò¥µ¥Ý¡¼¥È
+¤¹¤ë¡¥¤Ê¤ª¡¤T-Monitor ¤ò»È¤Ã¤Æ¥Ç¥Ð¥Ã¥°¤¹¤ë¤³¤È¤ÏÉÔ²Äǽ¤Ç¤¢¤ê¡¤Ã±¤Ê¤ë¥í¡¼
+¥À¡¼¤È¤·¤ÆÍѤ¤¤ë¡¥¶ñÂÎŪ¤Ë¤Ï¡¤¥«¡¼¥Í¥ë¤òS¥ì¥³¡¼¥É¤ËÊÑ´¹¤·¡¤T-Monitor
+¤Ç¥À¥¦¥ó¥í¡¼¥É¤·¤Æ¼Â¹Ô¤¹¤ë¡¥¥«¡¼¥Í¥ë½ªÎ»»þ¤Ï¡¤¥×¥í¥»¥Ã¥µ¤ò¥ê¥»¥Ã¥È¤¹¤ë¡¥
+
+
+1.2 ¥µ¥Ý¡¼¥È¤¹¤ëµ¡Ç½¤Î³µÍ×
+
+SH3 °Í¸¤Îµ¡Ç½¤È¤·¤Æ¡¤³ä¹þ¤ß¥Þ¥¹¥¯¤ÎÊѹ¹¡¦»²¾È(chg_ixx¡¤get_ixx)¤È¡¤À
+ǽɾ²ÁÍÑ¥·¥¹¥Æ¥à»þ¹ï»²¾Èµ¡Ç½(vxget_tim)¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¡¥³ä¹þ¤ß¤Î¶Ø
+»ß¤Èµö²Ä(dis_int¡¤ena_int)¤Ï¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¤¤¡¥
+
+
+1.3 ¾¤Î¥¿¡¼¥²¥Ã¥È¤Ø¤Î¥Ý¡¼¥Æ¥£¥ó¥°
+
+¸½¥Ð¡¼¥¸¥ç¥ó¤Ç¤Ï¡¤SH7708 ¤òÍѤ¤¤¿¥·¥¹¥Æ¥à°Í¸Éô¤Ï¸ºß¤·¤Ê¤¤¡¥¤·¤«¤·¤Ê
+¤¬¤é¡¤¥×¥í¥»¥Ã¥µ°Í¸Éô¤Î¥³¡¼¥É¼«ÂÎ¤Ï SH7708 ¤ò¥µ¥Ý¡¼¥È¤¹¤ë¡¥¤½¤Î¤¿¤á¡¤
+SH7708¤ò¥µ¥Ý¡¼¥È¤¹¤ë¥·¥¹¥Æ¥à°Í¸Éô¤òºîÀ®¤¹¤ë¤³¤È¤ÏÍưפǤ¢¤ë¡¥¤½¤Î¾ì¹ç
+¤Ë¤Ï¡¤¥³¥ó¥Ñ¥¤¥ë¥ª¥×¥·¥ç¥ó¤â¤·¤¯¤Ï sys_defs.h ¤Ç SH7708 ¤òÄêµÁ¤¹¤ì¤Ð¤è
+¤¤¡¥
+
+
+1.4 ¥·¥ê¥¢¥ë¥Ý¡¼¥È
+
+¥«¡¼¥Í¥ë¤Î¥í¥°½ÐÎÏÍѤȤ·¤Æ¡¤Solution Engine ¤Ç¤Ï¥¹¡¼¥Ñ¡¼I/OÆâ¢
+SCI(CN3)¤ò 19200bps ¤Ç»ÈÍѤ¹¤ë¡¥MS7727CP01 ¤Ç¤Ï¡¤CPU¥Ü¡¼¥É¾å¤Î¥·¥ê¥¢¥ë
+¥¤¥ó¥¿¥Õ¥§¡¼¥¹¥³¥Í¥¯¥¿¤ò 115200bps ¤Ç»ÈÍѤ¹¤ë¡¥¤Ê¤ª¡¤Á´¤Æ¤Î¥Ý¡¼¥È¤Ë¤ª
+¤¤¤Æ ¥Ç¡¼¥¿: 8bit,Parity:none,Stop:1bit¤Ç¤¢¤ë¡¥
+
+
+1.5 ¥¨¥ó¥Ç¥£¥¢¥ó
+
+³Æ¥¿¡¼¥²¥Ã¥È¤Ï¥Ç¥£¥Ã¥×¥¹¥¤¥Ã¥Á¤Ë¤è¤ê¥¨¥ó¥Ç¥£¥¢¥ó¤òÊѹ¹¤¹¤ë¤³¤È¤¬²Äǽ¤Ç
+¤¢¤ë¡¥¤³¤ì¤Ë¹ç¤ï¤»¤Æ¡¤¥«¡¼¥Í¥ë¤Î¥¨¥ó¥Ç¥£¥¢¥ó¤ÎÀßÄê¤Ï³Æ¥·¥¹¥Æ¥à°Í¸Éô¤Ç
+Êѹ¹²Äǽ¤Ç¤¢¤ë¡¥¥¨¥ó¥Ç¥£¥¢¥ó¤Ï°Ê²¼¤Î¸Ä½ê¤ÇÀßÄꤹ¤ë¡¥
+
+ ¡¦¥·¥¹¥Æ¥à°Í¸Éô¤Î Makefile.config
+ ¥³¥ó¥Ñ¥¤¥ë¥ª¥×¥·¥ç¥ó -ml or -mb
+ ¥ê¥ó¥«¥ª¥×¥·¥ç¥ó -ml or -mb
+ ¥ê¥ó¥«¥¹¥¯¥ê¥×¥È shlelf.ld or shelf.ld
+
+ ¡¦¥·¥¹¥Æ¥àÄêµÁ
+ SIL_ENDIAN SIL_ENDIAN_LITTLE or SIL_ENDIAN_BIG
+
+
+£²¡¥SH3 ¥×¥í¥»¥Ã¥µ°Í¸Éô¤Îµ¡Ç½
+
+¤³¤ÎÀá¤Ç¤Ï¡¤¥«¡¼¥Í¥ë¤ª¤è¤Ó¥·¥¹¥Æ¥à¥µ¡¼¥Ó¥¹¤Îµ¡Ç½¤ÎÃæ¤Ç¡¤SH3°Í¸¤ÎÉôʬ
+¤Ë¤Ä¤¤¤Æ²òÀ⤹¤ë¡¥
+
+
+2.1 ¥Ç¡¼¥¿·¿
+
+int·¿¤ª¤è¤Ó unsigned int·¿¤Î¥µ¥¤¥º¤Ï 32¥Ó¥Ã¥È¤Ç¤¢¤ë¡¥
+
+
+2.2 ³ä¹þ¤ß´ÉÍýµ¡Ç½¤È³ä¹þ¤ß¥Ï¥ó¥É¥é
+
+¥«¡¼¥Í¥ë´ÉÍý³°¤Î³ä¹þ¤ß¤È¤·¤Æ¤Ï¡¤ NMI ¤¬¤¢¤ë¡¥¤è¤Ã¤Æ¡¤CPU¥í¥Ã¥¯¾õÂÖ¤ä½é
+´ü²½¥ë¡¼¥Á¥óÆâ¤Ç¤Ï¡¤NMI °Ê³°¤Î³ä¹þ¤ß¤Ï¤¹¤Ù¤Æ¶Ø»ß¤µ¤ì¤Æ¤¤¤ë¡¥¶ñÂÎŪ¤Ë¤Ï¡¤
+IPM(Interrupt Priority Mask)¤¬ 15 ¤ËÀßÄꤵ¤ì¤ë¡¥¤·¤«¤·¤Ê¤¬¤é¡¤¥Ü¡¼¥É¾å
+¤Ë NMI ÆþÎϤò»ý¤¿¤Ê¤¤¥¿¡¼¥²¥Ã¥È¤Î¤¿¤á¡¤GDB¥¹¥¿¥Ö¤¬¥Û¥¹¥È¤Î¥Þ¥·¥ó¤ÈÄÌ¿®
+¤¹¤ë¤¿¤á¤Î¥·¥ê¥¢¥ë¥Ý¡¼¥È¤ÎÍ¥ÀèÅÙ¤ò 15 ¤ÇÅÐÏ¿¤·¡¤GDB ¤Ç Ctrl-C ¤ò²¡¤¹¤È
+³ä¤ê¹þ¤ß¤¬Æþ¤ê¥¹¥¿¥Ö¤ËÀ©¸æ¤¬°Ü¤ë¤è¤¦¤Ë¤·¤Æ¤¢¤ë¡¥¤³¤Îµ¡Ç½¤ò»ÈÍѤ¹¤ë¤¿¤á
+¤Ë¤ÏCPU¥í¥Ã¥¯¾õÂ֤Ǥϡ¤Í¥ÀèÅÙ¤¬ 14 ¤Ë¤Ê¤ë¤è¤¦¤Ë¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡¥¤½
+¤Î¤¿¤á¡¤CPU¥í¥Ã¥¯¤ÇÀßÄꤵ¤ì¤ëÍ¥ÀèÅÙ¤ò¥Þ¥¯¥í¤Ç MAX_IPM ¤Ç»ØÄꤷ¤Æ¤¤¤ë¡¥
+MAX_IPM ¤Ïcpu_config.h ¤ÎÃæ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡¥GDB¥¹¥¿¥Ö¤ò»È¤¦¾ì¹ç¤Ï 14
+¤ËGDB¥¹¥¿¥Ö¤ò»È¤ï¤Ê¤¤¾ì¹ç¤Ï 15 ¤ËÀßÄꤷ¤Æ¤¤¤ë¡¥
+
+DEF_INH ¤Ç»ØÄꤹ¤ë³ä¹þ¤ß¥Ï¥ó¥É¥éÈÖ¹æ(inhno)¤Ï¡¤SH7708/50 ¤Ç¤Ï¡¤³ä¤ê¹þ
+¤ß»ö¾Ý¥ì¥¸¥¹¥¿(INTEVT)¤ËÀßÄꤵ¤ì¤ë¥³¡¼¥É¤Ç¤¢¤ê¡¤SH7709A/09/29R/27 ¤Ç¤Ï¡¤
+³ä¤ê¹þ¤ß»ö¾Ý¥ì¥¸¥¹¥¿2(INTEVT2)¤ËÀßÄꤵ¤ì¤ë¥³¡¼¥É¤Ç¤¢¤ë¡¥¥Ç¡¼¥¿·¿
+(INHNO)¤Ï unsigned int·¿¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡¥DEF_INH ¤Ç¡¤INTEVT,INTEVT2¥³¡¼
+¥É¤È¤·¤Æ͸ú¤Ç¤Ê¤¤Ãͤ䡤³°Éô³ä¹þ¤ß¤ËÂбþ¤·¤Ê¤¤ÈÖ¹æ¤ò»ØÄꤷ¤¿¾ì¹ç¤ÎÆ°ºî
+¤ÏÊݾڤµ¤ì¤Ê¤¤¡¥
+
+SH3°Í¸¤Îµ¡Ç½¤È¤·¤Æ¡¤SR(Status Register)Ãæ¤Î ³ä¤ê¹þ¤ß¥Þ¥¹¥¯¥Ó¥Ã¥È(I3¡Á
+I0)¤ÎÃͤòÊѹ¹¤¹¤ë¤¿¤á¤Î¥µ¡¼¥Ó¥¹¥³¡¼¥ë chg_ipm ¤È¡¤»²¾È¤¹¤ë¤¿¤á¤Î¥µ¡¼¥Ó
+¥¹¥³¡¼¥ë get_ipm ¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¡¥¤Ê¤ª¡¤³ä¤ê¹þ¤ß¥Þ¥¹¥¯¥Ó¥Ã¥È¤ÎÃͤò
+ɽ¤¹¥Ç¡¼¥¿·¿ IPM ¤Ï¡¤unsigned int·¿¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡¥
+
+¤³¤ì¤é¤Î¥µ¡¼¥Ó¥¹¥³¡¼¥ë¤Ï¡¤¥¿¥¹¥¯¥³¥ó¥Æ¥¥¹¥È¤Ç CPU¥í¥Ã¥¯²ò½ü¾õÂ֤ξì¹ç
+¤Ë¤Î¤ß¸Æ¤Ó½Ð¤¹¤³¤È¤¬¤Ç¤¤ë¡¥chg_ipm ¤Ë¤è¤ê IPM ¤ò 0 °Ê³°(¤¹¤Ê¤ï¤Á¡¤²¿
+¤é¤«¤Î³ä¹þ¤ß¤¬¶Ø»ß¤µ¤ì¤Æ¤¤¤ë¾õÂÖ)¤Ë¤·¤¿¾ì¹ç¤Ç¤â¡¤¥Ç¥£¥¹¥Ñ¥Ã¥Á¤Ï¶Ø»ß¤µ
+¤ì¤º¡¤chg_ipm ¤Ë¤è¤êÊѹ¹¤·¤¿ IPM ¤ÎÃͤϡ¤¥Ç¥£¥¹¥Ñ¥Ã¥Á¸å¤Î¥¿¥¹¥¯¤Ë°ú¤
+·Ñ¤¬¤ì¤ë¡¥Î㤨¤Ð¡¤¤¢¤ë¥¿¥¹¥¯¤Ç IPM ¤ò 1 ¤ËÊѹ¹¤·¤¿¸å¡¤²¿¤é¤«¤Î³ä¹þ¤ß¤Ë
+¤è¤êÊ̤Υ¿¥¹¥¯¤ËÀÚ¤êÂؤï¤ë¤È¡¤ÀÚ¤êÂؤï¤Ã¤¿¸å¤Î¥¿¥¹¥¯¤Ç¤â IPM ¤Ï 1 ¤Ë¤Ê
+¤ë¡¥
+
+chg_ipm ¤ò¥µ¥Ý¡¼¥È¤¹¤ë¤¿¤á¤Ë¡¤³ä¹þ¤ß¥Ï¥ó¥É¥é¤Î½ÐÆþ¸ý½èÍý¤Ê¤É¤Ë¥ª¡¼¥Ð¥Ø¥Ã
+¥É¤òÀ¸¤¸¤Æ¤¤¤ë¡¥¤½¤³¤Ç¡¤SUPPORT_CHG_IPM ¤È¤¤¤¦¥Þ¥¯¥í¤Ë¤è¤ê¡¤¤³¤ì¤é¤Î¥µ¡¼
+¥Ó¥¹¥³¡¼¥ë¤ò¥µ¥Ý¡¼¥È¤¹¤ë¤«¤É¤¦¤«¤òÀÚ¤êÂؤ¨¤é¤ì¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤ë¡¥
+SUPPORT_CHG_IPM ¤Ï¡¤cpu_config.h ¤ÎÃæ¤Ç #define ¤µ¤ì¤Æ¤¤¤ë¡¥
+
+SH3°Í¸¤Î³ä¹þ¤ß¥Þ¥¹¥¯¤ÎÊѹ¹¡¦»²¾È¤Î¤¿¤á¤Î¥µ¡¼¥Ó¥¹¥³¡¼¥ë¤Î»ÅÍͤϼ¡¤Î
+Ä̤ꡥ
+
+
+(1) chg_ipm ³ä¹þ¤ß¥Þ¥¹¥¯¤ÎÊѹ¹
+
+¡ÚC¸À¸ìAPI¡Û
+ ER ercd = chg_ipm(IPM ipm);
+
+¡Ú¥Ñ¥é¥á¡¼¥¿¡Û
+ IPM ipm ÀßÄꤹ¤Ù¤ IPM ¤ÎÃÍ
+
+¡Ú¥ê¥¿¡¼¥ó¥Ñ¥é¥á¡¼¥¿¡Û
+ ER ercd ¥¨¥é¡¼¥³¡¼¥É
+
+¡Ú¥¨¥é¡¼¥³¡¼¥É¡Û
+ E_CTX ¥³¥ó¥Æ¥¥¹¥È¥¨¥é¡¼
+ E_PAR ¥Ñ¥é¥á¡¼¥¿¥¨¥é¡¼(ipm ¤¬ÉÔÀµ)
+
+¡Úµ¡Ç½¡Û
+
+IPM(Interrupt Priority Mask)¤ò ipm ¤Ç»ØÄꤵ¤ì¤¿ÃͤËÀßÄꤹ¤ë¡¥»ØÄꤷ¤¿
+Ãͤ¬ 0¡Á13¤Ê¤¤¤·14°Ê³°¤Î¾ì¹ç¡¤E_PAR¥¨¥é¡¼¤È¤Ê¤ë¡¥IPM ¤ò 1¡ÁMAX_IPM -1
+¤ËÀßÄꤷ¤¿¾ì¹ç¤Ç¤â¡¤¥Ç¥£¥¹¥Ñ¥Ã¥Á¤Ï¶Ø»ß¤µ¤ì¤Ê¤¤¡¥¤Þ¤¿¡¤ÀßÄꤷ¤¿ IPM ¤Î
+Ãͤϡ¤¥Ç¥£¥¹¥Ñ¥Ã¥Á¸å¤â°ú¤·Ñ¤¬¤ì¤ë¡¥
+
+¤Ê¤ª¡¤¤³¤Î¥µ¡¼¥Ó¥¹¥³¡¼¥ë¤òÍѤ¤¤Æ¡¤IPM ¤ò MAX_IPM (¤¹¤Ù¤Æ¤Î³ä¹þ¤ß¤ò¶Ø»ß)
+¤ËÀßÄꤹ¤ë¤³¤È¤Ï¤Ç¤¤Ê¤¤¡¥IPM ¤ò MAX_IPM ¤Ë¤·¤¿¤¤¾ì¹ç¤Ë¤Ï¡¤loc_cpu ¤ò
+»È¤¦¤Ù¤¤Ç¤¢¤ë¡¥
+
+¤³¤Î¥µ¡¼¥Ó¥¹¥³¡¼¥ë¤Ï¡¤¥¿¥¹¥¯¥³¥ó¥Æ¥¥¹¥È¤Ç CPU¥í¥Ã¥¯²ò½ü¾õÂ֤λþ¤Î¤ß¸Æ
+¤Ó½Ð¤¹¤³¤È¤¬¤Ç¤¤ë¡¥È󥿥¹¥¯¥³¥ó¥Æ¥¥¹¥È¤ä CPU¥í¥Ã¥¯¾õÂ֤ǸƤӽФ·¤¿¾ì
+¹ç¤Ë¤Ï¡¤E_CTX¥¨¥é¡¼¤È¤Ê¤ë¡¥
+
+
+(2) get_ipm ³ä¹þ¤ß¥Þ¥¹¥¯¤Î»²¾È
+
+¡ÚC¸À¸ìAPI¡Û
+ ER ercd = get_ipm(IPM *p_ipm);
+
+¡Ú¥Ñ¥é¥á¡¼¥¿¡Û
+ ¤Ê¤·
+
+¡Ú¥ê¥¿¡¼¥ó¥Ñ¥é¥á¡¼¥¿¡Û
+ ER ercd ¥¨¥é¡¼¥³¡¼¥É
+ IPM ipm ¸½ºß¤Î IPM ¤ÎÃÍ
+
+¡Ú¥¨¥é¡¼¥³¡¼¥É¡Û
+ E_CTX ¥³¥ó¥Æ¥¥¹¥È¥¨¥é¡¼
+
+¡Úµ¡Ç½¡Û
+
+¸½ºß¤Î IPM(Interrupt Priority Mask)¤ÎÃͤòÆɤ߽Ф·¡¤ipm ¤ËÊÖ¤¹¡¥
+
+¤³¤Î¥µ¡¼¥Ó¥¹¥³¡¼¥ë¤Ï¡¤¥¿¥¹¥¯¥³¥ó¥Æ¥¥¹¥È¤Ç CPU¥í¥Ã¥¯²ò½ü¾õÂ֤λþ¤Î¤ß¸Æ
+¤Ó½Ð¤¹¤³¤È¤¬¤Ç¤¤ë¡¥È󥿥¹¥¯¥³¥ó¥Æ¥¥¹¥È¤ä CPU¥í¥Ã¥¯¾õÂ֤ǸƤӽФ·¤¿¾ì
+¹ç¤Ë¤Ï¡¤E_CTX¥¨¥é¡¼¤È¤Ê¤ë¡¥
+
+
+2.3 CPUÎã³°´ÉÍýµ¡Ç½¤ÈCPUÎã³°¥Ï¥ó¥É¥é
+
+DEF_EXC ¤Ç»ØÄꤹ¤ë³ä¹þ¤ß¥Ï¥ó¥É¥éÈÖ¹æ(excno)¤Ï¡¤SH3 ¤Ç¤Î Îã³°»ö¾Ý¥ì¥¸¥¹
+¥¿¤ËÀßÄꤵ¤ì¤ëÎã³°¥³¡¼¥ÉÈÖ¹æ¤òɽ¤·¡¤¤½¤Î¥Ç¡¼¥¿·¿(EXCNO)¤Ï unsigned int
+·¿¤ËÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡¥DEF_EXC ¤Ç¡¤Îã³°¥³¡¼¥ÉÈÖ¹æ¤È¤·¤Æ͸ú¤Ç¤Ê¤¤Ãͤ䡤
+CPUÎã³°¤ËÂбþ¤·¤Ê¤¤ÈÖ¹æ¤ò»ØÄꤷ¤¿¾ì¹ç¤ÎÆ°ºî¤ÏÊݾڤµ¤ì¤Ê¤¤¡¥
+
+CPUÎã³°¥Ï¥ó¥É¥é¤ËÅϤµ¤ì¤ëp_excinf¤Ï¡¤CPUÎ㳰ȯÀ¸»þ¤Î¥³¥ó¥Æ¥¥¹¥È¤òÊݸ
+¤·¤¿¥¹¥¿¥Ã¥¯¤Ø¤Î¥Ý¥¤¥ó¥¿¤¬ÅϤµ¤ì¤ë¡¥¥¹¥¿¥Ã¥¯¤Î¹½Â¤¤ò°Ê²¼¤Ë¼¨¤¹¡¥
+
+offset
+ ----------------------
+ | R7 | <-- p_excinf
+ ----------------------
+ 1 | R6 |
+ ----------------------
+ 2 | R5 |
+ ----------------------
+ 3 | R4 |
+ ----------------------
+ 4 | R3 |
+ ----------------------
+ 5 | R2 |
+ ----------------------
+ 6 | R1 |
+ ----------------------
+ 7 | R0 |
+ ----------------------
+ 8 | MACH |
+ ----------------------
+ 9 | MACL |
+ ----------------------
+ 10 | GBR |
+ ----------------------
+ 11 | SR |
+ ----------------------
+ 12 | PR |
+ ----------------------
+ 13 | PC |
+ ----------------------
+
+¤Þ¤¿¡¤CPUÎ㳰ȯÀ¸»þ¤ÎPC¤ÎÃͤÏȯÀ¸Îã³°Í×°ø¤Ë±þ¤¸¤ÆCPU¤Ë¤è¤ê¥¤¥ó¥¯¥ê¥á¥ó
+¥È¤µ¤ì¤ë¾ì¹ç¤ä¡¤¤µ¤ì¤º¤Ë¥ê¥È¥é¥¤¤¹¤ë¾ì¹ç¤¬¤¢¤ë¡¥¤½¤Î¤¿¤á¡¤PC¤ÎÃͤòÊѹ¹
+¤·¤¿¤¤¾ì¹ç¤Ï¡¤CPUÎã³°¥Ï¥ó¥É¥é¤Ç¡¤p_excinf¤ò¸µ¤ËPC¤ÎÃͤòÊѹ¹¤¹¤ì¤Ð¤è¤¤¡¥
+
+
+
+2.4 ¥¹¥¿¡¼¥È¥¢¥Ã¥×¥â¥¸¥å¡¼¥ë
+
+SH3°Í¸¤Î¥¹¥¿¡¼¥È¥¢¥Ã¥×¥â¥¸¥å¡¼¥ë(start.S)¤Ç¤Ï¡¤¼¡¤Î½é´ü²½½èÍý¤ò¹Ô¤¦¡¥
+
+(A) ¥×¥í¥»¥Ã¥µ¥â¡¼¥É¤Î½é´ü²½¤È¥¹¥¿¥Ã¥¯¥Ý¥¤¥ó¥¿¤Î½é´ü²½
+
+ºÇ½é¤Ë¡¤¤¹¤Ù¤Æ¤Î¥¥ã¥Ã¥·¥å¤ò̵¸ú²½¤·¤¿¸å¡¤¥¥ã¥Ã¥·¥å¤ò¥é¥¤¥È¥¹¥ë¡¼¥â¡¼
+¥É¤ËÀßÄꤷ¡¤Í¸ú¤Ë¤¹¤ë¡¥¤Þ¤¿¡¤¥×¥í¥»¥Ã¥µ¤Î¥â¡¼¥É¤ò¡¤Æø¢¥â¡¼¥É¡¤¥ì¥¸¥¹
+¥¿¥Ð¥ó¥¯1¤ËÀßÄꤷ¡¤³ä¤ê¹þ¤ß¥Þ¥¹¥¯¤ò MAX_IPM ¤ËÀßÄꤹ¤ë¡¥
+
+
+¼¡¤Ë¡¤¥¹¥¿¥Ã¥¯¥Ý¥¤¥ó¥¿(r15)¤ò STACKTOP ¤ËÀßÄꤹ¤ë¡¥¤³¤³¤Ç³ä¹þ¤ß¥¹¥¿¥Ã
+¥¯¥Ý¥¤¥ó¥¿¤ËÀßÄꤵ¤ì¤¿¥¹¥¿¥Ã¥¯Îΰè¤Ï¡¤¥«¡¼¥Í¥ëµ¯Æ°¸å¤ÏÈ󥿥¹¥¯¥³¥ó¥Æ¥
+¥¹¥ÈÍѤΥ¹¥¿¥Ã¥¯Îΰè¤È¤·¤Æ»È¤ï¤ì¤ë¡¥STACKTOP ¤Ï¡¤sys_config.h Éô¤ÇÄêµÁ
+¤¹¤ë¤³¤È¤òÁÛÄꤷ¤Æ¤¤¤ë¡¥
+
+(B) hardware_init_hook ¤Î¸Æ½Ð¤·
+
+hardware_init_hook ¤¬ 0 ¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¤hardware_init_hook ¤ò¸Æ¤Ó½Ð¤¹¡¥
+hardware_init_hook ¤Ï¡¤¥«¡¼¥Í¥ë¤¬µ¯Æ°¤µ¤ì¤ëÁ°¤Ë¹Ô¤¦É¬Íפ¬¤¢¤ë¥¿¡¼¥²¥Ã
+¥È°Í¸¤Î½é´ü²½¤ò¹Ô¤¦¤¿¤á¤ËÍÑ°Õ¤·¤Æ¤¤¤ë¡¥hardware_init_hook ¤¬¤É¤³¤Ç¤â
+ÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¤¥ê¥ó¥«¤Ç¤³¤Î¥·¥ó¥Ü¥ë¤ò 0 ¤ËÄêµÁ¤¹¤ë(¥ê¥ó¥«¥¹¥¯
+¥ê¥×¥ÈÆâ¤Ëµ½Ò¤¢¤ê)¡¥
+
+(C) bss¥»¥¯¥·¥ç¥ó¤È data¥»¥¯¥·¥ç¥ó¤Î½é´ü²½
+
+bss¥»¥¯¥·¥ç¥ó¤ò¥¼¥í¥¯¥ê¥¢¤¹¤ë¡¥¤Þ¤¿¡¤data¥»¥¯¥·¥ç¥ó¤ò½é´ü²½¤¹¤ë¡¥
+
+(D) software_init_hook ¤Î¸Æ½Ð¤·
+
+software_init_hook ¤¬ 0 ¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¤software_init_hook ¤ò¸Æ¤Ó½Ð¤¹¡¥
+software_init_hook ¤Ï¡¤¥«¡¼¥Í¥ë¤¬µ¯Æ°¤µ¤ì¤ëÁ°¤Ë¹Ô¤¦É¬Íפ¬¤¢¤ë¥½¥Õ¥È¥¦¥§
+¥¢´Ä¶(¶ñÂÎŪ¤Ë¤Ï¡¤¥é¥¤¥Ö¥é¥ê)°Í¸¤Î½é´ü²½¤ò¹Ô¤¦¤¿¤á¤ËÍÑ°Õ¤·¤Æ¤¤¤ë¡¥
+software_init_hook ¤¬¤É¤³¤Ç¤âÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¤¥ê¥ó¥«¤Ç¤³¤Î¥·¥ó¥Ü
+¥ë¤ò 0 ¤ËÄêµÁ¤¹¤ë(¥ê¥ó¥«¥¹¥¯¥ê¥×¥ÈÆâ¤Ëµ½Ò¤¢¤ê)¡¥
+
+(E) ¥«¡¼¥Í¥ë¤Îµ¯Æ°
+
+kernel_start ¤Øʬ´ô¤·¡¤¥«¡¼¥Í¥ë¤òµ¯Æ°¤¹¤ë¡¥kernel_start ¤«¤é¥ê¥¿¡¼¥ó¤·
+¤Æ¤¯¤ë¤³¤È¤ÏÁÛÄꤷ¤Æ¤¤¤Ê¤¤¡¥
+
+
+2.5 ¥ì¥¸¥¹¥¿¥Ð¥ó¥¯
+
+Îã³°¥Ï¥ó¥É¥é¤ÎÆþ¸ý¤ò½ü¤´ðËÜŪ¤Ë¥ì¥¸¥¹¥¿¥Ð¥ó¥¯0¤ò»ÈÍѤ·¤Æ¤¤¤ë¡¥¥ì¥¸¥¹
+¥¿¥Ð¥ó¥¯1¤Ï r7 ¤Î¤ßÎã³°/³ä¤ê¹þ¤ß¤Î¥Í¥¹¥È²ó¿ô¤Î¥«¥¦¥ó¥ÈÍѤ˻ÈÍѤ·¤Æ¤¤¤ë¡¥
+È󥿥¹¥¯¥³¥ó¥Æ¥¥¹¥È¤È¥¿¥¹¥¯¥³¥ó¥Æ¥¥¹¥È¤ÎȽÊ̤Ϥ³¤Î¥ì¥¸¥¹¥¿¤Ë¤è¤ê¹Ô¤Ã
+¤Æ¤¤¤ë¡¥¤Ê¤ª¡¤¥¹¥¿¥Ö¤Ï¥ì¥¸¥¹¥¿¥Ð¥ó¥¯1¤ÎR0¤ÈR1¤ò»ÈÍѤ¹¤ë¤¿¤á¡¤¤³¤Î¥ì¥¸
+¥¹¥¿¤Ë½ñ¤¹þ¤ó¤À¥Ç¡¼¥¿¤Ï¥¹¥¿¥Ö¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¤ÈÇ˲õ¤µ¤ì¤ë¡¥
+
+
+2.6 MACH¡¤MACL¡¤GBR
+
+gcc¤Ç¤Ï¡¤MACH¡¤MACL¡¤GBR¤Ï¤¹¤Ù¤Æ¥¹¥¯¥é¥Ã¥Á¥ì¥¸¥¹¥¿¤È¤·¤Æ°·¤ï¤ì¤ë¤¿¤á¡¤
+´Ø¿ô¸Æ¤Ó½Ð¤·¤ÎÁ°¸å¤Ç¤ÏÃͤÏÊݾڤµ¤ì¤Ê¤¤¡¥¤½¤Î¤¿¤á¡¤Îã³°/³ä¹þ¤ßȯÀ¸»þ¤Ë
+¤Ï¡¤¥¹¥¯¥é¥Ã¥Á¥ì¥¸¥¹¥¿¤Ç¤¢¤ëÈÆÍѥ쥸¥¹¥¿R0¡ÁR7¤ÈƱÍͤËÊݸ¤·¤Æ¤¤¤ë¡¥
+¤Þ¤¿¡¤¼«¤é¥Ç¥£¥¹¥Ñ¥Ã¥Á¥ã¤ò¸Æ¤Ó½Ð¤·¤¹¾ì¹ç¤Ï¡¤´Ø¿ô¸Æ¤Ó½Ð¤·¤Ë¤Ê¤ë¤¿¤á¡¤ÊÝ
+¸¤·¤Æ¤¤¤Ê¤¤¡¥¥¢¥»¥ó¥Ö¥é¤Î¥³¡¼¥É¤ò»ÈÍѤ¹¤ë¾ì¹ç¤â¤³¤Î¥ë¡¼¥ë¤Ë½¾¤¦É¬Íפ¬
+¤¢¤ë¡¥
+
+
+2.7 ³ä¹þ¤ß¥Ï¥ó¥É¥é¼Â¹Ô»þ¤Î³ä¹þ¤ß¥Þ¥¹¥¯
+
+SH3¤Ï³ä¹þ¤ßȯÀ¸»þ¡¤³ä¹þ¤ß¥Þ¥¹¥¯¥Ó¥Ã¥È(I3¡ÁI0)¤Ï¥×¥í¥»¥Ã¥µ¤Ë¤è¤Ã¤Æ¼«Æ°
+Ū¤ËÀßÄꤵ¤ì¤Ê¤¤¤¿¤á¡¤¥½¥Õ¥È¥¦¥§¥¢¤Ë¤è¤Ã¤ÆÀßÄꤹ¤ëɬÍפ¬¤¢¤ë¡¥³ä¹þ¤ß¥Ï
+¥ó¥É¥é¼Â¹Ô»þ¤ËÀßÄꤹ¤ë³ä¹þ¤ß¥Þ¥¹¥¯¥Ó¥Ã¥È¤ò¥«¡¼¥Í¥ë¤Ë»ØÄꤹ¤ë¥µ¡¼¥Ó¥¹¥³¡¼
+¥ë¤È¤·¤Ædefine_int_plevel() ¤òÍÑ°Õ¤·¤Æ¤¤¤ë¡¥¤³¤Î¥µ¡¼¥Ó¥¹¥³¡¼¥ë¤Î»ÈÍѤÏ
+¼¡¤ÎÄ̤ꡥ¤Ê¤ª¡¤define_int_plvel()¤Ë¤è¤ê³ä¹þ¤ß¥Þ¥¹¥¯¥Ó¥Ã¥È¤ò»ØÄꤷ¤Ê¤±
+¤ì¤Ð³ä¹þ¤ß¥Ï¥ó¥É¥é¤Ï¥Ç¥£¥Õ¥©¥ë¥È¤Î MAX_IPM -1 ¤Î¥Þ¥¹¥¯¤Ç¼Â¹Ô¤µ¤ì¤ë¡¥
+
+ define_int_plevel ³ä¹þ¤ß¥Ï¥ó¥É¥é¼Â¹Ô»þ¤Î³ä¹þ¤ß¥Þ¥¹¥¯¥Ó¥Ã¥È¤Î»ØÄê
+
+¡ÚC¸À¸ìAPI¡Û
+ void define_int_plevel(UINT dintno, UW plevel)
+
+¡Ú¥Ñ¥é¥á¡¼¥¿¡Û
+ dintno ³ä¹þ¤ßÈÖ¹æ
+ plevel ³ä¹þ¤ß¥ì¥Ù¥ë
+
+¡Úµ¡Ç½¡Û
+ dintno ¤Ç»ØÄꤷ¤¿³ä¹þ¤ßÈÖ¹æ¤Î³ä¹þ¤ß¥Ï¥ó¥É¥é¤¬¼Â¹Ô¤µ¤ì¤ë¾ì¹ç¤Î³ä¹þ¤ß
+ ¥Þ¥¹¥¯¤ò plevel ¤Ë¤¹¤ë¡¥
+
+
+£³¡¥¥·¥¹¥Æ¥à°Í¸Éô¤Îµ¡Ç½
+
+3.1 ¥·¥¹¥Æ¥à¥¯¥í¥Ã¥¯¥É¥é¥¤¥Ð
+
+¥·¥¹¥Æ¥à¥¯¥í¥Ã¥¯¥É¥é¥¤¥Ð¤¬ isig_tim ¤ò¸Æ¤Ó½Ð¤¹¼þ´ü¤Ï¡¤sys_defs.h Ãæ¤Î
+TIC_NUME ¤È TIC_DENO ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë(ɸ½à¤Ï 1¥ß¥êÉüþ´ü)¡¥¤³¤ÎÄêµÁ
+¤òÊѹ¹¤¹¤ë¤³¤È¤Ç¡¤isig_tim ¤ò¸Æ¤Ó½Ð¤¹¼þ´ü¤òÊѹ¹¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¡¥¤¿¤À
+¤·¡¤¥¿¥¤¥Þ¤ÎÀºÅÙ¤¬ 1¦ÌÉäǤ¢¤ë¤¿¤á¡¤1¦ÌÉÃñ°Ì¤Çü¿ô¤Ë¤Ê¤ëÃͤòÀßÄꤷ¤¿
+¾ì¹ç¤Ë¤Ï¡¤isig_tim ¤Î¸Æ½Ð¤·¼þ´ü¤Ë¸íº¹¤¬À¸¤¸¤ë¤³¤È¤Ë¤Ê¤ë¡¥
+
+3.2 Àǽɾ²ÁÍÑ¥·¥¹¥Æ¥à»þ¹ï»²¾Èµ¡Ç½
+
+SH3°Í¸Éô¤Ç¤Ï¡¤Àǽɾ²ÁÍÑ¥·¥¹¥Æ¥à»þ¹ï»²¾Èµ¡Ç½(vxget_tim)¤ò¥µ¥Ý¡¼¥È¤·¤Æ
+¤¤¤ë¡¥Àǽɾ²ÁÍÑ¥·¥¹¥Æ¥à»þ¹ï¤ÎÀºÅÙ¤Ï 1¦ÌÉÃñ°Ì¤Ç¤¢¤ë¤¬¡¤¥¿¥¤¥Þ¤Î¸½ºßÃÍ
+¤òÆɤ߽Ф¹¤¿¤á¤Ë°ì»þŪ¤Ë¥¿¥¤¥Þ¤òÄä»ß¤µ¤»¤ëɬÍפ¬¤¢¤ë¤¿¤á¡¤vxget_tim ¤ò
+¸Æ¤ÖÅ٤˥·¥¹¥Æ¥à¥¯¥í¥Ã¥¯¤¬¾¯¤·¤Å¤ÄÃÙ¤ì¤ë¤³¤È¤Ë¤Ê¤ë¡¥¤Ê¤ª¡¤SYSUTIM·¿¤Ï
+UD·¿(64¥Ó¥Ã¥È¤ÎÉä¹æ̵¤·À°¿ô·¿)¤ËÄêµÁ¤·¤Æ¤¤¤ë¡¥
+
+3.3 ¥·¥ê¥¢¥ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¥É¥é¥¤¥Ð
+
+
+Solution_Engine ¤Î¥·¥ê¥¢¥ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¥É¥é¥¤¥Ð¤Ï¡¤¥¹¡¼¥Ñ¡¼I/OÆâ¢
+SCI(CN3) ¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¡¥¤Þ¤¿¡¤MS7727CP01¤Î¥·¥ê¥¢¥ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹
+¥É¥é¥¤¥Ð¤Ï¡¤ST16C2550CQ48 ¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¡¥
+
+3.4 ¥á¥â¥ê¥Þ¥Ã¥×
+
+¥³¡¼¥ÉÎΰè¤È¥Ç¡¼¥¿Îΰè¤Ï³Æ¥·¥¹¥Æ¥à°Í¸Éô¤Î Makefile.config ¤Ç¡¤¥¹¥¿¥Ã
+¥¯¤Î½é´üÃͤϡ¤sys_defs.h ¤ÇÀßÄꤹ¤ë¡¥
+
+¡¦Solution Engine
+ ¥³¡¼¥ÉÎΰè¤ò 0x0c003000 ¡Á 0x0c0fffff Ìó1MB¡¤¥Ç¡¼¥¿Îΰè¤ò 0x0c100000
+ ¡Á ¤ÎÌó3MB¡¤È󥿥¹¥¯¥³¥ó¥Æ¥¥¹¥ÈÍѤΥ¹¥¿¥Ã¥¯Îΰè¤ò ¡Á0x0c3fffff ¤Ë³Î
+ Êݤ·¤Æ¤¤¤ë¡¥0x0c000000 ¡Á 0x0c000fff ¤Ï¡¤GDB¥¹¥¿¥Ö¤Î¥ï¡¼¥¯¥¨¥ê¥¢¤È¤Ê¤Ã
+ ¤Æ¤ª¤ê¡¤»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤¤Ê¤¤¡¥
+
+
+¡¦MS7727CP01
+ ¥³¡¼¥ÉÎΰè¤ò 0x0c003000 ¡Á 0x0c0fffff Ìó1MB¡¤¥Ç¡¼¥¿Îΰè¤ò 0x0c100000
+ ¡Á ¤ÎÌó3MB¡¤È󥿥¹¥¯¥³¥ó¥Æ¥¥¹¥ÈÍѤΥ¹¥¿¥Ã¥¯Îΰè¤ò ¡Á0x0c3fffff ¤Ë³Î
+ Êݤ·¤Æ¤¤¤ë¡¥0x0c000000 ¡Á 0x0c002fff ¤Ï¡¤ROM¥â¥Ë¥¿¤Î¥ï¡¼¥¯¥¨¥ê¥¢¤È¤Ê¤Ã
+ ¤Æ¤ª¤ê¡¤»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤¤Ê¤¤¡¥
+
+
+£´¡¥³«È¯´Ä¶¤Î¹½ÃÛ
+
+³«È¯´Ä¶¤Î¹½ÃÛÊýË¡¤Ë¤Ä¤¤¤Æ¤Ï¡¤GNU³«È¯´Ä¶¹½Ãۥޥ˥奢¥ë¤ò»²¾È¤Î¤³¤È¡¥
+
+
+4.1 ³«È¯´Ä¶¤Î¥Ð¡¼¥¸¥ç¥ó
+Æ°ºî³Îǧ¤·¤¿¥Ä¡¼¥ë¤Î¥Ð¡¼¥¸¥ç¥ó¤Ï°Ê²¼¤ÎÄ̤ê¤Ç¤¢¤ë¡¥
+
+ BINUTILS : 2.10.1
+ GCC-CORE : 2.95.3
+ GDB : 4.18
+ NEWLIB : 1.9.0
+
+¤ÎÁȤ߹ç¤ï¤»¤â¤·¤¯¤Ï
+
+ BINUTILS : 2.14
+ GCC-CORE : 3.3
+ GDB : 5.3
+ NEWLIB : 1.11.0
+
+
+£µ¡¥¤½¤Î¾
+
+5.1 ¥Ç¥£¥ì¥¯¥È¥ê¡¦¥Õ¥¡¥¤¥ë¹½À®
+
+SH3 ¥¿¡¼¥²¥Ã¥È°Í¸Éô¤Î³Æ¥Õ¥¡¥¤¥ë¤Î³µÍפϼ¡¤ÎÄ̤ꡥ
+
+ config/sh3/
+ Makefile.config Makefile¤Î SH3 °Í¸ÄêµÁ
+ cpu_defs.h ¥×¥í¥»¥Ã¥µ°Í¸Éô¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥óÍÑÄêµÁ
+ cpu_config.h ¥×¥í¥»¥Ã¥µ°Í¸Éô¤Î¹½À®ÄêµÁ
+ cpu_config.c ¥×¥í¥»¥Ã¥µ°Í¸Éô¤Î´Ø¿ô
+ cpu_support.S ¥×¥í¥»¥Ã¥µ°Í¸Éô¤Î¥µ¥Ö¥ë¡¼¥Á¥ó
+ cpu_context.h ¥³¥ó¥Æ¥¥¹¥ÈÁàºî
+ cpu_rename.def ¥«¡¼¥Í¥ë¤ÎÆâÉô¼±ÊÌ̾¤Î¥ê¥Í¡¼¥àÄêµÁ
+ cpu_rename.h ¥«¡¼¥Í¥ë¤ÎÆâÉô¼±ÊÌ̾¤Î¥ê¥Í¡¼¥à
+ cpu_unrename.h ¥«¡¼¥Í¥ë¤ÎÆâÉô¼±ÊÌ̾¤Î¥ê¥Í¡¼¥à²ò½ü
+ tool_defs.h ³«È¯´Ä¶°Í¸Éô¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥óÍÑÄêµÁ¡ÊGNU³«È¯´Ä¶ÍÑ¡Ë
+ tool_config.h ³«È¯´Ä¶°Í¸Éô¤Î¹½À®ÄêµÁ¡ÊGNU³«È¯´Ä¶ÍÑ¡Ë
+ makeoffset.c offset.h À¸À®¥µ¥Ý¡¼¥È¥×¥í¥°¥é¥à
+ cpu_insn.h Äã¥ì¥Ù¥ë¤Î¥×¥í¥»¥Ã¥µÁàºî¥ë¡¼¥Á¥ó
+ start.S ¥¹¥¿¡¼¥È¥¢¥Ã¥×¥â¥¸¥å¡¼¥ë
+ shelf.ld ¥Ó¥Ã¥°¥¨¥ó¥Ç¥£¥¢¥óÍÑ¥ê¥ó¥«¥¹¥¯¥ê¥×¥È
+ shlelf.ld ¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥óÍÑ¥ê¥ó¥«¥¹¥¯¥ê¥×¥È
+ hw_timer.h ¥¿¥¤¥ÞÁàºî¥ë¡¼¥Á¥ó
+ sh3.h SH3 ¤ÎÄêµÁ
+ sh4.h SH4 ¤ÎÄêµÁ
+
+
+ config/sh3/solution_engine
+ Makefile.config Makefile¤Î Solution Engine °Í¸ÄêµÁ
+ ms7709ase01.h MS7709ASE01 ¥Ï¡¼¥É¥¦¥§¥¢ÄêµÁ
+ ms7729rse01.h MS7729RSE01 ¥Ï¡¼¥É¥¦¥§¥¢ÄêµÁ
+ ms7750se01.h MS7750SE01 ¥Ï¡¼¥É¥¦¥§¥¢ÄêµÁ
+ solution_engine.h Solution Engine¶¦ÄÌÄêµÁ
+ sys_config.c ¥·¥¹¥Æ¥à°Í¸Éô¤Î´Ø¿ô
+ sys_config.h ¥·¥¹¥Æ¥à°Í¸Éô¤Î¹½À®ÄêµÁ
+ sys_defs.h ¥·¥¹¥Æ¥à°Í¸Éô¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥óÍÑÄêµÁ
+ sys_support.S ¥·¥¹¥Æ¥à°Í¸Éô¤Î¥µ¥Ö¥ë¡¼¥Á¥ó
+ sys_rename.def ¥«¡¼¥Í¥ë¤ÎÆâÉô¼±ÊÌ̾¤Î¥ê¥Í¡¼¥àÄêµÁ
+ sys_rename.h ¥«¡¼¥Í¥ë¤ÎÆâÉô¼±ÊÌ̾¤Î¥ê¥Í¡¼¥à
+ sys_unrename.h ¥«¡¼¥Í¥ë¤ÎÆâÉô¼±ÊÌ̾¤Î¥ê¥Í¡¼¥à²ò½ü
+ hw_serial.h SIO¥É¥é¥¤¥Ð
+ hw_serial.cfg SIO¥É¥é¥¤¥Ð¤Î¥³¥ó¥Õ¥£¥®¥å¥ì¡¼¥·¥ç¥ó¥Õ¥¡¥¤¥ë
+
+
+ config/sh3/ms7727cp01
+ Makefile.config Makefile¤Î MS7727CP01 °Í¸ÄêµÁ
+ ms7727cp01.h MS7727CP01 ¥Ï¡¼¥É¥¦¥§¥¢ÄêµÁ
+ sys_config.c ¥·¥¹¥Æ¥à°Í¸Éô¤Î´Ø¿ô
+ sys_config.h ¥·¥¹¥Æ¥à°Í¸Éô¤Î¹½À®ÄêµÁ
+ sys_defs.h ¥·¥¹¥Æ¥à°Í¸Éô¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥óÍÑÄêµÁ
+ sys_support.S ¥·¥¹¥Æ¥à°Í¸Éô¤Î¥µ¥Ö¥ë¡¼¥Á¥ó
+ sys_rename.def ¥«¡¼¥Í¥ë¤ÎÆâÉô¼±ÊÌ̾¤Î¥ê¥Í¡¼¥àÄêµÁ
+ sys_rename.h ¥«¡¼¥Í¥ë¤ÎÆâÉô¼±ÊÌ̾¤Î¥ê¥Í¡¼¥à
+ sys_unrename.h ¥«¡¼¥Í¥ë¤ÎÆâÉô¼±ÊÌ̾¤Î¥ê¥Í¡¼¥à²ò½ü
+ hw_serial.h SIO¥É¥é¥¤¥Ð
+ hw_serial.cfg SIO¥É¥é¥¤¥Ð¤Î¥³¥ó¥Õ¥£¥®¥å¥ì¡¼¥·¥ç¥ó¥Õ¥¡¥¤¥ë
+
+
+ pdic/simple_sio/
+ st16c2550.h ST16C2550 ¤ÎÄêµÁ
+ st16c2550.c ST16C2550 ÍÑSIO¥É¥é¥¤¥Ð
+ fdc37c935a.h fdc37c935a ¤ÎÄêµÁ
+ fdc37c935a.c fdc37c935a ÍÑSIO¥É¥é¥¤¥Ð
+
+
+