/* Additional key defines */
+#define CH_ESC 27
#define CH_F1 133
#define CH_F2 137
#define CH_F3 134
#define CH_PI 126
#define CH_DEL 20
#define CH_INS 148
-#define CH_ESC 95
#define CH_ENTER '\n'
+#define CH_STOP 3
/* Additional key defines */
+#define CH_ESC 27
#define CH_F1 133
#define CH_F2 137
#define CH_F3 134
-
+
/* Additional key defines */
+#define CH_ESC 27
#define CH_F1 224
#define CH_F2 225
#define CH_F3 226
/* Additional key defines */
+#define CH_ESC 27
#define CH_F1 224
#define CH_F2 225
#define CH_F3 226
/* */
/* */
/* */
-/* (C) 1998-2001 Ullrich von Bassewitz */
+/* (C) 1998-2002 Ullrich von Bassewitz */
/* Wacholderweg 14 */
/* D-70597 Stuttgart */
/* EMail: uz@musoftware.de */
+/* Additional key defines */
+#define CH_ESC 27
+
/* Color defines */
#define COLOR_BLACK 0x00
#define COLOR_WHITE 0x01
+static char IsAbortKey (char C)
+/* Return true if C is an abort key */
+{
+#if defined(CH_ESC)
+ if (C == CH_ESC) {
+ return 1;
+ }
+#endif
+#if defined(CH_STOP)
+ if (C == CH_STOP) {
+ return 1;
+ }
+#endif
+ return 0;
+}
+
+
+
static char Input (char* Prompt, char* Buf, unsigned char Count)
/* Read input from the user, return 1 on success, 0 if aborted */
{
} else if (c == '\n') {
Buf [i] = '\0';
done = 1;
- } else if (c == CH_ESC) {
- /* Abort */
+ } else if (IsAbortKey (c)) {
+ /* Abort */
done = 2;
}
} while (!done);
}
-
+