OSDN Git Service

SimpleHTMLEditorを追加。
[chnosproject/CHNOSProject.git] / CHNOSProject / chnos / tolset_chn_000 / chnos_010 / chnos / cfunc.c
diff --git a/CHNOSProject/chnos/tolset_chn_000/chnos_010/chnos/cfunc.c b/CHNOSProject/chnos/tolset_chn_000/chnos_010/chnos/cfunc.c
deleted file mode 100644 (file)
index 9ca3c4d..0000000
+++ /dev/null
@@ -1,710 +0,0 @@
-\r
-#include "core.h"\r
-\r
-uint system_seed;\r
-\r
-#define RAND_A ((10 << 3) + 5)\r
-#define RAND_B ((15 << 1) + 1)\r
-#define RAND_C (1 << 24)\r
-\r
-void srand(uint seed)\r
-{\r
-       system_seed = seed;\r
-       return;\r
-}\r
-\r
-uint rand(void)\r
-{\r
-       uint seed2;\r
-\r
-       system_seed = ((system_seed * RAND_A) + RAND_B) % RAND_C;\r
-       seed2 = ((system_seed * RAND_A) + RAND_B) % RAND_C;\r
-       system_seed = (system_seed & 0xff5688) | ((seed2 >> 8) & 0xa977) | ((system_seed & 0x000ff000) << 12);\r
-       return system_seed;\r
-}\r
-\r
-uint isqrt(uint n)\r
-{\r
-       uint x;\r
-\r
-//Overflow Check\r
-       if(n >= (uint)0xffff * (uint)0xffff){\r
-               return 0xffff;\r
-       }\r
-\r
-       x = (1 << 15);\r
-\r
-       if(n > x * x){\r
-               x += (1 << 14);\r
-       } else{\r
-               x -= (1 << 14);\r
-       }\r
-       if(n > x * x){\r
-               x += (1 << 13);\r
-       } else{\r
-               x -= (1 << 13);\r
-       }\r
-       if(n > x * x){\r
-               x += (1 << 12);\r
-       } else{\r
-               x -= (1 << 12);\r
-       }\r
-       if(n > x * x){\r
-               x += (1 << 11);\r
-       } else{\r
-               x -= (1 << 11);\r
-       }\r
-       if(n > x * x){\r
-               x += (1 << 10);\r
-       } else{\r
-               x -= (1 << 10);\r
-       }\r
-       if(n > x * x){\r
-               x += (1 << 9);\r
-       } else{\r
-               x -= (1 << 9);\r
-       }\r
-       if(n > x * x){\r
-               x += (1 << 8);\r
-       } else{\r
-               x -= (1 << 8);\r
-       }\r
-       if(n > x * x){\r
-               x += (1 << 7);\r
-       } else{\r
-               x -= (1 << 7);\r
-       }\r
-       if(n > x * x){\r
-               x += (1 << 6);\r
-       } else{\r
-               x -= (1 << 6);\r
-       }\r
-       if(n > x * x){\r
-               x += (1 << 5);\r
-       } else{\r
-               x -= (1 << 5);\r
-       }\r
-       if(n > x * x){\r
-               x += (1 << 4);\r
-       } else{\r
-               x -= (1 << 4);\r
-       }\r
-       if(n > x * x){\r
-               x += (1 << 3);\r
-       } else{\r
-               x -= (1 << 3);\r
-       }\r
-       if(n > x * x){\r
-               x += (1 << 2);\r
-       } else{\r
-               x -= (1 << 2);\r
-       }\r
-       if(n > x * x){\r
-               x += (1 << 1);\r
-       } else{\r
-               x -= (1 << 1);\r
-       }\r
-       if(n > x * x){\r
-               x += (1 << 0);\r
-       } else{\r
-               x -= (1 << 0);\r
-       }\r
-\r
-       if(n > x * x){\r
-               x++;\r
-       }\r
-       if(n < x * x){\r
-               x--;\r
-       }\r
-\r
-       return x;\r
-}\r
-\r
-//\95\8e\9a\97ñ\82©\82ç\90\94\92l\82ð\90\90¬\82µ\82Ü\82·\81B\r
-//base=0:C\8c¾\8cê\82Ì\92è\90\94\95\\8bL\83\8b\81[\83\8b\82É\8f]\82¤\81B("0x..."=16, "0..."=8, else=10)\r
-//base=2-36(\90\94\8e\9a10+\83A\83\8b\83t\83@\83x\83b\83g26):\8ae\90\94\8e\9a\82ð\8aî\90\94\82Æ\82µ\82Ä\95\8e\9a\97ñ\82ð\97\9d\89ð\82µ\82æ\82¤\82Æ\82·\82é\81B\r
-//\83A\83\8b\83t\83@\83x\83b\83g\82Ì\91å\95\8e\9a\81E\8f¬\95\8e\9a\82Í\96â\82í\82È\82¢\81B\r
-//endptr=NULL\82à\89Â\81B\97L\8cø\82È\90\94\8e\9a\82ª\88ê\82Â\82à\82È\82¯\82ê\82Î\81A*endptr=s, retv=0\82Æ\82È\82é\81B\r
-//\8fo\97Í\82Ì\83I\81[\83o\81[\83t\83\8d\81[\82É\82Â\82¢\82Ä\82Í\8dl\97\82µ\82È\82¢\82Ì\82Å\92\8d\88Ó\81B\r
-//\8c»\8fó\82Å\82Í\95\89\90\94\82Í\88µ\82¦\82È\82¢(\83}\83C\83i\83X\8bL\8d\86\82Í\95Ï\8a·\95s\94\\82Æ\82³\82ê\82é)\r
-//s\82Ì\97á:"0xFEC375"(16), "0423"(8), "12345"(10)\r
-//\95\8e\9a\97ñ\91S\91Ì\82Ì\91O\82É\82Í\8bó\94\92\82ª\82 \82Á\82Ä\82à\96³\8e\8b\82³\82ê\82é\81B\90\94\8e\9a\95\94\95ª\8aJ\8en\8cã\82Í\8bó\94\92\82Í\95Ï\8a·\95s\94\\82Æ\82³\82ê\82é\81B\r
-//*endptr[0]==0x00\82Ì\82Æ\82«\81A\95\8e\9a\97ñs\82Ì\82·\82×\82Ä\82ª\95Ï\8a·\82³\82ê\82½\82±\82Æ\82ð\8e¦\82·\81B\r
-uint strtol(const uchar s[], uchar *endptr[], uint base)\r
-{\r
-       uint i, v;\r
-\r
-       v = 0;\r
-\r
-       if(s == Null || base > 36 || base == 1){\r
-               if(endptr != Null){\r
-                       *endptr = Null;\r
-               }\r
-               return 0;\r
-       }\r
-\r
-//\8bó\94\92\82ð\93Ç\82Ý\94ò\82Î\82·\r
-       for(i = 0; s[i] != 0x00; i++){\r
-               if(s[i] != ' '){\r
-                       break;\r
-               }\r
-       }\r
-//base=0\82Ì\8e\9e\82Ì\8aî\90\94\8c\88\92è\r
-       if(base == 0){\r
-               if(s[i] == '0'){\r
-                       i++;\r
-                       if(s[i] == 'x'){\r
-                               base = 16;\r
-                               i++;\r
-                       } else{\r
-                               base = 8;\r
-                       }\r
-               } else{\r
-                       base = 10;\r
-               }\r
-       }\r
-//\90\94\92l\95Ï\8a·\r
-       for(; s[i] != 0x00; i++){\r
-               if('0' <= s[i] <= '9' && s[i] - '0' < base){\r
-                       v *= base;\r
-                       v += s[i] - '0';\r
-               } else if('A' <= s[i] <= 'Z' && s[i] - 'A' + 10 < base){\r
-                       v *= base;\r
-                       v += s[i] - 'A' + 10;\r
-               } else if('a' <= s[i] <= 'z' && s[i] - 'a' + 10 < base){\r
-                       v *= base;\r
-                       v += s[i] - 'a' + 10;\r
-               } else{\r
-                       break;\r
-               }\r
-       }\r
-       if(endptr != Null){\r
-               *endptr = (uchar *)&s[i];\r
-       }\r
-       return v;\r
-}\r
-\r
-bool CFunction_CompareStrings(const uchar s1[], const uchar s2[])\r
-{\r
-       uint i;\r
-\r
-       for(i = 0; s1[i] == s2[i]; i++){\r
-               if(s1[i] == 0x00){\r
-                       return True;\r
-               }\r
-       }\r
-       return False;\r
-}\r
-\r
-bool CFunction_CompareStrings_n(const uchar s1[], const uchar s2[], unsigned int n)\r
-{\r
-       uint i;\r
-\r
-       for(i = 0; i < n; i++){\r
-               if(s1[i] != s2[i]){\r
-                       return False;\r
-               }\r
-               if(s1[i] == 0x00){\r
-                       return True;\r
-               }\r
-       }\r
-       return True;\r
-}\r
-\r
-uint CFunction_ExtractBits(uint source, uint start, uint end)\r
-{\r
-       return (source >> start) & ~(0xffffffff << (end - start + 1));\r
-}\r
-\r
-//\95\8e\9a\97ñ\93à\82Ìn\94Ô\96Ú\82Ì\92P\8cê(\83X\83y\81[\83X\8bæ\90Ø\82è\82É\82æ\82é)\82Ì\90æ\93ª\83A\83h\83\8c\83X\82ð\8eæ\93¾\82·\82é\81B\r
-//\96ß\82è\92l\82Í\81An\94Ô\96Ú\82Ì\92P\8cê\82ª\91\8dÝ\82·\82é\82©\82Ç\82¤\82©\82ð\95Ô\82·\81B\r
-//\91\8dÝ\82µ\82È\82©\82Á\82½\8fê\8d\87\82Ì*wordptr\82Ís\82Ì\96\96\92[\82ð\95Ô\82·\81B\r
-//wordptr\82ÍNull\8b\96\97e\81B\r
-bool CFunction_String_GetWord(const uchar s[], uchar *wordptr[], uint n)\r
-{\r
-       uint i, count;\r
-\r
-       if(s == Null){\r
-               if(wordptr != Null){\r
-                       *wordptr = Null;\r
-               }\r
-               return False;\r
-       }\r
-\r
-       if(n == 0){\r
-               if(wordptr != Null){\r
-                       *wordptr = (uchar *)s;\r
-               }\r
-               return True;\r
-       }\r
-\r
-       count = 0;\r
-       for(i = 0; s[i] != 0x00; i++){\r
-               if(s[i] == ' '){\r
-                       count++;\r
-                       for(; s[i] != 0x00; i++){\r
-                               if(s[i] != ' '){\r
-                                       break;\r
-                               }\r
-                       }\r
-                       if(s[i] != 0x00 && count == n){\r
-                               if(wordptr != Null){\r
-                                       *wordptr = (uchar *)&s[i];\r
-                               }\r
-                               return True;\r
-                       }\r
-               }\r
-       }\r
-\r
-       if(wordptr != Null){\r
-               *wordptr = (uchar *)&s[i];\r
-       }\r
-       return False;\r
-}\r
-\r
-//source\94Ô\92n\82©\82ç\82Ì\81Adestination_size\82ð\92´\82¦\82È\82¢source_size\83o\83C\83g\82ð\81Adestination\94Ô\92n\82Ö\88Ú\93®\82³\82¹\82é\81B\r
-//\83\81\83\82\83\8a\94Í\88Í\82ª\8fd\82È\82Á\82Ä\82¢\82Ä\82à\83f\81[\83^\82Í\94j\89ó\82³\82ê\82È\82¢(\94Í\88Í\82ª\8fd\82È\82Á\82Ä\82¢\82é\8fê\8d\87\81Asource\82Ì\93à\97e\82ª\95Ï\8dX\82³\82ê\82é\89Â\94\\90«\82Í\82 \82é\82ª\81A\88Ú\93®\82³\82ê\82é\83f\81[\83^\8e©\91Ì\82Í\95Û\8e\9d\82³\82ê\82é)\81B\r
-//\93¯\88ê\94Ô\92n\82Ö\83R\83s\81[\82·\82é\8fê\8d\87\82Í\89½\82à\82µ\82È\82¢\81B\r
-//\96ß\82è\92l\82Í\81A\83R\83s\81[\82µ\82½\83o\83C\83g\90\94\81B\r
-uint CFunction_MemoryMove(void *destination, uint destination_size, const void *source, uint source_size)\r
-{\r
-       uint move_size, i;\r
-       void *temp;\r
-\r
-       if(destination == source){\r
-               return 0;\r
-       }\r
-\r
-       if(destination_size <= source_size){\r
-               move_size = destination_size;\r
-       } else{\r
-               move_size = source_size;\r
-       }\r
-\r
-       if((uint)source < (uint)destination && (uint)source + source_size > (uint)destination){\r
-               //source\82ð\8fã\8f\91\82«\82µ\82Ä\82µ\82Ü\82¤\8fê\8d\87\81A\88ê\93x\83o\83b\83t\83@\82É\91Þ\94ð\82³\82¹\82½\8cã\83R\83s\81[\82·\82é\81B\r
-               temp = System_Memory_Allocate(move_size);\r
-               i = 0;\r
-               if(move_size >= 4){\r
-                       for(; i < move_size - (4 - 1); i += 4){\r
-                               ((uint *)temp)[i >> 2] = ((uint *)source)[i >> 2];\r
-                       }\r
-               }\r
-               if(i != move_size){\r
-                       for(; i < move_size; i++){\r
-                               ((uchar *)temp)[i] = ((uchar *)source)[i];\r
-                       }\r
-               }\r
-       } else{\r
-               temp = (uchar *)source;\r
-       }\r
-\r
-       i = 0;\r
-       if(move_size >= 4){\r
-               for(; i < move_size - (4 - 1); i += 4){\r
-                       ((uint *)destination)[i >> 2] = ((uint *)temp)[i >> 2];\r
-               }\r
-       }\r
-       if(i != move_size){\r
-               for(; i < move_size; i++){\r
-                       ((uchar *)destination)[i] = ((uchar *)temp)[i];\r
-               }\r
-       }\r
-\r
-       if(temp != source){\r
-               System_Memory_Free(temp, move_size);\r
-       }\r
-\r
-       return move_size;\r
-}\r
-\r
-//\88ø\90\94(uchar s[], uint n, const uchar format[], ...)\r
-//     s       :\8c\8b\89Ê\82ð\8f\91\82«\8d\9e\82Þ\95\8e\9a\97ñ\82Ì\90æ\93ª\83A\83h\83\8c\83X\82ð\8ew\92è\82µ\82Ü\82·\81B\r
-//     n       :s[]\82Ì\91å\82«\82³\82ð\8ew\92è\82µ\82Ü\82·\81B(n - 1)\94Ô\96Ú\88È\8d~\82Ì\95\8e\9a\82Í\8f\91\82«\8d\9e\82Ü\82ê\82Ü\82¹\82ñ\81B\r
-//             :\82½\82¾\82µ\81A\83[\83\8d\82ð\8ew\92è\82µ\82½\8fê\8d\87\82Í\81A\89½\82à\8fo\97Í\82µ\82Ü\82¹\82ñ\81B\82±\82Ì\8fê\8d\87\81As[]\82Í0(null)\82ð\8ew\92è\82·\82é\82±\82Æ\82à\82Å\82«\82Ü\82·\81B\r
-//     format  :\8f\91\8e®\8ew\92è\95\8e\9a\97ñ\82Ì\90æ\93ª\83A\83h\83\8c\83X\82ð\8ew\92è\82µ\82Ü\82·\81B\8fI\92[\82Í0x00\82Å\82 \82é\95K\97v\82ª\82 \82è\82Ü\82·\81B\r
-//     ...     :\89Â\95Ï\92·\88ø\90\94\82Å\82·\81B\r
-//\r
-//\8cë\82Á\82½\83t\83H\81[\83}\83b\83g\82ª\8ew\92è\82³\82ê\82½\8fê\8d\87\81A\82»\82Ì\95\94\95ª\82Ì\83t\83H\81[\83}\83b\83g\89ð\8eß\82ð\8fI\97¹\82µ\81A\r
-//\89ð\8eß\82Å\82«\82È\82©\82Á\82½\95\94\95ª\82©\82ç\92Ê\8fí\95\8e\9a\82Æ\82µ\82Ä\8fo\97Í\82µ\82Ü\82·\r
-//\r
-//%[\83t\83\89\83O][\8dÅ\8f¬\83t\83B\81[\83\8b\83h\95\9d][\90¸\93x][\95Ï\8a·\8fC\8fü\8eq]\83t\83H\81[\83}\83b\83g\8ew\92è\8eq"\r
-//     text    :\95½\95\82Í%\82ð\8f\9c\82«\81A\82»\82Ì\82Ü\82Ü\8fo\97Í\82³\82ê\82Ü\82·\81B\r
-//     \8eg\97p\89Â\94\\82È\83t\83H\81[\83}\83b\83g\8ew\92è\8eq:\r
-//     %%      :%\95\8e\9a\82ð\8fo\97Í\82µ\82Ü\82·\81B\r
-//     o       :\83f\81[\83^\82ð8\90i\90\94\82Å\8fo\97Í\82µ\82Ü\82·\81B\r
-//     d, i    :\83f\81[\83^\82ð10\90i\90\94\82Å\8fo\97Í\82µ\82Ü\82·\81B\r
-//     x, X    :\83f\81[\83^\82ð16\90i\90\94\82Å\8fo\97Í\82µ\82Ü\82·\81Bx:\83A\83\8b\83t\83@\83x\83b\83g\8f¬\95\8e\9a\81BX:\83A\83\8b\83t\83@\83x\83b\83g\91å\95\8e\9a\81B\r
-//     u       :\83f\81[\83^\82ð\95\84\8d\86\82È\82µ10\90i\90\94\82Å\8fo\97Í\82µ\82Ü\82·\81B\r
-//     c       :\83f\81[\83^\82ðASCII\83R\81[\83h\82Æ\89ð\8eß\82µ\82Ä\88ê\95\8e\9a\82ð\8fo\97Í\82µ\82Ü\82·\81B\r
-//     s       :\83f\81[\83^\82ð\95\8e\9a\97ñ\82Ö\82Ì\83|\83C\83\93\83^\82Æ\89ð\8eß\82µ\82Ä\95\8e\9a\97ñ\82ð\8fo\97Í\82µ\82Ü\82·\81B\95\8e\9a\97ñ\82Ì\8fI\92[\82Í0(null)\82Å\82 \82é\95K\97v\82ª\82 \82è\82Ü\82·\81B\r
-//     f       :\83f\81[\83^\82ð\95\82\93®\8f¬\90\94\93_\90\94\82Æ\82µ\82Ä\8fo\97Í\82µ\82Ü\82·\81Bfloat/double\82Ì\8bæ\95Ê\82Í\82µ\82Ü\82¹\82ñ\81B\95W\8f\80\82Ì\90¸\93x\82Í6\8c\85\82Å\82·\81B\r
-//     e, E    :\83f\81[\83^\82ð\8ew\90\94\8c`\8e®\82Å\8fo\97Í\82µ\82Ü\82·\81Be:\83A\83\8b\83t\83@\83x\83b\83g\8f¬\95\8e\9a\81BE:\83A\83\8b\83t\83@\83x\83b\83g\91å\95\8e\9a\81B\95W\8f\80\82Ì\90¸\93x\82Í6\8c\85\82Å\82·\81B\r
-//     g, G    :\92Ê\8fí\82Íf\83t\83H\81[\83}\83b\83g\8ew\92è\8eq\82Æ\93¯\82\93®\8dì\82ð\82µ\82Ü\82·\82ª\81A\r
-//             :\8ew\90\94\95\94\82ª-5\88È\89º\82©\81A\97L\8cø\90¸\93x\88È\8fã\82Ì\82Æ\82«\82Íe,E\83t\83H\81[\83}\83b\83g\8ew\92è\8eq\82Æ\93¯\82\93®\8dì\82ð\82µ\82Ü\82·\81B\r
-//             :\82±\82Ì\8f\91\8e®\82Ì\96Ú\93I\82Í\81A\82È\82é\82×\82­\92Z\82¢\95\\8c»\82Å\8fo\97Í\82·\82é\82±\82Æ\82Å\82·\81B\r
-//     p       :\83f\81[\83^\82ð\89½\82ç\82©\82Ì\83|\83C\83\93\83^\82Æ\89ð\8eß\82µ\82Ä\81A\82»\82Ì\8ew\82µ\8e¦\82·\83A\83h\83\8c\83X\82ð\8fo\97Í\82µ\82Ü\82·\81B\r
-//     n       :\82±\82Ì\83t\83H\81[\83}\83b\83g\8ew\92è\8eq\82ð\8aÜ\82Þ\83t\83H\81[\83}\83b\83g\8ew\92è\82É\92B\82·\82é\82Ü\82Å\81A\8d¡\89ñ\8fo\97Í\82µ\82½\95\8e\9a\90\94\82ð\81A\r
-//             :\83f\81[\83^\82ðuint *\82Æ\82µ\82Ä\89ð\8eß\82µ\81A\83|\83C\83\93\83^\82ª\8ew\82µ\8e¦\82·\90æ\82Ìuint\8c^\95Ï\90\94\82É\91ã\93ü\82µ\82Ü\82·\81B\r
-\r
-int snprintf(uchar s[], uint n, const uchar format[], ...)\r
-{\r
-       return CFunction_vsnprintf(s, n, format, (uint *)(&format + 1));\r
-}\r
-\r
-int vsnprintf(uchar s[], uint n, const uchar format[], uint vargs[])\r
-{\r
-       return CFunction_vsnprintf(s, n, format, vargs);\r
-}\r
-\r
-int CFunction_vsnprintf(uchar s[], uint n, const uchar format[], uint vargs[])\r
-{\r
-       uchar c;\r
-       uint i, j;\r
-       const uchar *d;\r
-       uint flag_fill_zero;\r
-       uint fill_length;\r
-\r
-       CFunction_vsnprintf_WorkArea work;\r
-\r
-       CFunction_vsnprintf_Initialize_WorkArea(&work, s, format, n, vargs);    \r
-\r
-       flag_fill_zero = False;\r
-       fill_length = 0xffffffff;\r
-\r
-       for(;;){\r
-               if(CFunction_vsnprintf_Check_FormatBuffer(&work) == -1){\r
-                       break;\r
-               }\r
-               c = CFunction_vsnprintf_Read_FormatBuffer(&work);\r
-               if(work.format_phase > 0){      /*\8f\91\8e®\8ew\92è\92\86*/\r
-                       if(c == '%'){           /*%\95\8e\9a\82ð\8fo\97Í\82µ\82Ü\82·\81B*/\r
-                               CFunction_vsnprintf_Write_DestinationBuffer(&work, '%');\r
-                               work.format_phase = 0;\r
-                       } else if(c == 'o'){    /*\83f\81[\83^\82ð8\90i\90\94\82Å\8fo\97Í\82µ\82Ü\82·\81B*/\r
-                       } else if(c == 'd'){    /*\83f\81[\83^\82ð10\90i\90\94\82Å\8fo\97Í\82µ\82Ü\82·\81B*/\r
-                               /*\95W\8f\80\90¸\93x\82Í\88ê\8c\85\88È\8fã\81A\83[\83\8d\83t\83B\83\8b\82Å\82·\81B*/\r
-                               if(fill_length == 0xffffffff){\r
-                                       fill_length = 1;\r
-                                       flag_fill_zero = True;\r
-                               }\r
-                               i = CFunction_vsnprintf_Get_NextArgument(&work);\r
-                               if((i & 0x80000000) != 0){\r
-                                       i--;\r
-                                       i = ~i;\r
-                                       CFunction_vsnprintf_Write_DestinationBuffer(&work, '-');\r
-                               }\r
-                               CFunction_vsnprintf_To_String_From_Decimal_Unsigned(&work, i);\r
-\r
-                               for(i = 0; i < 10; i++){\r
-                                       if(work.temporary_data[i] != ' '){\r
-                                               break;\r
-                                       }\r
-                               }\r
-                               if(i == 10){\r
-                                       i--;\r
-                                       work.temporary_data[10 - 1] = '0';\r
-                               }\r
-\r
-                               if((10 - i) < fill_length && fill_length != 0xffffffff){\r
-                                       if(flag_fill_zero){\r
-                                               for(j = 0; j < (fill_length - (10 - i)); j++){\r
-                                                       CFunction_vsnprintf_Write_DestinationBuffer(&work, '0');\r
-                                               }\r
-                                       } else{\r
-                                               for(j = 0; j < (fill_length - (10 - i)); j++){\r
-                                                       CFunction_vsnprintf_Write_DestinationBuffer(&work, ' ');\r
-                                               }\r
-                                       }\r
-                               }\r
-                               for(; i < 10; i++){\r
-                                       CFunction_vsnprintf_Write_DestinationBuffer(&work, work.temporary_data[i]);\r
-                               }\r
-                               work.format_phase = 0;\r
-                       } else if(c == 'i'){    /*\83f\81[\83^\82ð10\90i\90\94\82Å\8fo\97Í\82µ\82Ü\82·\81B*/\r
-                               i = CFunction_vsnprintf_Get_NextArgument(&work);\r
-                               if((i & 0x80000000) != 0){\r
-                                       i--;\r
-                                       i = ~i;\r
-                                       CFunction_vsnprintf_Write_DestinationBuffer(&work, '-');\r
-                               }\r
-                               CFunction_vsnprintf_To_String_From_Decimal_Unsigned(&work, i);\r
-                               for(i = 0; i < 10; i++){\r
-                                       if(work.temporary_data[i] != ' '){\r
-                                               break;\r
-                                       }\r
-                                       if(i >= 10 - 1){\r
-                                               CFunction_vsnprintf_Write_DestinationBuffer(&work, '0');\r
-                                       }\r
-                               }\r
-                               for(; i < 10; i++){\r
-                                       CFunction_vsnprintf_Write_DestinationBuffer(&work, work.temporary_data[i]);\r
-                               }\r
-                               work.format_phase = 0;\r
-                       } else if(c == 'x'){    /*\83f\81[\83^\82ð16\90i\90\94\82Å\8fo\97Í\82µ\82Ü\82·\81Bx:\83A\83\8b\83t\83@\83x\83b\83g\8f¬\95\8e\9a\81B*/\r
-                               CFunction_vsnprintf_To_String_From_Hex_Lower(&work, CFunction_vsnprintf_Get_NextArgument(&work));\r
-                               for(i = 0; i < 8; i++){\r
-                                       if(work.temporary_data[i] != ' '){\r
-                                               break;\r
-                                       }\r
-                                       if(i >= 8 - 1){\r
-                                               CFunction_vsnprintf_Write_DestinationBuffer(&work, '0');\r
-                                       }\r
-                               }\r
-                               for(; i < 8; i++){\r
-                                       CFunction_vsnprintf_Write_DestinationBuffer(&work, work.temporary_data[i]);\r
-                               }\r
-                       } else if(c == 'X'){    /*\83f\81[\83^\82ð16\90i\90\94\82Å\8fo\97Í\82µ\82Ü\82·\81BX:\83A\83\8b\83t\83@\83x\83b\83g\91å\95\8e\9a\81B*/\r
-                               /*\95W\8f\80\90¸\93x\82Í\88ê\8c\85\88È\8fã\81A\83[\83\8d\83t\83B\83\8b\82Å\82·\81B*/\r
-                               if(fill_length == 0xffffffff){\r
-                                       fill_length = 1;\r
-                                       flag_fill_zero = True;\r
-                               }\r
-                               CFunction_vsnprintf_To_String_From_Hex_Upper(&work, CFunction_vsnprintf_Get_NextArgument(&work));\r
-                               for(i = 0; i < 8; i++){\r
-                                       if(work.temporary_data[i] != ' '){\r
-                                               break;\r
-                                       }\r
-                               }\r
-                               if((8 - i) < fill_length && fill_length != 0xffffffff){\r
-                                       if(flag_fill_zero){\r
-                                               for(j = 0; j < (fill_length - (8 - i)); j++){\r
-                                                       CFunction_vsnprintf_Write_DestinationBuffer(&work, '0');\r
-                                               }\r
-                                       } else{\r
-                                               for(j = 0; j < (fill_length - (8 - i)); j++){\r
-                                                       CFunction_vsnprintf_Write_DestinationBuffer(&work, ' ');\r
-                                               }\r
-                                       }\r
-                               }\r
-                               for(; i < 8; i++){\r
-                                       CFunction_vsnprintf_Write_DestinationBuffer(&work, work.temporary_data[i]);\r
-                               }\r
-                               work.format_phase = 0;\r
-                       } else if(c == 'u'){    /*\83f\81[\83^\82ð\95\84\8d\86\82È\82µ10\90i\90\94\82Å\8fo\97Í\82µ\82Ü\82·\81B*/\r
-                               CFunction_vsnprintf_To_String_From_Decimal_Unsigned(&work, CFunction_vsnprintf_Get_NextArgument(&work));\r
-                               for(i = 0; i < 10; i++){\r
-                                       if(work.temporary_data[i] != ' '){\r
-                                               break;\r
-                                       }\r
-                                       if(i >= 10 - 1){\r
-                                               CFunction_vsnprintf_Write_DestinationBuffer(&work, '0');\r
-                                       }\r
-                               }\r
-                               for(; i < 10; i++){\r
-                                       CFunction_vsnprintf_Write_DestinationBuffer(&work, work.temporary_data[i]);\r
-                               }\r
-                               work.format_phase = 0;\r
-                       } else if(c == 'c'){    /*\83f\81[\83^\82ðASCII\83R\81[\83h\82Æ\89ð\8eß\82µ\82Ä\88ê\95\8e\9a\82ð\8fo\97Í\82µ\82Ü\82·\81B*/\r
-                               CFunction_vsnprintf_Write_DestinationBuffer(&work, CFunction_vsnprintf_Get_NextArgument(&work));\r
-                               work.format_phase = 0;\r
-                       } else if(c == 's'){    /*\83f\81[\83^\82ð\95\8e\9a\97ñ\82Ö\82Ì\83|\83C\83\93\83^\82Æ\89ð\8eß\82µ\82Ä\95\8e\9a\97ñ\82ð\8fo\97Í\82µ\82Ü\82·\81B\95\8e\9a\97ñ\82Ì\8fI\92[\82Í0(null)\82Å\82 \82é\95K\97v\82ª\82 \82è\82Ü\82·\81B*/\r
-                               d = (const uchar *)CFunction_vsnprintf_Get_NextArgument(&work);\r
-                               for (; *d != 0x00; d++){\r
-                                       CFunction_vsnprintf_Write_DestinationBuffer(&work, *d);\r
-                               }\r
-                               work.format_phase = 0;\r
-                       } else if(c == 'f'){    /*\83f\81[\83^\82ð\95\82\93®\8f¬\90\94\93_\90\94\82Æ\82µ\82Ä\8fo\97Í\82µ\82Ü\82·\81Bfloat/double\82Ì\8bæ\95Ê\82Í\82µ\82Ü\82¹\82ñ\81B\95W\8f\80\82Ì\90¸\93x\82Í6\8c\85\82Å\82·\81B\89Â\95Ï\92·\88ø\90\94\82Ì\8fê\8d\87\81A\95\82\93®\8f¬\90\94\93_\90\94\82Í\8fí\82Édouble\82É\8ag\92£\82³\82ê\82é\82©\82ç\82Å\82·\81B*/\r
-                               ((uint *)work.temporary_data_double)[0] = CFunction_vsnprintf_Get_NextArgument(&work);\r
-                               ((uint *)work.temporary_data_double)[1] = CFunction_vsnprintf_Get_NextArgument(&work);\r
-\r
-                               CFunction_vsnprintf_To_String_From_Hex_Upper(&work, ((uint *)work.temporary_data_double)[1]);\r
-                               for(i = 0; i < 8; i++){\r
-                                       if(work.temporary_data[i] != ' '){\r
-                                               break;\r
-                                       }\r
-                               }\r
-                               for(; i < 8; i++){\r
-                                       CFunction_vsnprintf_Write_DestinationBuffer(&work, work.temporary_data[i]);\r
-                               }\r
-\r
-                               CFunction_vsnprintf_To_String_From_Hex_Upper(&work, ((uint *)work.temporary_data_double)[0]);\r
-                               for(i = 0; i < 8; i++){\r
-                                       if(work.temporary_data[i] != ' '){\r
-                                               break;\r
-                                       }\r
-                               }\r
-                               for(; i < 8; i++){\r
-                                       CFunction_vsnprintf_Write_DestinationBuffer(&work, work.temporary_data[i]);\r
-                               }\r
-                               work.format_phase = 0;\r
-                       } else if(c == 'e'){    /*\83f\81[\83^\82ð\8ew\90\94\8c`\8e®\82Å\8fo\97Í\82µ\82Ü\82·\81Be:\83A\83\8b\83t\83@\83x\83b\83g\8f¬\95\8e\9a\81B\95W\8f\80\82Ì\90¸\93x\82Í6\8c\85\82Å\82·\81B*/\r
-                               \r
-                       } else if(c == 'E'){    /*\83f\81[\83^\82ð\8ew\90\94\8c`\8e®\82Å\8fo\97Í\82µ\82Ü\82·\81BE:\83A\83\8b\83t\83@\83x\83b\83g\91å\95\8e\9a\81B\95W\8f\80\82Ì\90¸\93x\82Í6\8c\85\82Å\82·\81B*/\r
-                       } else if(c == 'g'){    /*\92Ê\8fí\82Íf\83t\83H\81[\83}\83b\83g\8ew\92è\8eq\82Æ\93¯\82\93®\8dì\82ð\82µ\82Ü\82·\82ª\81A\8ew\90\94\95\94\82ª-5\88È\89º\82©\81A\97L\8cø\90¸\93x\88È\8fã\82Ì\82Æ\82«\82Í*/\r
-                       } else if(c == 'G'){    /*e,E\83t\83H\81[\83}\83b\83g\8ew\92è\8eq\82Æ\93¯\82\93®\8dì\82ð\82µ\82Ü\82·\81B\82±\82Ì\8f\91\8e®\82Ì\96Ú\93I\82Í\81A\82È\82é\82×\82­\92Z\82¢\95\\8c»\82Å\8fo\97Í\82·\82é\82±\82Æ\82Å\82·\81B*/\r
-                       } else if(c == 'p'){    /*\83f\81[\83^\82ð\89½\82ç\82©\82Ì\83|\83C\83\93\83^\82Æ\89ð\8eß\82µ\82Ä\81A\82»\82Ì\8ew\82µ\8e¦\82·\83A\83h\83\8c\83X\82ð\8fo\97Í\82µ\82Ü\82·\81B*/\r
-                       } else if(c == 'n'){    /*\82±\82Ì\83t\83H\81[\83}\83b\83g\8ew\92è\8eq\82ð\8aÜ\82Þ\83t\83H\81[\83}\83b\83g\8ew\92è\82É\92B\82·\82é\82Ü\82Å\81A\8d¡\89ñ\8fo\97Í\82µ\82½\95\8e\9a\90\94\82ð\81A\83f\81[\83^\82ðuint *\82Æ\82µ\82Ä\89ð\8eß\82µ\81A\83|\83C\83\93\83^\82ª\8ew\82µ\8e¦\82·\90æ\82Ìuint\8c^\95Ï\90\94\82É\91ã\93ü\82µ\82Ü\82·\81B*/\r
-                       } else if(0x30 <= c && c <= 0x39){      /*\90\94\8e\9a*/\r
-                               c -= 0x30;\r
-                               if(fill_length == 0xffffffff && c == 0){        /*\8dÅ\8f\89\82Ì\83[\83\8d:\83[\83\8d\8f[\93U\82ð\97v\8b\81*/\r
-                                       flag_fill_zero = True;\r
-                                       fill_length = 0;\r
-                               } else{\r
-                                       if(fill_length == 0xffffffff){\r
-                                               fill_length = c;\r
-                                       } else{\r
-                                               fill_length = (fill_length * 10) + c;\r
-                                       }\r
-                               }\r
-                       } else{\r
-                               CFunction_vsnprintf_Write_DestinationBuffer(&work, c);\r
-                               work.format_phase = 0;\r
-                       }\r
-               } else{ /*\88ê\94Ê\95\8e\9a\82©\82à*/\r
-                       if(c == '%'){   /*\8e\9f\82©\82ç\82Í\8f\91\8e®\8ew\92è*/\r
-                               flag_fill_zero = False;\r
-                               fill_length = 0xffffffff;\r
-                               work.format_phase = 1;\r
-                       } else{ /*\88ê\94Ê\95\8e\9a\8fo\97Í\92\86*/\r
-                               CFunction_vsnprintf_Write_DestinationBuffer(&work, c);\r
-                       }\r
-               }\r
-       }\r
-\r
-       CFunction_vsnprintf_End(&work);\r
-\r
-       return work.index_destination_buf;\r
-}\r
-\r
-void CFunction_vsnprintf_Initialize_WorkArea(CFunction_vsnprintf_WorkArea *work, uchar s[], const uchar format[], uint n, uint vargs[])\r
-{\r
-       work->destination_buf = s;\r
-       work->length_destination_buf = n;\r
-       work->index_destination_buf = 0;\r
-\r
-       work->format_buf = format;\r
-       work->index_format_buf = 0;\r
-\r
-       work->temporary_data[15] = 0x00;\r
-\r
-       work->vargs = vargs;\r
-       work->index_vargs = 0;\r
-\r
-       work->format_phase = 0;\r
-\r
-       return;\r
-}\r
-\r
-int CFunction_vsnprintf_Check_FormatBuffer(CFunction_vsnprintf_WorkArea *work)\r
-{\r
-       if(work->format_buf[work->index_format_buf] == 0x00){\r
-               return -1;\r
-       }\r
-       return 0;\r
-}\r
-\r
-int CFunction_vsnprintf_Check_DestinationBuffer(CFunction_vsnprintf_WorkArea *work)\r
-{\r
-       if(work->index_destination_buf >= work->length_destination_buf){\r
-               return -1;\r
-       }\r
-       return 0;\r
-}\r
-\r
-uchar CFunction_vsnprintf_Read_FormatBuffer(CFunction_vsnprintf_WorkArea *work)\r
-{\r
-       if(CFunction_vsnprintf_Check_FormatBuffer(work) == -1){\r
-               return 0;\r
-       }\r
-       work->index_format_buf++;\r
-       return work->format_buf[work->index_format_buf - 1];\r
-}\r
-\r
-void CFunction_vsnprintf_Write_DestinationBuffer(CFunction_vsnprintf_WorkArea *work, uchar c)\r
-{\r
-       if(CFunction_vsnprintf_Check_DestinationBuffer(work) != -1){\r
-               if(work->destination_buf != 0){\r
-                       work->destination_buf[work->index_destination_buf] = c;\r
-               }\r
-       }\r
-       work->index_destination_buf++;\r
-       return;\r
-}\r
-\r
-void CFunction_vsnprintf_End(CFunction_vsnprintf_WorkArea *work)\r
-{\r
-       if(work->destination_buf != 0){\r
-               work->destination_buf[work->index_destination_buf] = 0x00;\r
-       }\r
-       return;\r
-}\r
-\r
-uint CFunction_vsnprintf_Get_NextArgument(CFunction_vsnprintf_WorkArea *work)\r
-{\r
-       work->index_vargs++;\r
-       return work->vargs[work->index_vargs - 1];\r
-}\r
-\r
-void CFunction_vsnprintf_To_String_From_Hex_Upper(CFunction_vsnprintf_WorkArea *work, uint hex)\r
-{\r
-/*\83e\83\93\83|\83\89\83\8a\83f\81[\83^\82É\81A\89E\8bl\82ß\81A8\8c\85\8cÅ\92è\81A\8bó\94\92\8f[\93U\81A\8fI\92[null\81A\91å\95\8e\9a*/\r
-       uint i;\r
-\r
-       for(i = 0; i < 8; i++){ /*\92l\82Ì\95ª\94z*/\r
-               work->temporary_data[7 - i] = (hex >> (i << 2)) & 0x0000000f;\r
-       }\r
-       work->temporary_data[8] = 0x00; /*\8fI\92[null*/\r
-       for(i = 0; i < 8; i++){ /*\8bó\94\92\8f[\93U*/\r
-               if(work->temporary_data[i] != 0x00){\r
-                       break;\r
-               }\r
-               work->temporary_data[i] = ' ';\r
-       }\r
-       for(; i < 8; i++){      /*ASCII\83R\81[\83h\82Ö\95Ï\8a·\81i\91å\95\8e\9a\81j*/\r
-               if(work->temporary_data[i] > 9){        /*\83A\83\8b\83t\83@\83x\83b\83g\91å\95\8e\9a\82Ö\95Ï\8a·*/\r
-                       work->temporary_data[i] += 55;\r
-               } else{ /*\90\94\8e\9a\82Ö\95Ï\8a·*/\r
-                       work->temporary_data[i] += 48;\r
-               }\r
-       }\r
-       return;\r
-}\r
-\r
-void CFunction_vsnprintf_To_String_From_Hex_Lower(CFunction_vsnprintf_WorkArea *work, uint hex)\r
-{\r
-/*\83e\83\93\83|\83\89\83\8a\83f\81[\83^\82É\81A\89E\8bl\82ß\81A8\8c\85\8cÅ\92è\81A\8bó\94\92\8f[\93U\81A\8fI\92[null\81A\8f¬\95\8e\9a*/\r
-       uint i;\r
-\r
-       for(i = 0; i < 8; i++){ /*\92l\82Ì\95ª\94z*/\r
-               work->temporary_data[7 - i] = (hex >> (i << 2)) & 0x0000000f;\r
-       }\r
-       work->temporary_data[8] = 0x00; /*\8fI\92[null*/\r
-       for(i = 0; i < 8; i++){ /*\8bó\94\92\8f[\93U*/\r
-               if(work->temporary_data[i] != 0x00){\r
-                       break;\r
-               }\r
-               work->temporary_data[i] = ' ';\r
-       }\r
-       for(; i < 8; i++){      /*ASCII\83R\81[\83h\82Ö\95Ï\8a·\81i\8f¬\95\8e\9a\81j*/\r
-               if(work->temporary_data[i] > 9){        /*\83A\83\8b\83t\83@\83x\83b\83g\8f¬\95\8e\9a\82Ö\95Ï\8a·*/\r
-                       work->temporary_data[i] += 87;\r
-               } else{ /*\90\94\8e\9a\82Ö\95Ï\8a·*/\r
-                       work->temporary_data[i] += 48;\r
-               }\r
-       }\r
-       return;\r
-}\r
-\r
-void CFunction_vsnprintf_To_String_From_Decimal_Unsigned(CFunction_vsnprintf_WorkArea *work, uint d)\r
-{\r
-/*\83e\83\93\83|\83\89\83\8a\83f\81[\83^\82É\81A\89E\8bl\82ß\81A10\8c\85\8cÅ\92è\81A\8bó\94\92\8f[\93U\81A\8fI\92[null*/\r
-       uint i;\r
-\r
-       for(i = 0; i < 10; i++){        /*\92l\82Ì\95ª\94z*/\r
-               work->temporary_data[9 - i] = d % 10;\r
-               d = d / 10;\r
-       }\r
-       work->temporary_data[10] = 0x00;        /*\8fI\92[null*/\r
-       for(i = 0; i < 10; i++){        /*\8bó\94\92\8f[\93U*/\r
-               if(work->temporary_data[i] != 0x00){\r
-                       break;\r
-               }\r
-               work->temporary_data[i] = ' ';\r
-       }\r
-       for(; i < 10; i++){     /*ASCII\83R\81[\83h\82Ö\95Ï\8a·*/\r
-               work->temporary_data[i] += 48;\r
-       }\r
-       return;\r
-}\r
-\r