\hypertarget{form3_8h}{}\doxysection{form3.\+h File Reference}
\label{form3_8h}\index{form3.h@{form3.h}}
{\ttfamily \#include $<$stddef.\+h$>$}\newline
{\ttfamily \#include $<$stdio.\+h$>$}\newline
{\ttfamily \#include $<$stdlib.\+h$>$}\newline
{\ttfamily \#include $<$string.\+h$>$}\newline
{\ttfamily \#include $<$ctype.\+h$>$}\newline
{\ttfamily \#include $<$limits.\+h$>$}\newline
{\ttfamily \#include \char`\"{}ftypes.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}fsizes.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}minos.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}structs.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}declare.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}variable.\+h\char`\"{}}\newline
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{form3_8h_af26a7164e1f14a8a925ff2b5f41f36d0}\label{form3_8h_af26a7164e1f14a8a925ff2b5f41f36d0}} 
\#define {\bfseries MAJORVERSION}~4
\item 
\mbox{\Hypertarget{form3_8h_a941eb1d6b923034e295e29a413d344d2}\label{form3_8h_a941eb1d6b923034e295e29a413d344d2}} 
\#define {\bfseries MINORVERSION}~2
\item 
\mbox{\Hypertarget{form3_8h_a2ebfe290225bc4a95c792b1c2de9de5e}\label{form3_8h_a2ebfe290225bc4a95c792b1c2de9de5e}} 
\#define {\bfseries PRODUCTIONDATE}~\char`\"{}06-\/jul-\/2017\char`\"{}
\item 
\mbox{\Hypertarget{form3_8h_a00d24c7231be28dbaf71f5408f30e44c}\label{form3_8h_a00d24c7231be28dbaf71f5408f30e44c}} 
\#define {\bfseries inline}
\item 
\mbox{\Hypertarget{form3_8h_a8de3ed741dadc9c979a4ff17c0a9116e}\label{form3_8h_a8de3ed741dadc9c979a4ff17c0a9116e}} 
\#define {\bfseries NDEBUG}
\item 
\mbox{\Hypertarget{form3_8h_a695e64485eb9535f5ddcfec01167bddc}\label{form3_8h_a695e64485eb9535f5ddcfec01167bddc}} 
\#define {\bfseries STATIC\+\_\+\+ASSERT}(condition)~STATIC\+\_\+\+ASSERT\+\_\+\+\_\+1(condition,\+\_\+\+\_\+\+LINE\+\_\+\+\_\+)
\item 
\mbox{\Hypertarget{form3_8h_a8779808e1a87f37538de2e9d32b89917}\label{form3_8h_a8779808e1a87f37538de2e9d32b89917}} 
\#define {\bfseries STATIC\+\_\+\+ASSERT\+\_\+\+\_\+1}(X,  L)~STATIC\+\_\+\+ASSERT\+\_\+\+\_\+2(X,L)
\item 
\mbox{\Hypertarget{form3_8h_a0cd6ec45981ecd8ead5a0152b8e7b8a8}\label{form3_8h_a0cd6ec45981ecd8ead5a0152b8e7b8a8}} 
\#define {\bfseries STATIC\+\_\+\+ASSERT\+\_\+\+\_\+2}(X,  L)~STATIC\+\_\+\+ASSERT\+\_\+\+\_\+3(X,L)
\item 
\mbox{\Hypertarget{form3_8h_ae39ac908a65d3bd7e2b488be1c27f72c}\label{form3_8h_ae39ac908a65d3bd7e2b488be1c27f72c}} 
\#define {\bfseries STATIC\+\_\+\+ASSERT\+\_\+\+\_\+3}(X,  L)~ typedef char static\+\_\+assertion\+\_\+failed\+\_\+\#\#L\mbox{[}(!!(X))$\ast$2-\/1\mbox{]}
\item 
\mbox{\Hypertarget{form3_8h_a22ed32b5203177a3c060f5a8dfa565b3}\label{form3_8h_a22ed32b5203177a3c060f5a8dfa565b3}} 
\#define {\bfseries TOPBITONLY}~((ULONG)1 $<$$<$ (BITSINWORD -\/ 1))  /$\ast$ 0x00008000\+UL $\ast$/
\item 
\mbox{\Hypertarget{form3_8h_a3d0d1cb1837862226bdeee5d86b952d4}\label{form3_8h_a3d0d1cb1837862226bdeee5d86b952d4}} 
\#define {\bfseries TOPLONGBITONLY}~((ULONG)1 $<$$<$ (BITSINLONG -\/ 1))  /$\ast$ 0x80000000\+UL $\ast$/
\item 
\mbox{\Hypertarget{form3_8h_adf169f0578176a5b0f28a6e02ab48dc0}\label{form3_8h_adf169f0578176a5b0f28a6e02ab48dc0}} 
\#define {\bfseries SPECMASK}~((UWORD)1 $<$$<$ (BITSINWORD -\/ 1))  /$\ast$     0x8000U  $\ast$/
\item 
\mbox{\Hypertarget{form3_8h_a3340548b457e648caed44b1962e084f8}\label{form3_8h_a3340548b457e648caed44b1962e084f8}} 
\#define {\bfseries WILDMASK}~((UWORD)1 $<$$<$ (BITSINWORD -\/ 2))  /$\ast$     0x4000U  $\ast$/
\item 
\mbox{\Hypertarget{form3_8h_a076926595d98cea736e59225f32e2dd2}\label{form3_8h_a076926595d98cea736e59225f32e2dd2}} 
\#define {\bfseries WORDMASK}~((ULONG)FULLMAX -\/ 1)            /$\ast$ 0x0000\+FFFFUL $\ast$/
\item 
\mbox{\Hypertarget{form3_8h_a3f9c98b418b4a0e9bb3523a54bf3511c}\label{form3_8h_a3f9c98b418b4a0e9bb3523a54bf3511c}} 
\#define {\bfseries AWORDMASK}~(WORDMASK $<$$<$ BITSINWORD)        /$\ast$ 0x\+FFFF0000\+UL $\ast$/
\item 
\mbox{\Hypertarget{form3_8h_a5bbe6701b34c8f5f91ce1c6ad58d6430}\label{form3_8h_a5bbe6701b34c8f5f91ce1c6ad58d6430}} 
\#define {\bfseries FULLMAX}~((LONG)1 $<$$<$ BITSINWORD)         /$\ast$ 0x00010000L  $\ast$/
\item 
\mbox{\Hypertarget{form3_8h_a5c5d67200947129352403bcc3614d5b0}\label{form3_8h_a5c5d67200947129352403bcc3614d5b0}} 
\#define {\bfseries MAXPOSITIVE}~((LONG)(TOPBITONLY -\/ 1))        /$\ast$ 0x00007\+FFFL  $\ast$/
\item 
\mbox{\Hypertarget{form3_8h_a752d616044833da0057d8632524423a4}\label{form3_8h_a752d616044833da0057d8632524423a4}} 
\#define {\bfseries MAXLONG}~((LONG)(TOPLONGBITONLY -\/ 1))    /$\ast$ 0x7\+FFFFFFFL  $\ast$/
\item 
\mbox{\Hypertarget{form3_8h_acfb78b373183f7fdabe724ff5ad73476}\label{form3_8h_acfb78b373183f7fdabe724ff5ad73476}} 
\#define {\bfseries MAXPOSITIVE2}~(MAXPOSITIVE / 2)               /$\ast$ 0x00003\+FFFL  $\ast$/
\item 
\mbox{\Hypertarget{form3_8h_a3807a6cd25e0d73f22c14fadc1729de2}\label{form3_8h_a3807a6cd25e0d73f22c14fadc1729de2}} 
\#define {\bfseries MAXPOSITIVE4}~(MAXPOSITIVE / 4)               /$\ast$ 0x00001\+FFFL  $\ast$/
\item 
\mbox{\Hypertarget{form3_8h_aca526298ed34ef6fe2b1b11a8280fdd6}\label{form3_8h_aca526298ed34ef6fe2b1b11a8280fdd6}} 
\#define {\bfseries alignof}(type)~offsetof(struct \{ char c\+\_\+; type x\+\_\+; \}, x\+\_\+)
\item 
\mbox{\Hypertarget{form3_8h_ae257462c6704c03810d4d669fb6c0224}\label{form3_8h_ae257462c6704c03810d4d669fb6c0224}} 
\#define {\bfseries PADDUMMY}(type,  size)~ UBYTE d\+\_\+u\+\_\+m\+\_\+m\+\_\+y\mbox{[}alignof(type) -\/ ((size) \& (alignof(type) -\/ 1))\mbox{]}
\item 
\#define {\bfseries PADPOSITION}(ptr\+\_\+,  long\+\_\+,  int\+\_\+,  word\+\_\+,  byte\+\_\+)
\item 
\#define {\bfseries PADPOINTER}(long\+\_\+,  int\+\_\+,  word\+\_\+,  byte\+\_\+)
\item 
\#define {\bfseries PADLONG}(int\+\_\+,  word\+\_\+,  byte\+\_\+)
\item 
\#define {\bfseries PADINT}(word\+\_\+,  byte\+\_\+)
\item 
\#define {\bfseries PADWORD}(byte\+\_\+)
\item 
\mbox{\Hypertarget{form3_8h_adfd3f2f9cd6e2e86285e33b7e41a7585}\label{form3_8h_adfd3f2f9cd6e2e86285e33b7e41a7585}} 
\#define {\bfseries WITHSORTBOTS}
\item 
\mbox{\Hypertarget{form3_8h_af0c578eddb61211eb823c0079fe0b943}\label{form3_8h_af0c578eddb61211eb823c0079fe0b943}} 
\#define {\bfseries FILES}~FILE
\item 
\mbox{\Hypertarget{form3_8h_a84b951c29084b0bc28094e9530c9d80d}\label{form3_8h_a84b951c29084b0bc28094e9530c9d80d}} 
\#define {\bfseries Uopen}(x,  y)~fopen(x,y)
\item 
\mbox{\Hypertarget{form3_8h_a5b6db23397ae727031dd7cceabfdbafa}\label{form3_8h_a5b6db23397ae727031dd7cceabfdbafa}} 
\#define {\bfseries Uflush}(x)~fflush(x)
\item 
\mbox{\Hypertarget{form3_8h_aa111300796da6b805eb07786aa8fa6f1}\label{form3_8h_aa111300796da6b805eb07786aa8fa6f1}} 
\#define {\bfseries Uclose}(x)~fclose(x)
\item 
\mbox{\Hypertarget{form3_8h_a004643bb051dbb99c821d60005bd25cf}\label{form3_8h_a004643bb051dbb99c821d60005bd25cf}} 
\#define {\bfseries Uread}(x,  y,  z,  u)~fread(x,y,z,u)
\item 
\mbox{\Hypertarget{form3_8h_aea5ccd282aba464b4208ddf2fa5937a1}\label{form3_8h_aea5ccd282aba464b4208ddf2fa5937a1}} 
\#define {\bfseries Uwrite}(x,  y,  z,  u)~fwrite(x,y,z,u)
\item 
\mbox{\Hypertarget{form3_8h_a09159419e1c829667e140be93fef006b}\label{form3_8h_a09159419e1c829667e140be93fef006b}} 
\#define {\bfseries Usetbuf}(x,  y)~setbuf(x,y)
\item 
\mbox{\Hypertarget{form3_8h_ae3b505a9b88163fc5583b89184edb8fa}\label{form3_8h_ae3b505a9b88163fc5583b89184edb8fa}} 
\#define {\bfseries Useek}(x,  y,  z)~fseek(x,y,z)
\item 
\mbox{\Hypertarget{form3_8h_abd979f4436d12b6fe2f9e487700d4f41}\label{form3_8h_abd979f4436d12b6fe2f9e487700d4f41}} 
\#define {\bfseries Utell}(x)~ftell(x)
\item 
\mbox{\Hypertarget{form3_8h_a12a98cb26a05b7c68283738187f18b01}\label{form3_8h_a12a98cb26a05b7c68283738187f18b01}} 
\#define {\bfseries Ugetpos}(x,  y)~fgetpos(x,y)
\item 
\mbox{\Hypertarget{form3_8h_a65d5020d236ad147cdf56b0551d267ab}\label{form3_8h_a65d5020d236ad147cdf56b0551d267ab}} 
\#define {\bfseries Usetpos}(x,  y)~fsetpos(x,y)
\item 
\mbox{\Hypertarget{form3_8h_a14d4f5ff800d72b4f0ef9e0c33fa23cc}\label{form3_8h_a14d4f5ff800d72b4f0ef9e0c33fa23cc}} 
\#define {\bfseries Usync}(x)~fflush(x)
\item 
\mbox{\Hypertarget{form3_8h_a312f85686fd0e6abecba96311d4c0785}\label{form3_8h_a312f85686fd0e6abecba96311d4c0785}} 
\#define {\bfseries Utruncate}(x)~\+\_\+chsize(\+\_\+fileno(x),0)
\item 
\mbox{\Hypertarget{form3_8h_a65ceb7c240515b5cf3ad16c9549f645a}\label{form3_8h_a65ceb7c240515b5cf3ad16c9549f645a}} 
\#define {\bfseries Ustdout}~stdout
\item 
\mbox{\Hypertarget{form3_8h_ae4777ede3ed2173c78fab7798ad6eddb}\label{form3_8h_ae4777ede3ed2173c78fab7798ad6eddb}} 
\#define {\bfseries MAX\+\_\+\+OPEN\+\_\+\+FILES}~FOPEN\+\_\+\+MAX
\item 
\mbox{\Hypertarget{form3_8h_ae259660715c248fa1153bb5a098de374}\label{form3_8h_ae259660715c248fa1153bb5a098de374}} 
\#define {\bfseries bzero}(b,  len)~(memset((b), 0, (len)), (void)0)
\item 
\mbox{\Hypertarget{form3_8h_abb3f5f7d2f476f0c2b6c543da768f279}\label{form3_8h_abb3f5f7d2f476f0c2b6c543da768f279}} 
\#define {\bfseries Get\+PID}()~((LONG)Get\+Current\+Process\+Id())
\end{DoxyCompactItemize}
\doxysubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{form3_8h_a7927e087749615dae3114cc27b91c86d}\label{form3_8h_a7927e087749615dae3114cc27b91c86d}} 
typedef void {\bfseries VOID}
\item 
\mbox{\Hypertarget{form3_8h_a771e4543f2852e05b8a5e5104df940d2}\label{form3_8h_a771e4543f2852e05b8a5e5104df940d2}} 
typedef signed char {\bfseries SBYTE}
\item 
\mbox{\Hypertarget{form3_8h_a122c4acf389c050379f00341fdcd5812}\label{form3_8h_a122c4acf389c050379f00341fdcd5812}} 
typedef unsigned char {\bfseries UBYTE}
\item 
\mbox{\Hypertarget{form3_8h_a36cb3b01d81ffd844bbbfb54003e06ec}\label{form3_8h_a36cb3b01d81ffd844bbbfb54003e06ec}} 
typedef unsigned int {\bfseries UINT}
\item 
\mbox{\Hypertarget{form3_8h_a57583ba33a6a12f101f3e151b38368f6}\label{form3_8h_a57583ba33a6a12f101f3e151b38368f6}} 
typedef ULONG {\bfseries RLONG}
\item 
\mbox{\Hypertarget{form3_8h_a28ac2d725d2c5f86ee9c3d22a5a82626}\label{form3_8h_a28ac2d725d2c5f86ee9c3d22a5a82626}} 
typedef INT64 {\bfseries MLONG}
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{form3_8h_aca70cfb741337d0603327a44e407016b}\label{form3_8h_aca70cfb741337d0603327a44e407016b}} 
{\bfseries STATIC\+\_\+\+ASSERT} (sizeof(WORD) $\ast$8==BITSINWORD)
\item 
\mbox{\Hypertarget{form3_8h_ad834c90987804bb1f5a98b9d72750c25}\label{form3_8h_ad834c90987804bb1f5a98b9d72750c25}} 
{\bfseries STATIC\+\_\+\+ASSERT} (sizeof(LONG) $\ast$8==BITSINLONG)
\item 
\mbox{\Hypertarget{form3_8h_a04200cb5e0b5fc30e20f164f8d0cccf7}\label{form3_8h_a04200cb5e0b5fc30e20f164f8d0cccf7}} 
{\bfseries STATIC\+\_\+\+ASSERT} (sizeof(LONG) $>$=sizeof(int $\ast$))
\item 
\mbox{\Hypertarget{form3_8h_afa015e8d57265be6d7975de47a646e30}\label{form3_8h_afa015e8d57265be6d7975de47a646e30}} 
{\bfseries STATIC\+\_\+\+ASSERT} (sizeof(INT16)==2)
\item 
\mbox{\Hypertarget{form3_8h_a462379238fd8b2f009bfc489c5da827a}\label{form3_8h_a462379238fd8b2f009bfc489c5da827a}} 
{\bfseries STATIC\+\_\+\+ASSERT} (sizeof(INT32)==4)
\item 
\mbox{\Hypertarget{form3_8h_a3397cc42f1636925f3fb8221f12e72ec}\label{form3_8h_a3397cc42f1636925f3fb8221f12e72ec}} 
{\bfseries STATIC\+\_\+\+ASSERT} (sizeof(INT64)==8)
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Contains critical defines for the compilation process Also contains the inclusion of all necessary header files. There are also some system dependencies concerning file functions. 

\doxysubsection{Macro Definition Documentation}
\mbox{\Hypertarget{form3_8h_a986a1144fa631f82ed1dcc87bf2d7a62}\label{form3_8h_a986a1144fa631f82ed1dcc87bf2d7a62}} 
\index{form3.h@{form3.h}!PADPOSITION@{PADPOSITION}}
\index{PADPOSITION@{PADPOSITION}!form3.h@{form3.h}}
\doxysubsubsection{\texorpdfstring{PADPOSITION}{PADPOSITION}}
{\footnotesize\ttfamily \#define PADPOSITION(\begin{DoxyParamCaption}\item[{}]{ptr\+\_\+,  }\item[{}]{long\+\_\+,  }\item[{}]{int\+\_\+,  }\item[{}]{word\+\_\+,  }\item[{}]{byte\+\_\+ }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{    PADDUMMY(off\_t, \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(\textcolor{keywordtype}{int} *) * (ptr\_) \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(LONG)  * (long\_) \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(\textcolor{keywordtype}{int})   * (int\_) \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(WORD)  * (word\_) \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(UBYTE) * (byte\_) \(\backslash\)}
\DoxyCodeLine{    )}

\end{DoxyCode}


Definition at line 381 of file form3.\+h.

\mbox{\Hypertarget{form3_8h_a2673a09b7d5aac2d420a25779578b177}\label{form3_8h_a2673a09b7d5aac2d420a25779578b177}} 
\index{form3.h@{form3.h}!PADPOINTER@{PADPOINTER}}
\index{PADPOINTER@{PADPOINTER}!form3.h@{form3.h}}
\doxysubsubsection{\texorpdfstring{PADPOINTER}{PADPOINTER}}
{\footnotesize\ttfamily \#define PADPOINTER(\begin{DoxyParamCaption}\item[{}]{long\+\_\+,  }\item[{}]{int\+\_\+,  }\item[{}]{word\+\_\+,  }\item[{}]{byte\+\_\+ }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{    PADDUMMY(\textcolor{keywordtype}{int} *, \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(LONG)  * (long\_) \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(\textcolor{keywordtype}{int})   * (int\_) \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(WORD)  * (word\_) \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(UBYTE) * (byte\_) \(\backslash\)}
\DoxyCodeLine{    )}

\end{DoxyCode}


Definition at line 389 of file form3.\+h.

\mbox{\Hypertarget{form3_8h_a05aaab4c115e74f1b116e0430d90e1c4}\label{form3_8h_a05aaab4c115e74f1b116e0430d90e1c4}} 
\index{form3.h@{form3.h}!PADLONG@{PADLONG}}
\index{PADLONG@{PADLONG}!form3.h@{form3.h}}
\doxysubsubsection{\texorpdfstring{PADLONG}{PADLONG}}
{\footnotesize\ttfamily \#define PADLONG(\begin{DoxyParamCaption}\item[{}]{int\+\_\+,  }\item[{}]{word\+\_\+,  }\item[{}]{byte\+\_\+ }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{    PADDUMMY(LONG, \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(\textcolor{keywordtype}{int})   * (int\_) \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(WORD)  * (word\_) \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(UBYTE) * (byte\_) \(\backslash\)}
\DoxyCodeLine{    )}

\end{DoxyCode}


Definition at line 396 of file form3.\+h.

\mbox{\Hypertarget{form3_8h_a454b8fede9acb6f43fcd251a5410b8e1}\label{form3_8h_a454b8fede9acb6f43fcd251a5410b8e1}} 
\index{form3.h@{form3.h}!PADINT@{PADINT}}
\index{PADINT@{PADINT}!form3.h@{form3.h}}
\doxysubsubsection{\texorpdfstring{PADINT}{PADINT}}
{\footnotesize\ttfamily \#define PADINT(\begin{DoxyParamCaption}\item[{}]{word\+\_\+,  }\item[{}]{byte\+\_\+ }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{    PADDUMMY(\textcolor{keywordtype}{int}, \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(WORD)  * (word\_) \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(UBYTE) * (byte\_) \(\backslash\)}
\DoxyCodeLine{    )}

\end{DoxyCode}


Definition at line 402 of file form3.\+h.

\mbox{\Hypertarget{form3_8h_a7659bdcaafd01405acd32f1d87daa1fd}\label{form3_8h_a7659bdcaafd01405acd32f1d87daa1fd}} 
\index{form3.h@{form3.h}!PADWORD@{PADWORD}}
\index{PADWORD@{PADWORD}!form3.h@{form3.h}}
\doxysubsubsection{\texorpdfstring{PADWORD}{PADWORD}}
{\footnotesize\ttfamily \#define PADWORD(\begin{DoxyParamCaption}\item[{}]{byte\+\_\+ }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{    PADDUMMY(WORD, \(\backslash\)}
\DoxyCodeLine{        + \textcolor{keyword}{sizeof}(UBYTE) * (byte\_) \(\backslash\)}
\DoxyCodeLine{    )}

\end{DoxyCode}


Definition at line 407 of file form3.\+h.

