Anonymous avatar Anonymous committed fc85512

Platform-specific function library.

Comments (0)

Files changed (23)

+Replace shared directory
+------------------------
+This shared directory contains normal headers that can be included
+by any program.  These headers decided based on the operating
+system which platform specific header to include.  You should link
+with the source from the directory which suit the platform.
+
+All functions stored here sould be ANSI C compatible and begin with:
+
+replaceables_
+/* This is a replaceable C file for the non-ANSI methods of getting a
+single character from the user, this is for Borland C++ only */
+
+#include <ConIO.H>
+#pragma hdrstop
+
+#include "Replace\DOS\_In1Char.H" /* Our header */
+/*-------------------------------------------------------------------------*/
+int getonechar(void)
+{
+    return getch(); /* Use non-ANSI function */
+}
+/*-------------------------------------------------------------------------*/
+#ifndef __INC_REPLACEABLES_DOS_IN1CHAR
+#define __INC_REPLACEABLES_DOS_IN1CHAR
+/*-------------------------------------------------------------------------*/
+/* Functions for getting a single keystroke from the user in Borland C++ */
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+int getonechar(void);
+
+#ifdef __cplusplus
+}
+#endif
+/*-------------------------------------------------------------------------*/
+#endif /*__INC_REPLACEABLES_DOS_IN1CHAR*/
+/* This is a replaceable C file for the non-ANSI methods of suspending a
+system for a number of seconds or milliseconds, this version is for DOS */
+
+#include <DOS.H>
+#pragma hdrstop
+
+#include "Replace\DOS\_Sleepx.H" /* Our header */
+/*-------------------------------------------------------------------------*/
+void SleepSecs(unsigned Secs)
+{
+	sleep(Secs); /* Use non-ANSI function */
+}
+/*-------------------------------------------------------------------------*/
+void SleepMS(unsigned ms)
+{
+	delay(ms); /* use non-ANSI function */
+}
+/*-------------------------------------------------------------------------*/
+#ifndef __INC_REPLACEABLES_DOS_SLEEPX
+#define __INC_REPLACEABLES_DOS_SLEEPX
+/*-------------------------------------------------------------------------*/
+/* Functions for suspended execution under DOS */
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void SleepSecs(unsigned Secs);
+void SleepMS(unsigned ms);
+
+#ifdef __cplusplus
+}
+#endif
+/*-------------------------------------------------------------------------*/
+#endif /*__INC_REPLACEABLES_DOS_SLEEPX*/
+/* Platform specific - DOS
+version of 'replacables_GetTempPath()'/ */
+
+#include <StdLib.H>
+#include <String.H>
+#include "Stds\DLStdInc.H" /* Daybo Logic standard inclusions */
+#pragma hdrstop
+
+#include "Replace\DOS\_TmpPath.H"
+/*-------------------------------------------------------------------------*/
+DWORD replaceables_GetTempPath(
+	DWORD nBufferLength, /* # chars buffer can take */
+	char* lpBuffer /* Address of buffer to take string */
+)
+{
+	/* vars */
+	char* envstrptr; /* pointer to an environment string */
+
+	envstrptr = getenv("TMP"); /* get TMP environment */
+	if (envstrptr) /* Environment pointer OK */
+	{
+		if (strlen(envstrptr) <= nBufferLength) /* user buffer large enough? */
+		{
+			strcpy(lpBuffer, envstrptr); /* copy environment string */
+			return 0; /* no further processing required */
+		}
+		else
+		{
+			/* buffer was not enough */
+			return strlen(envstrptr)+1; /* give buffer size required */
+		}
+	}
+	envstrptr = getenv("TEMP"); /* use other environment (TEMP) as replacemanet, incase no TMP (which takes priority) */
+	if (envstrptr) /* Environment pointer OK */
+	{
+		if (strlen(envstrptr) <= nBufferLength) /* user buffer large enough? */
+		{
+			strcpy(lpBuffer, envstrptr); /* copy environment string */
+			return 0; /* success */
+		}
+		else /* buffer was not large enough */
+		{
+			return strlen(envstrptr)+1; /* give buffer size required */
+		}
+	}
+
+	/* no appropriate temporary paths */
+	if (nBufferLength <= 2) /* not even enough for two characters? */
+	{
+		return 3; /* please alloc array of three bytes */
+	}
+	strcpy(lpBuffer, ".\\"); /* say current directory */
+	return 0; /* OK */
+}
+/*-------------------------------------------------------------------------*/
+#ifndef __INC_REPLACEABLES_DOS_TMPPATH_H
+#define __INC_REPLACEABLES_DOS_TMPPATH_H
+
+/* Specific TmpPath for DOS
+		  - David Duncan Ross Palmer */
+/*-------------------------------------------------------------------------*/
+/* Route arounds for Windows code:
+#define replaceables_GetTempPathA replaceables_GetTempPath
+#define replaceables_GetTempPathW replaceables_GetTempPath
+
+/* WARNING! Code designed around GetTempPathW() will probally fail
+on DOS */
+
+DWORD replaceables_GetTempPath(
+	DWORD nBufferLength, /* # chars buffer can take */
+	char* lpBuffer /* Address of buffer to take string */
+);
+/*-------------------------------------------------------------------------*/
+#endif /*__INC_REPLACEABLES_DOS_TMPPATH_H*/
+/* Porting capable include file for DskSpace library.
+This file includes the header for the library for whatever
+operating system the program is being built for. */
+
+#ifndef __INC_DSKSPACE_MASTER_H
+#define __INC_DSKSPACE_MASTER_H
+
+#if defined(__OS_WIN_3__) /* Windows 3.0 ? */
+	#include "WinStuff\DskSpace\DskSpace.H" /* Use Windows 16-bit version */
+#elif defined(__OS_WIN_NT__) /* Windows NT? */
+	#include "WinStuff\DskSpace\DskSpace.H" /* Use Win32s version */
+#elif defined(__OS_WIN_95__) /* Windows 95? */
+	#include "WinStuff\DskSpace\DskSpace.H" /* Use Win32s version */
+#elif defined(__OS_WIN_98__) /* Windows 98? */
+	#include "WinStuff\DskSpace\DskSpace.H" /* Use Win32s version */
+#elif defined(__OS_WIN_3_1__) /* Windows 3.1? */
+	#include "WinStuff\DskSpace\DskSpace.H" /* use 16-bit Windows version */
+#elif defined(__OS_WIN_3_11__) /* Windows 3.11? */
+	#include "WinStuff\DskSpace\DskSpace.H" /* Use 16-bit Windows version */
+#elif defined(__OS_DOS__) /* DOS? */
+	#error ("No DskSpace library has been written for DOS, get Overlord DDRP to do it")
+#elif defined(__OS_MAC__) /* Mac? */
+	#error ("No DskSpace library has been written for the Mac, get Overlord DDRP to do it")
+#else /* Oh-no! */
+	#error ("Must define OS macro or add function for OS and update standards")
+#endif
+
+#endif /*__INC_DSKSPACE_MASTER_H*/
+#ifndef __INC_REPLACABLES
+#define __INC_REPLACABLES
+
+#include "Stds\DLStdInc.H"
+/*-------------------------------------------------------------------------*/
+/* Replacables - functions that are changed for different target
+platforms.  Copyright 1998, Daybo Logic. */
+
+#include "Replace\TmpPath.H" /* For dealing with temp directories */
+#include "Replace\SleepX.H" /* For dealing with suspending execution */
+#include "Replace\In1Char.H" /* For dealing with single char input */
+/*-------------------------------------------------------------------------*/
+#endif /*__INC_REPLACABLES*/
+#ifndef __INC_REPLACABLES_SLEEPX_H
+#define __INC_REPLACABLES_SLEEPX_H
+
+/* Non-platform specific replacable header, this will include
+the appropriate header based on the mandatory definition OS_*/
+/*-------------------------------------------------------------------------*/
+#if defined(__OS_WIN_3__) /* Windows 3.0 ? */
+	#include "Replace\Win16bit\_Sleepx.H" /* Use Windows 16-bit version */
+#elif defined(__OS_WIN_NT__) /* Windows NT? */
+	#include "Replace\Win32s\_Sleepx.H" /* Use Win32s version */
+#elif defined(__OS_WIN_95__) /* Windows 95? */
+	#include "Replace\Win32s\_Sleepx.H" /* Use Win32s version */
+#elif defined(__OS_WIN_98__) /* Windows 98? */
+	#include "Replace\Win32s\_Sleepx.H" /* Use Win32s version */
+#elif defined(__OS_WIN_3_1__) /* Windows 3.1? */
+	#include "Replace\Win16bit\_Sleepx.H" /* use 16-bit Windows version */
+#elif defined(__OS_WIN_3_11__) /* Windows 3.11? */
+	#include "Replace\Win16bit\_Sleepx.H" /* Use 16-bit Windows version */
+#elif defined(__OS_DOS__) /* DOS? */
+	#include "Replace\DOS\_Sleepx.H" /* Use the good old DOS version */
+#elif defined(__OS_MAC__) /* Mac? */
+	#include "Replace\Mac\_Sleepx.H" /* Use the one designed for the Mac */
+#else /* Oh-no! */
+	#error ("Must define OS macro or add function for OS and update standards")
+#endif
+/*-------------------------------------------------------------------------*/
+#endif /*__INC_REPLACABLES_SLEEPX_H*/
+/* Non-platform specific replacable header, this will include
+the appropriate header based on the mandatory definition OS_*/
+
+/* 16th July 1999: NightCodE doesn't like the warning cannot
+create precompiled header : code in header, let's disable it */
+
+#pragma warn -pch
+/*-------------------------------------------------------------------------*/
+#if defined(__OS_WIN_3__) /* Windows 3.0 ? */
+	#include "Replace\Win16bit\_Sleepx.C" /* Use Windows 16-bit version */
+#elif defined(__OS_WIN_NT__) /* Windows NT? */
+	#include "Replace\Win32s\_Sleepx.C" /* Use Win32s version */
+#elif defined(__OS_WIN_95__) /* Windows 95? */
+	#include "Replace\Win32s\_Sleepx.C" /* Use Win32s version */
+#elif defined(__OS_WIN_98__) /* Windows 98? */
+	#include "Replace\Win32s\_Sleepx.C" /* Use Win32s version */
+#elif defined(__OS_WIN_3_1__) /* Windows 3.1? */
+	#include "Replace\Win16bit\_Sleepx.C" /* use 16-bit Windows version */
+#elif defined(__OS_WIN_3_11__) /* Windows 3.11? */
+	#include "Replace\Win16bit\_Sleepx.C" /* Use 16-bit Windows version */
+#elif defined(__OS_DOS__) /* DOS? */
+	#include "Replace\DOS\_Sleepx.C" /* Use the good old DOS version */
+#elif defined(__OS_MAC__) /* Mac? */
+	#include "Replace\Mac\_Sleepx.C" /* Use the one designed for the Mac */
+#else /* Oh-no! */
+	#error ("Must define OS macro or add function for OS and update standards")
+#endif
+
+/* Turn warning back on */
+#pragma warn .pch
+#ifndef __INC_REPLACABLES_TMPPATH_H
+#define __INC_REPLACABLES_TMPPATH_H
+
+/* Non-platform specific replacable header, this will include
+the appropriate header based on the mandatory definition OS_*/
+/*-------------------------------------------------------------------------*/
+#if defined(__OS_WIN_3__) /* Windows 3.0 ? */
+        #include "Replace\Win16bit\_TmpPath.H" /* Use Windows 16-bit version */
+#elif defined(__OS_WIN_NT__) /* Windows NT? */
+        #include "Replace\Win32s\_TmpPath.H" /* Use Win32s version */
+#elif defined(__OS_WIN_95__) /* Windows 95? */
+        #include "Replace\Win32s\_TmpPath.H" /* Use Win32s version */
+#elif defined(__OS_WIN_98__) /* Windows 98? */
+        #include "Replace\Win32s\_TmpPath.H" /* Use Win32s version */
+#elif defined(__OS_WIN_3_1__) /* Windows 3.1? */
+        #include "Replace\Win16bit\_TmpPath.H" /* use 16-bit Windows version */
+#elif defined(__OS_WIN_3_11__) /* Windows 3.11? */
+        #include "Replace\Win16bit\_TmpPath.H" /* Use 16-bit Windows version */
+#elif defined(__OS_DOS__) /* DOS? */
+        #include "Replace\DOS\_TmpPath.H" /* Use the good old DOS version */
+#elif defined(__OS_MAC__) /* Mac? */
+        #include "Replace\Mac\_TmpPath.H" /* Use the one designed for the Mac */
+#else /* Oh-no! */
+	#error ("Must define OS macro or add function for OS and update standards")
+#endif
+/*-------------------------------------------------------------------------*/
+#endif /*__INC_REPLACABLES_TMPPATH_H*/
+/* Non-platform specific replacable header, this will include
+the appropriate header based on the mandatory definition OS_*/
+
+/* Disable PCH warning */
+#pragma warn -pch
+/*-------------------------------------------------------------------------*/
+#if defined(__OS_WIN_3__) /* Windows 3.0 ? */
+	#include "Replace\Win16bit\_TmpPath.C" /* Use Windows 16-bit version */
+#elif defined(__OS_WIN_NT__) /* Windows NT? */
+	#include "Replace\Win32s\_TmpPath.C" /* Use Win32s version */
+#elif defined(__OS_WIN_95__) /* Windows 95? */
+	#include "Replace\Win32s\_TmpPath.C" /* Use Win32s version */
+#elif defined(__OS_WIN_98__) /* Windows 98? */
+	#include "Replace\Win32s\_TmpPath.C" /* Use Win32s version */
+#elif defined(__OS_WIN_3_1__) /* Windows 3.1? */
+	#include "Replace\Win16bit\_TmpPath.C" /* use 16-bit Windows version */
+#elif defined(__OS_WIN_3_11__) /* Windows 3.11? */
+	#include "Replace\Win16bit\_TmpPath.C" /* Use 16-bit Windows version */
+#elif defined(__OS_DOS__) /* DOS? */
+	#include "Replace\DOS\_TmpPath.C" /* Use the good old DOS version */
+#elif defined(__OS_MAC__) /* Mac? */
+	#include "Replace\Mac\_TmpPath.C" /* Use the one designed for the Mac */
+#else /* Oh-no! */
+	#error ("Must define OS macro or add function for OS and update standards")
+#endif
+
+/* Restore warning options */
+#pragma warn .pch

