home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 31 / CDASC_31_1996_juillet_aout.iso / vrac / rawed1_1.zip / SOLARIS.IO < prev    next >
Text File  |  1996-06-08  |  4KB  |  182 lines

  1. /* solaris.io    IO porting code for Sun sparc1 on Solaris OS*/
  2.  
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5. #include <curses.h>
  6. #include <term.h>
  7. #include <string.h>
  8. #include <ctype.h>
  9. #include <unistd.h>
  10.  
  11. /*----------------------------------------------------------------------
  12. **                M A C R O S
  13. **----------------------------------------------------------------------
  14. */
  15.  
  16. #define io_MAX_VALID_CHARACTER 126
  17. #define io_MIN_VALID_CHARACTER  32
  18. #define io_MIXED_CASE_FILENAMES 1
  19.  
  20. #define io_CTRL_A 1
  21. #define io_CTRL_B 2
  22. #define io_CTRL_C 3
  23. #define io_CTRL_D 4
  24. #define io_CTRL_E 5
  25. #define io_CTRL_F 6
  26. #define io_CTRL_G 7
  27. #define io_CTRL_H 8
  28. #define io_CTRL_I 9
  29. #define io_CTRL_J 10
  30. #define io_CTRL_K 11
  31. #define io_CTRL_L 12
  32. #define io_CTRL_M 13
  33. #define io_CTRL_N 14
  34. #define io_CTRL_O 15
  35. #define io_CTRL_P 16
  36. #define io_CTRL_Q 17
  37. #define io_CTRL_R 18
  38. #define io_CTRL_T 20
  39. #define io_CTRL_U 21
  40. #define io_CTRL_V 22
  41. #define io_CTRL_W 23
  42. #define io_CTRL_X 24
  43. #define io_CTRL_Y 25
  44. #define io_CTRL_Z 26
  45. #define io_ESCAPE 27
  46.  
  47. #define io_F1 KEY_F(1)
  48. #define io_F2 KEY_F(2)
  49. #define io_F3 KEY_F(3)
  50. #define io_F4 KEY_F(4)
  51. #define io_F5 KEY_F(5)
  52. #define io_F6 KEY_F(6)
  53. #define io_F7 KEY_F(7)
  54. #define io_F8 KEY_F(8)
  55. #define io_F9 KEY_F(9)
  56. #define io_F10 KEY_F(10)
  57.  
  58. #define io_PAGEUP    KEY_PPAGE
  59. #define io_PAGEDOWN  KEY_NPAGE
  60. #define io_UP        KEY_UP
  61. #define io_DOWN      KEY_DOWN
  62. #define io_RIGHT     KEY_RIGHT
  63. #define io_LEFT      KEY_LEFT
  64. #define io_BACKSPACE KEY_BACKSPACE
  65. #define io_HOME      KEY_HOME
  66. #define io_END       5
  67. #define io_TAB       9
  68. #define io_ENTER     KEY_ENTER
  69. #define io_DELETE    KEY_DC 
  70.  
  71. #define io_A 65
  72. #define io_B 66
  73. #define io_C 67
  74. #define io_D 68
  75. #define io_E 69
  76. #define io_F 70
  77. #define io_G 71
  78. #define io_H 72
  79. #define io_I 73
  80. #define io_J 74
  81. #define io_K 75
  82. #define io_L 76
  83. #define io_M 77
  84. #define io_N 78
  85. #define io_O 79
  86. #define io_P 80
  87. #define io_Q 81
  88. #define io_R 82
  89. #define io_S 83
  90. #define io_T 84
  91. #define io_U 85
  92. #define io_V 86
  93. #define io_W 87
  94. #define io_X 88
  95. #define io_Y 89
  96. #define io_Z 90
  97.  
  98.  
  99. #define io_a 97
  100. #define io_b 98
  101. #define io_c 99
  102. #define io_d 100
  103. #define io_e 101
  104. #define io_f 102
  105. #define io_g 103
  106. #define io_h 104
  107. #define io_i 105
  108. #define io_j 106
  109. #define io_k 107
  110. #define io_l 108
  111. #define io_m 109
  112. #define io_n 110
  113. #define io_o 111
  114. #define io_p 112
  115. #define io_q 113
  116. #define io_r 114
  117. #define io_s 115
  118. #define io_t 116
  119. #define io_u 117
  120. #define io_v 118
  121. #define io_w 119
  122. #define io_x 120
  123. #define io_y 121
  124. #define io_z 122
  125.  
  126. #define io_MINUS 45
  127. #define io_STAR 42
  128. #define io_PLUS 43
  129. #define io_SLASH 47
  130. #define io_CARET 94
  131. #define io_SPACE 32
  132. #define io_EQUAL 61
  133.  
  134. #define io_CSR_INSERT     1
  135. #define io_CSR_BLANK      0
  136. #define io_CSR_TYPEOVER  -1
  137.  
  138.  
  139. #define io_printf            printw
  140. #define io_gotoxy(a,b)       move((b)-1,(a)-1)
  141. #define io_clrscr()          clear();refresh()
  142. #define io_refresh()         refresh()
  143. #define io_inchar()          getch()
  144.  
  145. #define io_flush_keyboard()  fflush(stdin)
  146. #define io_unlink            unlink
  147. #define io_puts              addstr
  148. #define io_putc              addch
  149.  
  150. char obuf[2000];
  151.  
  152. void io_init(void);
  153. void io_end(void);
  154.  
  155. void io_init(void)
  156. {
  157.    int i;
  158.  
  159.    setbuf(stdout,obuf);
  160.  
  161.    initscr();
  162.    clear();
  163.    nonl();
  164.    cbreak();
  165.    noecho();
  166.    keypad( stdscr, TRUE );
  167.    intrflush( stdscr, FALSE );
  168. /*   stdscr->_nodelay = 0; */  /* may need _notimeout = 0 or 1 */
  169.    stdscr->_delay = -1;
  170. /*   stdscr->_use_keypad=0; */
  171.    stdscr->_scroll = 0;
  172. }
  173.  
  174. void io_end(void)
  175. {
  176.    clear();
  177.    refresh();
  178.    endwin();
  179. }
  180.  
  181. 
  182.