Platon Technologies
not logged in Login Registration
EnglishSlovak
open source software development celebrating 10 years of open source development! Saturday, October 24, 2026

Diff for games/_shared/dos2linux.c between version 1.7 and 1.8

version 1.7, 2003/10/23 18:14:30 version 1.8, 2003/10/27 09:50:16
Line 12 
Line 12 
  *   *
  */   */
   
 /* $Platon: games/_shared/dos2linux.c,v 1.6 2003/10/07 12:21:33 nepto Exp $ */  /* $Platon: games/_shared/dos2linux.c,v 1.7 2003/10/23 18:14:30 nepto Exp $ */
   
 #include <string.h>  #include <string.h>
 #include <stdlib.h>  #include <stdlib.h>
Line 42  int kbhit(void) /* {{{ */
Line 42  int kbhit(void) /* {{{ */
 int getch(void) /* {{{ */  int getch(void) /* {{{ */
 {  {
         register int ret;          register int ret;
   #if 0 /* debug mode */
           ret = vga_getch();
           fprintf(stderr, "getch(): ret = %d\n", ret);
   #else
         if (getch_next_ret != 0) {          if (getch_next_ret != 0) {
                 ret = getch_next_ret;                  ret = getch_next_ret;
                 getch_next_ret = 0;                  getch_next_ret = 0;
         } else {          } else {
                 ret = vga_getch();                  ret = vga_getch();
                 if (ret == 27 && kbhit() && (ret = vga_getch()) == 91 && kbhit()) {                  if (ret == 27 && kbhit() && (ret = vga_getch()) == 91 && kbhit()) {
                         switch (ret = vga_getch()) {                          ret = vga_getch();
                                 case 65: getch_next_ret = SUP;    break;                          if (ret == 91) {
                                 case 66: getch_next_ret = SDOWN;  break;                                  switch (ret = vga_getch()) {
                                 case 67: getch_next_ret = SRIGHT; break;                                          case 65: getch_next_ret =  F1; break;
                                 case 68: getch_next_ret = SLEFT;  break;                                          case 66: getch_next_ret =  F2; break;
                                 case 49: getch_next_ret = HOME;   break;                                          case 67: getch_next_ret =  F3; break;
                                 case 50: getch_next_ret = INSERT; break;                                          case 68: getch_next_ret =  F4; break;
                                 case 51: getch_next_ret = DELETE; break;                                          case 69: getch_next_ret =  F5; break;
                                 case 52: getch_next_ret = END;    break;                                          case 70: getch_next_ret =  F6; break;
                                 case 53: getch_next_ret = PGUP;   break;                                          case 71: getch_next_ret =  F7; break;
                                 case 54: getch_next_ret = PGDOWN; break;                                          case 72: getch_next_ret =  F8; break;
                                           case 73: getch_next_ret =  F9; break;
                                           case 74: getch_next_ret = F10; break;
                                   }
                           } else {
                                   switch (ret) {
                                           case 65: getch_next_ret = SUP;    break;
                                           case 66: getch_next_ret = SDOWN;  break;
                                           case 67: getch_next_ret = SRIGHT; break;
                                           case 68: getch_next_ret = SLEFT;  break;
                                           case 49: getch_next_ret = HOME;   break;
                                           case 50: getch_next_ret = INSERT; break;
                                           case 51: getch_next_ret = DELETE; break;
                                           case 52: getch_next_ret = END;    break;
                                           case 53: getch_next_ret = PGUP;   break;
                                           case 54: getch_next_ret = PGDOWN; break;
                                   }
                                   if (ret >= 49 && ret <= 54 && kbhit())
                                           ret = vga_getch(); /* == 126 */
                         }                          }
                         if (ret >= 49 && ret <= 54 && kbhit())  
                                 ret = vga_getch(); /* == 126 */  
                         if (getch_next_ret != 0)                          if (getch_next_ret != 0)
                                 ret = NUL;                                  ret = NUL;
                 } else if (ret == LF) {                  } else if (ret == LF) {
Line 70  int getch(void) /* {{{ */
Line 90  int getch(void) /* {{{ */
                         ret = BS;                          ret = BS;
                 }                  }
         }          }
 #if 0  
         fprintf(stderr, "getch(): ret = %d\n", ret);  
 #endif  #endif
         return ret;          return ret;
 } /* }}} */  } /* }}} */

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.8

Platon Group <platon@platon.org> http://platon.org/
Copyright © 2002-2006 Platon Group
Site powered by Metafox CMS
Go to Top