Win16bit/_SleepX.C

+/* This is a replaceable C file for the non-ANSI methods of suspending a
+system for a number of seconds or milliseconds, this version is for Windows
+3.x */
+
+#include <Windows.H>
+#pragma hdrstop
+
+#include "Replace\Win16bit\_Sleepx.H" /* Our header */
+/*-------------------------------------------------------------------------*/
+void SleepSecs(unsigned Secs)
+{
+	  /* Windows 3.1 did not have a Sleep() function as it does today, we
+	  must do the job ourselves based on he GetTickCount() function */
+
+	  DWORD stopTime = GetTickCount() + (DWORD)Secs * (DWORD)1000;
+
+	  while (GetTickCount() < stopTime) /* Not time to stop yet? */
+	  {}
+}
+/*-------------------------------------------------------------------------*/
+void SleepMS(unsigned ms)
+{
+	  /* Windows 3.1 did not have a Sleep() function as it does today, we
+	  must do the job ourselves based on he GetTickCount() function */
+
+	  DWORD stopTime = GetTickCount() + (DWORD)ms;
+
+	  while (GetTickCount() < stopTime) /* Not time to stop yet? */
+	  {}
+}
+/*-------------------------------------------------------------------------*/

Win16bit/_Sleepx.h

+#ifndef __INC_REPLACEABLES_WIN16BIT_SLEEPX
+#define __INC_REPLACEABLES_WIN16BIT_SLEEPX
+/*-------------------------------------------------------------------------*/
+/* Functions for suspended execution under Windows 3.x  */
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void SleepSecs(unsigned Secs);
+void SleepMS(unsigned ms);
+
+#ifdef __cplusplus
+}
+#endif
+/*-------------------------------------------------------------------------*/
+#endif /*__INC_REPLACEABLES_WIN16BIT_SLEEPX*/

