Index: cpp/frams/param/param.h
===================================================================
--- cpp/frams/param/param.h	(revision 230)
+++ cpp/frams/param/param.h	(revision 247)
@@ -7,4 +7,5 @@
 
 #include <stdio.h>
+#include <stdint.h>
 #include <frams/util/sstring.h>
 #include <frams/util/list.h>
@@ -33,4 +34,7 @@
 #define PARAM_DEPRECATED	8192
 
+typedef int32_t paInt;
+#define PA_INT_SCANF "%d"
+
 // the result of param::set() is a combination of bits:
 
@@ -92,5 +96,5 @@
 
 	virtual SString getString(int) = 0;	///< get string value, you can only use this for "s" type property
-	virtual long getInt(int) = 0;	///< get long value, you can only use this for "d" type property
+	virtual paInt getInt(int) = 0;	///< get long value, you can only use this for "d" type property
 	virtual double getDouble(int) = 0;	///< get double value, you can only use this for "f" type property
 	virtual ExtObject getObject(int) = 0;	///< get object reference, you can only use this for "o" type property
@@ -101,5 +105,5 @@
 
 	SString getStringById(const char*prop);  ///< get string value, you can only use this for "s" type property
-	long getIntById(const char* prop);    ///< get long value, you can only use this for "d" type property
+	paInt getIntById(const char* prop);    ///< get long value, you can only use this for "d" type property
 	double getDoubleById(const char* prop);///< get double value, you can only use this for "f" type property
 	ExtObject getObjectById(const char* prop);///< get object reference, you can only use this for "o" type property
@@ -109,5 +113,5 @@
 	int setInt(int i, const char* str);
 	int setDouble(int i, const char* str);
-	virtual int setInt(int, long) = 0;		///< set long value, you can only use this for "d" type prop
+	virtual int setInt(int, paInt) = 0;		///< set long value, you can only use this for "d" type prop
 	virtual int setDouble(int, double) = 0;	///< set double value, you can only use this for "f" type prop
 	virtual int setString(int, const SString &) = 0; 	///< set string value, you can only use this for "s" type prop
@@ -119,5 +123,5 @@
 	int set(int, const char*);		///< oldstyle set, can convert string to long or double
 
-	int setIntById(const char* prop, long);///< set long value, you can only use this for "d" type prop
+	int setIntById(const char* prop, paInt);///< set long value, you can only use this for "d" type prop
 	int setDoubleById(const char* prop, double);///< set double value, you can only use this for "f" type prop
 	int setStringById(const char* prop, const SString &);///< set string value, you can only use this for "s" type prop
@@ -128,5 +132,5 @@
 	/** get valid minimum, maximum and default value for property 'prop'
 		@return 0 if min/max/def information is not available */
-	int getMinMax(int prop, long& minumum, long& maximum, long& def);
+	int getMinMax(int prop, paInt& minumum, paInt& maximum, paInt& def);
 	/** get valid minimum, maximum and default value for property 'prop'
 		@return 0 if min/max/def information is not available */
@@ -172,8 +176,8 @@
 #define SETOFFSET(_proc_) ( (int (*)(void*,const ExtValue*)) &(FIELDSTRUCT :: _proc_ ## _statrick))
 
-#define FIELDOFFSET(_fld_) ((long)((char*)(&((FIELDSTRUCT*)&MakeCodeGuardHappy)->_fld_)-((char*)((FIELDSTRUCT*)&MakeCodeGuardHappy))))
+#define FIELDOFFSET(_fld_) ((intptr_t)((char*)(&((FIELDSTRUCT*)&MakeCodeGuardHappy)->_fld_)-((char*)((FIELDSTRUCT*)&MakeCodeGuardHappy))))
 
 #ifdef DEBUG
-#define PARAM_ILLEGAL_OFFSET ((long)0xdeadbeef)
+#define PARAM_ILLEGAL_OFFSET ((intptr_t)0xdeadbeef)
 #else
 #define PARAM_ILLEGAL_OFFSET 0
@@ -205,5 +209,5 @@
 	short group, flags;
 	const char *name, *type;
-	long offset;
+	intptr_t offset;
 	void *fun1; ///< procedure or get
 	void *fun2; ///< set
@@ -214,5 +218,5 @@
 {
 public:
-	ParamEntryConstructor(const char *_id, short _group = 0, short _flags = 0, const char *_name = 0, const char *_type = 0, long _offset = 0, void *_fun1 = 0, void *_fun2 = 0, const char *_help = 0)
+	ParamEntryConstructor(const char *_id, short _group = 0, short _flags = 0, const char *_name = 0, const char *_type = 0, intptr_t _offset = 0, void *_fun1 = 0, void *_fun2 = 0, const char *_help = 0)
 	{
 		id = _id; group = _group; flags = _flags; name = _name; type = _type; offset = _offset; fun1 = _fun1; fun2 = _fun2; help = _help;
@@ -254,5 +258,5 @@
 
 	SString getString(int);
-	long getInt(int);
+	paInt getInt(int);
 	double getDouble(int);
 	ExtObject getObject(int);
@@ -270,5 +274,5 @@
 	}
 
-	int setInt(int, long);
+	int setInt(int, paInt);
 	int setDouble(int, double);
 	int setString(int, const SString &);
