--- /dev/null
+s/^.*[ ]ALLOCDEF[ ].*"\(.*\)"[ ]*\([0-9][0-9]*\).*$/\
+\/* allocation definitions of struct \1 *\/\
+extern char *st_alloc();\
+extern struct \1 *h_\1;\
+#ifdef DEBUG\
+extern int cnt_\1;\
+extern char *std_alloc();\
+#define new_\1() ((struct \1 *) std_alloc((char **)\&h_\1, sizeof(struct \1), \2, \&cnt_\1))\
+#else\
+#define new_\1() ((struct \1 *) st_alloc((char **)\&h_\1, sizeof(struct \1), \2))\
+#endif\
+#define free_\1(p) st_free(p, \&h_\1, sizeof(struct \1))\
+/
--- /dev/null
+s/^.*[ ]STATICALLOCDEF[ ].*"\(.*\)"[ ]*\([0-9][0-9]*\).*$/\
+\/* allocation definitions of struct \1 *\/\
+extern char *st_alloc();\
+struct \1 *h_\1;\
+#ifdef DEBUG\
+int cnt_\1;\
+#define new_\1() ((struct \1 *) std_alloc((char **)\&h_\1, sizeof(struct \1), \2, \&cnt_\1))\
+#else\
+#define new_\1() ((struct \1 *) st_alloc((char **)\&h_\1, sizeof(struct \1), \2))\
+#endif\
+#define free_\1(p) st_free(p, \&h_\1, sizeof(struct \1))\
+/
\ No newline at end of file
--- /dev/null
+s/^.*[ ]ALLOCDEF[ ].*"\(.*\)".*$/struct \1 *h_\1 = 0;\
+#ifdef DEBUG\
+int cnt_\1 = 0;\
+#endif/p
--- /dev/null
+##################################################################
+# This script is used to generate a parameter header file from
+# the Parameters files.
+#
+# The Parameters file and this script should have UNIX line endings
+# (\n) otherwise strange issues could occur.
+#
+#################################################################
+/!File: /d
\ No newline at end of file
--- /dev/null
+/{[A-Z]/!d\r
+s/.*{//\r
+s/,.*//\r
+s/.*/%token &;/\r