Win16bit/_TMPPATH.C

+/* Platform specific - Win16-bit
+version of 'replacables_GetTempPath()'/ */
+
+#include <StdLib.H>
+#include <String.H>
+#include "Stds\DLStdInc.H"
+#pragma hdrstop
+
+#include "Replace\Win16bit\_TmpPath.H"
+/*-------------------------------------------------------------------------*/
+static void DoCopy(char* TargetBuffer, DWORD TargetBuffSize, const char* SourceString);
+/*-------------------------------------------------------------------------*/
+void replaceables_GetTempPath(
+	DWORD nBufferLength, /* # chars buffer can take */
+   char* lpBuffer /* Address of buffer to take string */
+)
+{
+	/* In the Win32 API there is a function called GetTempPath(),
+   unfortunately this is unavailable to us! */
+   char* Env; /* Current environment */
+
+   Env = getenv("TMP"); /* Get TMP environment string */
+   if (Env)
+   {
+   	DoCopy(lpBuffer, nBufferLength, Env);
+      return;
+   }
+
+   Env = getenv("TEMP"); /* Use TEMP environment string instead */
+   if (Env)
+   {
+   	DoCopy(lpBuffer, nBufferLength, Env);
+      return;
+   }
+   /* If here, it means we must use the current directory for temp names */
+   DoCopy(lpBuffer, nBufferLength, ".");
+}
+/*-------------------------------------------------------------------------*/
+static void DoCopy(char* TargetBuffer, DWORD TargetBuffSize, const char* SourceString)
+{
+	/* This function safely copies 'SourceString' to 'TargetBuffer' even
+   if TargetBuffer is much to small! <-- via truncation. */
+
+   size_t SourceOffset = 0;
+
+   if (!TargetBuffer || !TargetBuffSize || !SourceString) /* Any parameter invalid? */
+
+   while (SourceOffset <= strlen(SourceString)) /* All through SourceString */
+   {
+   	TargetBuffer[SourceOffset] = SourceString[SourceOffset]; /* Copy a byte */
+      SourceOffset++; /* Next we will have the next byte! */
+      if (SourceOffset > TargetBuffSize) /* It seems we have copied it all! */
+      	return;
+   }
+}
+/*-------------------------------------------------------------------------*/

