aboutsummaryrefslogtreecommitdiff
path: root/utils/adlmidi-2/input.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'utils/adlmidi-2/input.hpp')
-rw-r--r--utils/adlmidi-2/input.hpp46
1 files changed, 46 insertions, 0 deletions
diff --git a/utils/adlmidi-2/input.hpp b/utils/adlmidi-2/input.hpp
new file mode 100644
index 0000000..dba4229
--- /dev/null
+++ b/utils/adlmidi-2/input.hpp
@@ -0,0 +1,46 @@
+#ifndef _WIN32
+#include <unistd.h>
+#endif
+
+#ifdef _WIN32
+# include <cctype>
+# define WIN32_LEAN_AND_MEAN
+# ifndef NOMINMAX
+# define NOMINMAX //To don't damage std::min and std::max
+# endif
+# include <windows.h>
+#endif
+
+#ifdef __DJGPP__
+#include <conio.h>
+#include <pc.h>
+#include <dpmi.h>
+#include <go32.h>
+#include <sys/farptr.h>
+#include <dos.h>
+#include <stdlib.h>
+#define BIOStimer _farpeekl(_dos_ds, 0x46C)
+static const unsigned NewTimerFreq = 209;
+#elif !defined(_WIN32) || defined(__CYGWIN__)
+# include <termios.h>
+# include <fcntl.h>
+# include <sys/ioctl.h>
+# include <csignal>
+#endif
+
+class xInput
+{
+ #ifdef _WIN32
+ void *inhandle;
+ #endif
+ #if (!defined(_WIN32) || defined(__CYGWIN__)) && !defined(__DJGPP__)
+ struct termio back;
+ #endif
+public:
+ xInput();
+ ~xInput();
+
+ char PeekInput();
+};
+
+extern xInput Input;