Works for both signed and unsigned char.
@ -2298,7 +2298,7 @@ techo(char *buf, int len) {
for(; len > 0; buf++, len--) {
char c = *buf;
if(c < 0x20 || c == 0177) { /* control code */
if(BETWEEN(c, 0x00, 0x1f) || c == 0x7f) { /* control code */
if(c != '\n' && c != '\r' && c != '\t') {
c ^= '\x40';
tputc("^", 1);