Win16bit/_TmpPath.H

+#ifndef __INC_REPLACEABLES_WIN16BIT_TMPPATH_H
+#define __INC_REPLACEABLES_WIN16BIT_TMPPATH_H
+
+/* Specific TmpPath for Win16bit
+        - David Duncan Ross Palmer */
+/*-------------------------------------------------------------------------*/
+/* Route arounds for Win32 users: */
+#define replaceables_GetTempPathA replaceables_GetTempPath
+#define replaceables_GetTempPathW replaceables_GetTempPath
+
+/* Code designed around Win32's Unicode support will probally fail
+on this ANSI based version */
+
+void replaceables_GetTempPath(
+	DWORD nBufferLength, /* # chars buffer can take */
+   char* lpBuffer /* Address of buffer to take string */
+);
+/*-------------------------------------------------------------------------*/
+#endif /*__INC_REPLACEABLES_WIN16BIT_TMPPATH_H*/
+/* This is a replaceable C file for the non-ANSI methods of suspending a
+system for a number of seconds or milliseconds, this version is for Win32s
+
+Revision : 1
+
+Revision history: 1 - Added support for not calling Win32's Sleep() if
+the sleep time is zero, because Sleep(0) means give up remainder of
+timeslice in Win32 and that isn't what we want, that would slow program
+execution if it happened enough */
+
+#include <Windows.H>
+#pragma hdrstop
+
+#include "Replace\Win32s\_Sleepx.H" /* Our header */
+/*-------------------------------------------------------------------------*/
+void SleepSecs(unsigned Secs)
+{
+  if (Secs)
+    Sleep(Secs * 1000); /* Sleep() takes milliseconds, so convert */
+}
+/*-------------------------------------------------------------------------*/
+void SleepMS(unsigned ms)
+{
+  if (ms)
+    Sleep(ms); /* Use Windows 32-bit Sleep() function */
+}
+/*-------------------------------------------------------------------------*/
+#ifndef __INC_REPLACEABLES_WIN32s_SLEEPX
+#define __INC_REPLACEABLES_WIN32s_SLEEPX
+/*-------------------------------------------------------------------------*/
+/* Functions for suspended execution under Win32s */
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void SleepSecs(unsigned Secs);
+void SleepMS(unsigned ms);
+
+#ifdef __cplusplus
+}
+#endif
+/*-------------------------------------------------------------------------*/
+#endif /*__INC_REPLACEABLES_WIN32s_SLEEPX*/

