-#ifndef _BASETSD_H
-#define _BASETSD_H
+#ifndef _BASETSD_H_
+#define _BASETSD_H_
+#pragma once
+
+#include <msvctarget.h>
#ifndef _M_AMD64
#if !defined(__ROS_LONG64__)
#error Not supported.
#endif
-#if !defined(_X86_) && !defined(_AMD64_) && !defined(_IA64_) && !defined(_ALPHA_) && \
- !defined(_ARM_) && !defined(_PPC_) && !defined(_MIPS_) && !defined(_68K_)
-
-#if defined(_M_AMD64) || defined(__x86_64__)
-#define _AMD64_
-#elif defined(_M_IX86) || defined(__i386__)
-#define _X86_
-#elif defined(_M_IA64) || defined(__ia64__)
-#define _IA64_
-#elif defined(_M_ALPHA) || defined(__alpha__)
-#define _ALPHA_
-#elif defined(_M_ARM) || defined(__arm__)
-#define _ARM_
-#elif defined(_M_PPC) || defined(__powerpc__)
-#define _PPC_
-#elif defined(_M_MRX000) || defined(__mips__)
-#define _MIPS_
-#elif defined(_M_M68K) || defined(__68k__)
-#define _68K_
-#endif
-
-#endif
-
-#if !defined(MIDL_PASS) && !defined(RC_INVOKED)
+#if defined(_MSC_VER) && !defined(MIDL_PASS) && !defined(RC_INVOKED)
#define POINTER_64 __ptr64
#if defined(_WIN64)
#define POINTER_32 __ptr32
#else
#define POINTER_64
#define POINTER_32
-#endif /* !defined(MIDL_PASS) && !defined(RC_INVOKED) */
+#endif /* defined(_MSC_VER) && !defined(MIDL_PASS) && !defined(RC_INVOKED) */
#if defined(_M_MRX000) || defined(_M_AMD64) || defined(_M_IA64)
typedef unsigned __int64 POINTER_64_INT;
typedef unsigned long POINTER_64_INT;
#endif
+#if defined(_IA64_) || defined(_AMD64_)
+ #define FIRMWARE_PTR
+#else
+ #define FIRMWARE_PTR POINTER_32
+#endif
+
#if 0 /* Not supported yet */
#define POINTER_SIGNED __sptr
#define POINTER_UNSIGNED __uptr
#endif
#endif /* !RC_INVOKED */
-#endif /* _BASETSD_H */
+#endif /* _BASETSD_H_ */