-typedef unsigned char _xdata * va_list ;
-#define va_arg(marker,type) *((type _xdata * )(marker -= sizeof(type)))
-#define va_start(marker,first) { marker = (va_list) ((char _xdata * )&first) ; }
+#elif defined(__ds390) || defined(__ds400)
+
+typedef unsigned char * va_list ;
+#define va_arg(marker,type) *((type *)(marker -= sizeof(type)))
+#define va_start(marker,first) { marker = &first; }