Win32s/_TMPPATH.C

+/* Platform specific - Win32s / Win32 / Win95 / WinNT / Win98
+version of 'replacables_GetTempPath()'/ */
+
+#include <Windows.H>
+#pragma hdrstop
+
+#include "Replace\Win32s\_TmpPath.H"
+
+/* I seem to be havnig trouble with these routines, the message:
+Unresolved external replaceables_GetTempPathA referenced from X
+is buggering me.  I'll undefine the shortcut macros */
+
+#ifdef replaceables_GetTempPath
+#  undef replaceables_GetTempPath
+#endif
+#ifdef replaceables_GetTempPathA
+#  undef replaceables_GetTempPathA
+#endif
+#ifdef replaceables_GetTempPathW
+#  undef replaceables_GetTempPathW
+#endif
+/*-------------------------------------------------------------------------*/
+void replaceables_GetTempPathA( /* ANSI version */
+	DWORD nBufferLength, /* # chars buffer can take */
+   char* lpBuffer /* Address of buffer to take string */
+)
+{
+	/* We can use the new Win32 function GetTempPath() */
+   GetTempPathA(nBufferLength, lpBuffer);
+}
+/*-------------------------------------------------------------------------*/
+void replaceables_GetTempPathW( /* UNICODE version */
+	DWORD nBufferLength, /* # chars buffer can take */
+   wchar_t* lpwBuffer /* Address of buffer to take string */
+)
+{
+	/* We can use the new Win32 function GetTempPath() */
+   GetTempPathW(nBufferLength, lpwBuffer);
+}
+/*-------------------------------------------------------------------------*/

