| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -392,7 +392,7 @@ static void tsetdirtattr(int); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static void tsetmode(bool, bool, int *, int); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static void tfulldirt(void); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static void techo(char *, int); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static bool tcontrolcode(uchar ); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static void tcontrolcode(uchar ); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static void tdectest(char ); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static int32_t tdefcolor(int *, int *, int); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					static void tdeftran(char); | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -2328,7 +2328,7 @@ tdeftran(char ascii) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							term.trantbl[term.icharset] = (*bp)[1]; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					bool | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					void | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					tcontrolcode(uchar ascii) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						static char question[UTF_SIZ] = "?"; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -2363,7 +2363,7 @@ tcontrolcode(uchar ascii) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							csireset(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							term.esc &= ~(ESC_CSI|ESC_ALTCHARSET|ESC_TEST); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							term.esc |= ESC_START; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							return 1; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							return; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						case '\016': /* SO */ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							term.charset = 0; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							break; | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -2395,11 +2395,9 @@ tcontrolcode(uchar ascii) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						case 0x9e:   /* TODO: PM */ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						case 0x9f:   /* TODO: APC */ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						default: | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							return 0; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						term.esc &= ~(ESC_STR_END|ESC_STR); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						return 1; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						return; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					void | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -2478,8 +2476,11 @@ tputc(char *c, int len) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						 * they must not cause conflicts with sequences. | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						 */ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						if(control) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							if (tcontrolcode(ascii)) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								return; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							tcontrolcode(ascii); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							/* | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							 * control codes are not shown ever | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							 */ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							return; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						} else if(term.esc & ESC_START) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							if(term.esc & ESC_CSI) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								csiescseq.buf[csiescseq.len++] = ascii; | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -2576,11 +2577,6 @@ tputc(char *c, int len) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							 */ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							return; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						/* | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						 * Display control codes only if we are in graphic mode | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						 */ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						if(control && term.trantbl[term.charset] != CS_GRAPHIC0) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							return; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						if(sel.ob.x != -1 && BETWEEN(term.c.y, sel.ob.y, sel.oe.y)) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							selclear(NULL); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |