Index: include/stdarg.h
===================================================================
--- include/stdarg.h	(revision 392c73cae2c094d4aed187bb903b3e3d4c75d6c6)
+++ include/stdarg.h	(revision 392c73cae2c094d4aed187bb903b3e3d4c75d6c6)
@@ -0,0 +1,13 @@
+/*
+   =============================================================================
+	stdarg.h -- variable argument list macros
+	Version 1 -- 2017-07-07 -- Thomas Lopatic
+   =============================================================================
+*/
+
+typedef	char	*va_list;
+
+#define	va_start(ap, last)	ap = (char *)&last + sizeof(last)
+#define	va_arg(ap, type)	(ap += sizeof(type), ap[-1])
+#define	va_end(ap)
+
Index: include/varargs.h
===================================================================
--- include/varargs.h	(revision df097bf59e892ec2e9bbb4a5696044afa1d5bf16)
+++ 	(revision )
@@ -1,20 +1,0 @@
-/*
-   =============================================================================
-	varargs.h -- variable argument list macros
-	Version 3 -- 1987-06-16 -- D.N. Lynx Crowe
-
-	WARNING:  Be sure that the 'mode' in the sizeof(mode) in va_arg
-	matches the size of the actual argument on the stack.  If it doesn't,
-	improper argument list fetches will occur.
-	(Lattice has problems with this, as all arguments except double are
-	the same size.)
-   =============================================================================
-*/
-
-typedef	char	*va_list;
-
-#define	va_dcl	int	va_alist;
-#define	va_start(list)	list = (char *) &va_alist
-#define	va_end(list)
-
-#define	va_arg(list,mode)	((mode *)(list += sizeof(mode)))[-1]
