home *** CD-ROM | disk | FTP | other *** search
/ The C Users' Group Library 1994 August / wc-cdrom-cusersgrouplibrary-1994-08.iso / vol_300 / 332_02 / termmisc.c < prev    next >
C/C++ Source or Header  |  1990-01-06  |  3KB  |  116 lines

  1. /****************************************************************/
  2. /* Miscellaneous Terminal routines of the PCcurses package    */
  3. /*                                */
  4. /****************************************************************/
  5. /* This version of curses is based on ncurses, a curses version    */
  6. /* originally written by Pavel Curtis at Cornell University.    */
  7. /* I have made substantial changes to make it run on IBM PC's,    */
  8. /* and therefore consider myself free to make it public domain.    */
  9. /*                Bjorn Larsson (bl@infovox.se)    */
  10. /****************************************************************/
  11. /* 1.4:  Use of short wherever possible. Portability        */
  12. /*     improvements:                    900114    */
  13. /* 1.3:     MSC -W3, Turbo'C' -w -w-pro checkes:        881005    */
  14. /* 1.2:     Rcsid[] string for maintenance:        881002    */
  15. /* 1.0:     Release:                    870515    */
  16. /****************************************************************/
  17.  
  18. #include <curses.h>
  19. #include <curspriv.h>
  20.  
  21. /* static variables or saving terminal modes */
  22.  
  23. char _curses_termmisc_rcsid[] = "@(#)termmisc.c   v.1.4  - 900114";
  24.  
  25. static bool savedacr;
  26. static bool savedcbr;
  27. static bool savedecho;
  28. static bool savedraw;
  29.  
  30. /****************************************************************/
  31. /* Fixterm(), resetterm(), saveoldterm, saveterm() gettmode(),    */
  32. /* setterm() and baudrate() function dummies for compatibility.    */
  33. /****************************************************************/
  34.  
  35. int fixterm()
  36.   {
  37.   return(OK);
  38.   } /* fixterm */
  39.  
  40. int resetterm()
  41.   {
  42.   return(OK);
  43.   }
  44.  
  45. int saveoldterm()
  46.   {
  47.   return(OK);
  48.   } /* saveoldterm */
  49.  
  50. int saveterm()
  51.   {
  52.   return(OK);
  53.   } /* saveterm */
  54.  
  55. int gettmode()
  56.   {
  57.   return(OK);
  58.   } /* gettmode */
  59.  
  60. int setterm()
  61.   {
  62.   return(OK);
  63.   } /* setterm */
  64.  
  65. int baudrate()
  66.   {
  67.   return(19200);
  68.   } /* baudrate */
  69.  
  70. /****************************************************************/
  71. /* Erasechar(), killchar() returns std MSDOS erase chars.    */
  72. /****************************************************************/
  73.  
  74. int erasechar()
  75.   {
  76.   return(_DCCHAR);        /* character delete char */
  77.   } /* erasechar */
  78.  
  79. int killchar()
  80.   {
  81.   return(_DLCHAR);        /* line delete char */
  82.   } /* killchar */
  83.  
  84. /****************************************************************/
  85. /* Savetty() and resetty() saves and restores the terminal I/O    */
  86. /* settings.                            */
  87. /****************************************************************/
  88.  
  89. int savetty()
  90.   {
  91.   savedacr  = _cursvar.autocr;
  92.   savedcbr  = _cursvar.cbreak;
  93.   savedecho = _cursvar.echo;
  94.   savedraw  = _cursvar.raw;
  95.   return(OK);
  96.   } /* savetty */
  97.  
  98. int resetty()
  99.   {
  100.   _cursvar.autocr = savedacr;
  101.   _cursvar.cbreak = savedcbr;
  102.   _cursvar.echo   = savedecho;
  103.   _cursvar.raw    = savedraw;
  104.   return(OK);
  105.   } /* resetty */
  106.  
  107. /****************************************************************/
  108. /* Setupterm() sets up the terminal. On a PC, it is always suc-    */
  109. /* cessful, and returns 1.                    */
  110. /****************************************************************/
  111.  
  112. int setupterm()
  113.   {
  114.   return(1);
  115.   } /* setupterm */
  116.