From 0688668ef5a10415cc3856e5d56bda07ca11098e Mon Sep 17 00:00:00 2001
From: alex <alex@c028cbd2-c16b-5b4b-a496-9718f37d4682>
Date: Thu, 1 May 2003 14:42:54 +0000
Subject: [PATCH] Patch level         : 2.0 464 Files correlati     : gfm.dll
 Ricompilazione Demo : [ ] Commento            : Modifiche per la compilazione
 Linux

git-svn-id: svn://10.65.10.50/trunk@11079 c028cbd2-c16b-5b4b-a496-9718f37d4682
---
 gfm/compaux.c   | 1 +
 gfm/demo12.c    | 2 +-
 gfm/demo13.c    | 5 +++--
 gfm/dfprintf.c  | 5 +----
 gfm/dfscanf.c   | 5 +----
 gfm/dftod.c     | 1 +
 gfm/dmbyp10tc.c | 6 ++----
 gfm/dprintf.c   | 6 ++----
 gfm/dscanf.c    | 4 +---
 gfm/dsprintf.c  | 7 +++----
 gfm/dsscanf.c   | 5 +----
 gfm/dzero.c     | 3 +--
 gfm/gf.h        | 6 +-----
 gfm/gfd.h       | 9 ++++++++-
 gfm/gmsystem.h  | 4 +---
 gfm/scanfx.c    | 6 +-----
 16 files changed, 29 insertions(+), 46 deletions(-)

diff --git a/gfm/compaux.c b/gfm/compaux.c
index 0db1b1991..c2b49b9bd 100755
--- a/gfm/compaux.c
+++ b/gfm/compaux.c
@@ -107,6 +107,7 @@ DEC	*nperd,	*intr, *pv, *pmt, *fv;
 		return(GM_NULL);
 	}
 
