INCDIR = $(HOME)/include
 
 ARFLAGS = -rc
-PARAMLIBES = caParam tclParam
+PARAMLIBES = caParam tclParam ncaParam ntclParam fileParam psqlParam oraParam
 CXXPARAMOBJS = ora/ora tcl/tcl tcl/struct file/file param/enh
 
-VPATH = ca:tcl
+VPATH = ca:tcl:nca:ntcl:file:psql:ora
 
-all : $(patsubst %,lib%.a,$(PARAMLIBES)) libcxxParam.a
+all : c cxx
+
+c : $(patsubst %,lib%.a,$(PARAMLIBES)) 
+
+cxx : libcxxParam.a
 
 libcxxParam.a : $(patsubst %,%Param.o,$(CXXPARAMOBJS))
        $(AR) $(ARFLAGS) $@ $?
 
+CFLAGS = -g -I../param -I$(ORACLE_HOME)/precomp/public/
 CXXFLAGS = -g -I../param -I$(ORACLE_HOME)/precomp/public/
 
 ORACLE_HOME = /usr/local/oracle/product/8.0.5
 
 {
 }
 
-int Param_getInt(const Param *my, const char *n, const char *i, int *v)
+int Param_getInt(const Param *my, const char *n, const char *i, unsigned long int *v)
 {
        return Param_getIntArray(my, n, i, 1, v);
 }
        return Param_getStringArray(my, n, i, 1, &v);
 }
 
-int Param_getIntArray(const Param *my, const char *n, const char *i, int num, int *v)
+int Param_getIntArray(const Param *my, const char *n, const char *i, int num, unsigned long int *v)
 {
        for (int i = 0 ; i<num ; i++) {
                v[i] = 0;
 
 #define _POSIX_C_SOURCE 199509L
 
-/* Oracle communication area */
-#include <oraca.h>
-/* SQL communication area */ 
-#include <sqlca.h>
-
 #include "param.h"
 
 int conParam(Param *my)
 {
 }
 
-int Param_getInt(const Param *my, const char *n, const char *i, int *v)
+int Param_getInt(const Param *my, const char *name, const char *idx, unsigned long int *val)
 {
-       return Param_getIntArray(my, n, i, 1, v);
+       return Param_getIntArray(my, name, idx, 1, val);
 }
 
-int Param_getString(const Param *my, const char *n, const char *i, char *v)
+int Param_getString(const Param *my, const char *name, const char *idx, char *v)
 {
-       return Param_getStringArray(my, n, i, 1, &v);
+       return Param_getStringArray(my, name, idx, 1, &val);
 }
 
-int Param_getIntArray(const Param *my, const char *n, const char *i, int num, int *v)
+int Param_getIntArray(const Param *my, const char *name, const char *idx, int num, unsigned long int *val)
 {
-       for (int i = 0 ; i<num ; i++) {
-               v[i] = 0;
+       int i;
+       for (i = 0 ; i<num ; i++) {
+               val[i] = 0;
        }
        return num;
 }
 
-int Param_getStringArray(const Param *my, const char *n, const char *i, int num, char **v)
+int Param_getStringArray(const Param *my, const char *name, const char *idx, int num, char **val)
 {
-       for (int i = 0 ; i<num ; i++) {
-               v[i] = "Blub";
+       int i;
+       for (i = 0 ; i<num ; i++) {
+               val[i] = "Blub";
        }
        return num;
 }
 
 #include <stdlib.h>
 #include <string.h>
 
+#include <hadesstd.h>
+
 #include "param.h"
 
 int conParam(Param *my)
        Tcl_DeleteInterp(my->interp);
 }
 
-int Param_getInt(const Param *my, const char *name, const char *idx, int *val)
+int Param_getInt(const Param *my, const char *name, const char *idx, unsigned long int *val)
 {
        int status;
        char valstr[PARAM_MAX_VALUE_LEN];
        return 1;
 }
 
-int Param_getIntArray(const Param *my, const char *name, const char *idx, int num, int *val)
+int Param_getIntArray(const Param *my, const char *name, const char *idx, int num, unsigned long int *val)
 {
        int status;
        int tmp;
+       int i;
        char index[PARAM_MAX_NAME_LEN];
-       for (int i = 0 ; i < num ; i++) {
+       for (i = 0 ; i < num ; i++) {
                sprintf(index,"%s%d", idx, i);
                if ((tmp = Param_getInt(my, name, index, val[i]) == 1) && (status >= 0)) {
                        status++;
 {
        int status;
        int tmp;
+       int i;
        char index[PARAM_MAX_NAME_LEN];
-       for (int i = 0 ; i < num ; i++) {
+       for (i = 0 ; i < num ; i++) {
                sprintf(index,"%s%d", idx, i);
                if ((tmp = Param_getString(my, name, index, val[i]) == 1) && (status >= 0)) {
                        status++;