home *** CD-ROM | disk | FTP | other *** search
/ CBM Funet Archive / cbm-funet-archive-2003.iso / cpm / editors / z80emacs.pma / TELANSI.C < prev    next >
Text File  |  1979-12-31  |  1KB  |  55 lines

  1. #INCLUDE "STDIO.H"
  2.  
  3. #INCLUDE "ED.H"
  4.  
  5.  
  6.  
  7. #DEFINEnrow24/* sCREEN SIZE.*/
  8.  
  9. #DEFINEncol80/* eDIT IF YOU WANT TO.*/
  10.  
  11. #DEFINEbel0X07/* bel CHARACTER.*/
  12.  
  13. #DEFINEesc0X1b/* esc CHARACTER.*/
  14.  
  15. INT ANSITERM;
  16.  
  17. CHAR TERMCTRL[3][10] =
  18.  
  19. {$7b}4, esc, '=', ' ', ' ', 0,0,0,0,0,
  20.  
  21. 2, esc, 't', 0,0, 0,0,0,0,0,
  22.  
  23. 1, 26,     0,0,0, 0,0,0,0,0
  24.  
  25. {$7d};
  26.  
  27.  
  28.  
  29. ANSIMOVE(ROW, COL)
  30.  
  31. {$7b}REGISTER CHAR * CP;
  32.  
  33. REGISTER INT I;
  34.  
  35.  
  36.  
  37. CP = &TERMCTRL[0][0];
  38.  
  39. I = *CP++;
  40.  
  41. CONOUT( *CP++ ); --I;
  42.  
  43. CONOUT( *CP++ ); --I;
  44.  
  45. IF ( ! ANSITERM )
  46.  
  47. {$7b}CONOUT( ROW + *CP++ ); ++I;
  48.  
  49. CONOUT( COL + *CP++ ); ++I;
  50.  
  51. {$7d}
  52.  
  53. ELSE
  54.  
  55. {$7b}CONOUT( ( ROW / 10 ) + *CP++ ); ++I;
  56.  
  57. CONOUT( ( ROW % 10 ) + *CP++ ); ++I;
  58.  
  59. CONOUT( *CP++ ); --I;
  60.  
  61. CONOUT( ( ROW / 10 ) + *CP++ ); ++I;
  62.  
  63. CONOUT( ( ROW % 10 ) + *CP++ ); ++I;
  64.  
  65. {$7d}
  66.  
  67. WHILE ( --I >= 0 ) CONOUT( *CP++ );
  68.  
  69. {$7d}
  70.  
  71. ANSICLEAR()
  72.  
  73. {$7b}CTLOUT( 2 );
  74.  
  75. {$7d}
  76.  
  77. ANSIEEOL()
  78.  
  79. {$7b}CTLOUT( 1 );
  80.  
  81. {$7d}
  82.  
  83. CTLOUT( X )
  84.  
  85. {$7b}REGISTER CHAR * CP;
  86.  
  87. REGISTER INT I;
  88.  
  89.  
  90.  
  91. CP = &TERMCTRL[X][0];
  92.  
  93. I = *CP++;
  94.  
  95. WHILE ( --I >= 0 ) CONOUT( *CP++ );
  96.  
  97. {$7d}
  98.  
  99.  
  100.  
  101. ANSIBEEP()
  102.  
  103. {$7b}
  104.  
  105. CONOUT( bel );
  106.  
  107. {$7d}
  108.  
  109.