summaryrefslogtreecommitdiff
path: root/x68/fconvert.c
diff options
context:
space:
mode:
Diffstat (limited to 'x68/fconvert.c')
-rw-r--r--x68/fconvert.c81
1 files changed, 0 insertions, 81 deletions
diff --git a/x68/fconvert.c b/x68/fconvert.c
deleted file mode 100644
index 9a0bc0e..0000000
--- a/x68/fconvert.c
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * PROJECT C Library, X68000 PROGRAMMING INTERFACE DEFINITION
- * --------------------------------------------------------------------
- * This file is written by the Project C Library Group, and completely
- * in public domain. You can freely use, copy, modify, and redistribute
- * the whole contents, without this notice.
- * --------------------------------------------------------------------
- * $Id$
- */
-/* changed 1997.2.3 by K.Okabe */
-
-/* System headers */
-#include <stdlib.h>
-#include <sys/xstdlib.h>
-
-/* Functions */
-char *fconvert (double x, int ndigit, int *decpt, int *sign, char *buffer)
-{
- int pos, n;
- char *src, *dst;
- char string[24];
- int figup;
-
- /* 18桁の文字列に変換 */
- _dtos18 (x, decpt, sign, string);
-
- /* コピー元アドレスを設定 */
- src = string;
-
- /* コピー先アドレスを設定 */
- dst = buffer;
-
- /* 小数点位置を得る */
- pos = *decpt;
-
- /* 小数点位置が負なら */
- if (pos < 0) {
-
- /* 埋める桁数を計算 */
- n = min (-pos, ndigit);
-
- /* 先頭を0で埋める */
- while (n-- > 0)
- *dst++ = '0';
-
- /* 小数点位置は0になる */
- *decpt = 0;
-
- }
-
- /* 残りのコピー桁数 */
- n = ndigit + pos;
-
- /* 格納先にコピー */
- while (n-- > 0) {
-
- /* 足りない部分は0で埋める */
- if (*src == '\0') {
- while (n-- >= 0)
- *dst++ = '0';
- break;
- }
-
- /* 変換文字列からコピー */
- *dst++ = *src++;
-
- }
-
- /* 丸める */
- *decpt += (figup = _round (buffer, dst, *src));
-
- /* 繰り上がりがあれば末尾に0を追加する */
- if (figup)
- *dst++ = '0';
-
- /* 終端に NUL を打つ */
- *dst = '\0';
-
- /* アドレスを返す */
- return buffer;
-}