+	intper = 0;
 	ad = begend;
 
 	if (opt!=GM_N)	{
diff --git a/gfm/demo12.c b/gfm/demo12.c
index fc349df71..c2253aca2 100755
--- a/gfm/demo12.c
+++ b/gfm/demo12.c
@@ -15,7 +15,7 @@ void	SmartScan(s, pd)
 char	*s;
 DEC	*pd;
 {
-	bool	done;
+	short	done;
 	int	i;
 	
 	if (!pd)  {
diff --git a/gfm/demo13.c b/gfm/demo13.c
index 29132cbb4..0955d4363 100755
--- a/gfm/demo13.c
+++ b/gfm/demo13.c
@@ -1,7 +1,7 @@
 #include <stdio.h>
 #include "gm.h"
 void ErrorHandler(int,int);
-void main(void);
+int main(void);
 
 void ErrorHandler(code,ref)
 int code,ref;
@@ -12,7 +12,7 @@ int code,ref;
 	printf("%s error in function %s\n",serr,sfun);
 }
 
-void	main()
+int main()
 {
 	DEC	da, *a=&da, db, *b=&db, dc, *c=&dc, *p;
 	
@@ -31,4 +31,5 @@ void	main()
 		dprintf("%t / %t = %t\n",a,b,c);
 	else
 		dprintf("Division failed.\n");
+	return 0;
 }
diff --git a/gfm/dfprintf.c b/gfm/dfprintf.c
index 350534ae3..7c918e9ad 100755
--- a/gfm/dfprintf.c
+++ b/gfm/dfprintf.c
@@ -36,10 +36,7 @@
 #include "gm.h"
 #include "gmsystem.h"
 
-int FilePrintDecimal(stream,fmt, ELLIPSES)
-FILE *stream;
-char	*fmt;
-
+int FilePrintDecimal(FILE *stream, char	*fmt, ELLIPSES)
 {
 	char	**outval, buffer[256];
 	int	i;
diff --git a/gfm/dfscanf.c b/gfm/dfscanf.c
index 305b12cd6..cf965a853 100755
--- a/gfm/dfscanf.c
+++ b/gfm/dfscanf.c
@@ -39,10 +39,7 @@
 #include "gm.h"
 #include "gmsystem.h"
 
-int FileScanDecimal(fFile,sFmt, ELLIPSES)
-FILE *fFile;
-char *sFmt;
-
+int FileScanDecimal(FILE * fFile, char *sFmt, ELLIPSES)
 {
 	int	i;
 	char	**pOutVal;
diff --git a/gfm/dftod.c b/gfm/dftod.c
index 657ae07d2..23237ef55 100755
--- a/gfm/dftod.c
+++ b/gfm/dftod.c
@@ -31,6 +31,7 @@
 #include <stdio.h>
 #include "gm.h"
 #include "gmsystem.h"
+#include "math.h"
 
 DEC	*ConvDoubleToDecimal( x, f)
 DEC	*x;
diff --git a/gfm/dmbyp10tc.c b/gfm/dmbyp10tc.c
index 03dd46ff4..55d5b0086 100755
--- a/gfm/dmbyp10tc.c
+++ b/gfm/dmbyp10tc.c
@@ -30,11 +30,9 @@
 extern double pow(double, double);
 
 
-void    _DivUnsArrByPwrOf10Trunc(a,n,p)
-unsigned  SHORT       a[];
-int             n,p;
+void    _DivUnsArrByPwrOf10Trunc(unsigned  SHORT a[],int n,int p)
 {
-int ppdf,i;
+int ppdf;
 
   while (p>4)
     {
diff --git a/gfm/dprintf.c b/gfm/dprintf.c
index 364b8aedd..40752a903 100755
--- a/gfm/dprintf.c
+++ b/gfm/dprintf.c
@@ -30,13 +30,11 @@
  *
  */
 
-#include <stdio.h>
 #include "gm.h"
 #include "gmsystem.h"
+#include <stdio.h>
 
-int PrintDecimal(fmt, ELLIPSES)
-char	*fmt;
-
+int PrintDecimal(char * fmt, ELLIPSES)
 {
 	char	**outval, buffer[256];
 	int	i;
diff --git a/gfm/dscanf.c b/gfm/dscanf.c
index 84879561a..dc2661200 100755
--- a/gfm/dscanf.c
+++ b/gfm/dscanf.c
@@ -38,9 +38,7 @@
 #include "gm.h"
 #include "gmsystem.h"
 
-int ScanDecimal(sFmt, ELLIPSES)
-char *sFmt;
-
+int ScanDecimal(char * sFmt, ELLIPSES)
 {
 	int	i;
 	char	**pOutVal;
diff --git a/gfm/dsprintf.c b/gfm/dsprintf.c
index a0e7e2bb7..cf562c37b 100755
--- a/gfm/dsprintf.c
+++ b/gfm/dsprintf.c
@@ -37,10 +37,7 @@
 
 static int _StackSize(char, char);
 
-int StringPrintDecimal(buffer,fmt, ELLIPSES)
-char *buffer;
-char *fmt;
-
+int StringPrintDecimal(char * buffer, char * fmt, ELLIPSES)
 {
 	char	newfmt[256], lastcode, thiscode;
 	int	*inval,	outval[21];
@@ -283,6 +280,7 @@ char cPrec;
 #ifndef	LATTICE
 #ifndef	M_I386
 #ifndef WIN32
+#ifndef __GNUC__
 			if (cPrec=='F')
 				w = sizeof(char	far *);
 			else if	(cPrec=='N')
@@ -290,6 +288,7 @@ char cPrec;
 			else
 #endif
 #endif
+#endif
 #endif
 				w = sizeof(char	*);
 			break;
diff --git a/gfm/dsscanf.c b/gfm/dsscanf.c
index b4101b6db..32eaa2817 100755
--- a/gfm/dsscanf.c
+++ b/gfm/dsscanf.c
@@ -38,10 +38,7 @@
 #include "gm.h"
 #include "gmsystem.h"
 
-int StringScanDecimal(sBuffer, sFmt, ELLIPSES)
-char *sBuffer;
-char *sFmt;
-
+int StringScanDecimal(char * sBuffer,char * sFmt, ELLIPSES)
 {
 	int	i;
 	char	**pOutVal;
diff --git a/gfm/dzero.c b/gfm/dzero.c
index 98da1934d..0cf5cb1dc 100755
--- a/gfm/dzero.c
+++ b/gfm/dzero.c
@@ -28,8 +28,7 @@
 #include "gm.h"
 #include "gmsystem.h"
 
-DEC	*ZeroDecimal(x)
-DEC	*x;
+DEC	*ZeroDecimal(DEC * x)
 {
 
 	_MacStart(GM_DZERO);
diff --git a/gfm/gf.h b/gfm/gf.h
index c178a14ca..0920976f3 100755
--- a/gfm/gf.h
+++ b/gfm/gf.h
@@ -27,15 +27,11 @@
 #define GF_CDECL /*cdecl eliminato */
 
 #define EOS     '\0'
-#ifdef M_I386
 typedef unsigned short  word;
-#else
-typedef unsigned int    word;
-#endif
 #ifndef GLOS2
 typedef char            BYTE;
 #endif
-typedef int             mbool; 
+typedef int             mbool;
 #define VIDEO   0x10
 #define DOSINT  0x21
 struct GFREGS   { int ax,bx,cx,dx,si,di,ds,es; };
diff --git a/gfm/gfd.h b/gfm/gfd.h
index 3d664e35e..2924617a0 100755
--- a/gfm/gfd.h
+++ b/gfm/gfd.h
@@ -1,6 +1,13 @@
 #ifndef __GFD_H
 #define __GFD_H
 
+#ifdef WIN32
+#define uint64 unsigned __int64
+#else
+#include <sys/types.h>
+#define uint64	u_int64_t
+#endif
+
 typedef struct idec {
         SHORT           attr;
         SHORT           id;
@@ -18,7 +25,7 @@ typedef struct ldec {
 typedef struct hdec {
         short             lattr;                  /* redef's for long's */
         short             lid;
-        unsigned __int64  hsl;
+        uint64            hsl;
         short             lmsd;
         } HDEC;
 
diff --git a/gfm/gmsystem.h b/gfm/gmsystem.h
index 24cb452fc..e33a3fba7 100755
--- a/gfm/gmsystem.h
+++ b/gfm/gmsystem.h
@@ -5,9 +5,7 @@
 *       Contains definitions and prototypes used by internal routines.
 *       Copyright (C)1987-1990 Greenleaf Software Inc.  All rights reserved.
 */
-#ifndef _MSC
-#define _MSC
-#endif
+
 #ifndef GMDOTH
 #include <gm.h>
 #endif
diff --git a/gfm/scanfx.c b/gfm/scanfx.c
index 8329972f9..bb6fa725a 100755
--- a/gfm/scanfx.c
+++ b/gfm/scanfx.c
@@ -46,11 +46,7 @@
 #include "import.h"
 #endif
 
-int _ScanfAux(wOpt,	sBuffer, sFmt, ELLIPSES)
-int wOpt;
-char *sBuffer;
-char *sFmt;
-
+int _ScanfAux(int wOpt,char *	sBuffer, char * sFmt, ELLIPSES)
 {
 	char	sNewFmt[256], cType, *pStrArr[21], *pTemp;
 	int	*pInVal, pOutVal[21];