Win32s/_TmpPath.H

+#ifndef __INC_REPLACEABLES_WIN32s_TMPPATH_H
+#define __INC_REPLACEABLES_WIN32s_TMPPATH_H
+#include "Headers\BeginCH.H"
+
+/* Specific TmpPath for Win32s
+        - David Duncan Ross Palmer */
+/*-------------------------------------------------------------------------*/
+void replaceables_GetTempPathA( /* ANSI version */
+	DWORD nBufferLength, /* # chars buffer can take */
+   char* lpBuffer /* Address of buffer to take string */
+);
+void replaceables_GetTempPathW( /* UNICODE version */
+	DWORD nBufferLength, /* # chars buffer can take */
+   wchar_t* lpwBuffer /* Address of buffer to take string */
+);
+
+#if defined(UNICODE) /* Unicode enabled? */
+        #define replaceables_GetTempPath replaceables_GetTempPathW
+#else /* Unicode disabled? */
+        #define replaceables_GetTempPath replaceables_GetTempPathA
+#endif /*UNICODE*/
+/*-------------------------------------------------------------------------*/
+#include "Headers\EndCH.H"
+#endif /*__INC_REPLACEABLES_WIN32s_TMPPATH_H*/
+/* Non-platform specific replacable header, this will include
+the appropriate module based on the mandatory definition OS_*/
+
+/* Turn off warning about precompiled headers */
+#pragma warn -pch
+/*-------------------------------------------------------------------------*/
+#if defined(__OS_WIN_3__) /* Windows 3.0 ? */
+	#include "Replace\DOS\_in1char.C"
+#elif defined(__OS_WIN_NT__) /* Windows NT? */
+	#include "Replace\DOS\_in1char.C"
+#elif defined(__OS_WIN_95__) /* Windows 95? */
+	#include "Replace\DOS\_in1char.C"
+#elif defined(__OS_WIN_98__) /* Windows 98? */
+	#include "Replace\DOS\_in1char.C"
+#elif defined(__OS_WIN_3_1__) /* Windows 3.1? */
+	#include "Replace\DOS\_in1char.C"
+#elif defined(__OS_WIN_3_11__) /* Windows 3.11? */
+	#include "Replace\DOS\_in1char.C"
+#elif defined(__OS_DOS__) /* DOS? */
+	#include "Replace\DOS\_in1char.C"
+#elif defined(__OS_MAC__) /* Mac? */
+	#error ("Must create a way to get 1 character in the Mac")
+#else /* Oh-no! */
+	#error ("Must define OS macro or add function for OS and update standards")
+#endif
+
+/* Restore PCH warning if it was originally on */
+#pragma warn .pch
+#ifndef __INC_REPLACABLES_IN1CHAR_H
+#define __INC_REPLACABLES_IN1CHAR_H
+
+/* Non-platform specific replacable header, this will include
+the appropriate header based on the mandatory definition OS_*/
+/*-------------------------------------------------------------------------*/
+#if defined(__OS_WIN_3__) /* Windows 3.0 ? */
+        #include "Replace\DOS\_in1char.H"
+#elif defined(__OS_WIN_NT__) /* Windows NT? */
+        #include "Replace\DOS\_in1char.H"
+#elif defined(__OS_WIN_95__) /* Windows 95? */
+        #include "Replace\DOS\_in1char.H"
+#elif defined(__OS_WIN_98__) /* Windows 98? */
+        #include "Replace\DOS\_in1char.H"
+#elif defined(__OS_WIN_3_1__) /* Windows 3.1? */
+        #include "Replace\DOS\_in1char.H"
+#elif defined(__OS_WIN_3_11__) /* Windows 3.11? */
+        #include "Replace\DOS\_in1char.H"
+#elif defined(__OS_DOS__) /* DOS? */
+        #include "Replace\DOS\_in1char.H"
+#elif defined(__OS_MAC__) /* Mac? */
+        #error ("Must create a way to get 1 character in the Mac")
+#else /* Oh-no! */
+	#error ("Must define OS macro or add function for OS and update standards")
+#endif
+/*-------------------------------------------------------------------------*/
+#endif /*__INC_REPLACABLES_IN1CHAR_H*/
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.