This file contains last-minute bug fixes which didn't make it into 2.1.1 This fix is for problems building some clients on Solaris X86 when the compiler predefines "sun". ------------------------------------------------------------------------ *** mit-2.1.1/clients/xload/get_load.c Thu May 5 16:16:17 1994 --- mit/clients/xload/get_load.c Thu May 5 16:15:46 1994 *************** *** 51,57 **** #include #endif ! #ifdef sun # include # ifdef i386 # include --- 51,57 ---- #include #endif ! #if defined(sun) && !defined(SOLX86) # include # ifdef i386 # include *** mit-2.1.1/clients/xterm/main.c Thu May 5 16:18:18 1994 --- mit/clients/xterm/main.c Thu May 5 16:26:02 1994 *************** *** 1669,1675 **** char buf[64]; char *TermName = NULL; int ldisc = 0; ! #ifdef sun #ifdef TIOCSSIZE struct ttysize ts; #endif /* TIOCSSIZE */ --- 1669,1675 ---- char buf[64]; char *TermName = NULL; int ldisc = 0; ! #if defined(sun) && !defined(SOLX86) #ifdef TIOCSSIZE struct ttysize ts; #endif /* TIOCSSIZE */ *************** *** 1877,1886 **** fprintf (stderr, "%s: unable to find usable termcap entry.\n", ProgramName); Exit (1); } } ! #ifdef sun #ifdef TIOCSSIZE /* tell tty how big window is */ if(screen->TekEmu) { --- 1877,1887 ---- fprintf (stderr, "%s: unable to find usable termcap entry.\n", ProgramName); Exit (1); + } } ! #if defined(sun) && !defined(SOLX86) #ifdef TIOCSSIZE /* tell tty how big window is */ if(screen->TekEmu) { *************** *** 2572,2578 **** if(handshake.rows > 0 && handshake.cols > 0) { screen->max_row = handshake.rows; screen->max_col = handshake.cols; ! #ifdef sun #ifdef TIOCSSIZE ts.ts_lines = screen->max_row + 1; ts.ts_cols = screen->max_col + 1; --- 2573,2579 ---- if(handshake.rows > 0 && handshake.cols > 0) { screen->max_row = handshake.rows; screen->max_col = handshake.cols; ! #if defined(sun) && !defined(SOLX86) #ifdef TIOCSSIZE ts.ts_lines = screen->max_row + 1; ts.ts_cols = screen->max_col + 1; *************** *** 2629,2635 **** /* need to reset after all the ioctl bashing we did above */ ! #ifdef sun #ifdef TIOCSSIZE ioctl (0, TIOCSSIZE, &ts); #endif /* TIOCSSIZE */ --- 2630,2636 ---- /* need to reset after all the ioctl bashing we did above */ ! #if defined(sun) && !defined(SOLX86) #ifdef TIOCSSIZE ioctl (0, TIOCSSIZE, &ts); #endif /* TIOCSSIZE */ ------------------------------------------------------------------------ This patch adds non-accelerated support for the WD90C33. Thanks to Bill Conn for his work on this. *** pvga1/driver.c.old 1994/05/31 08:15:47 --- pvga1/driver.c 1994/05/31 14:11:17 *************** *** 126,132 **** #define WD90C10 2 /* WD90C1x */ #define WD90C30 3 /* WD90C30 */ #define WD90C31 4 /* WD90C31 */ ! #define WD90C20 5 /* WD90C2x */ static int WDchipset; static int MClk = 45000; static int MClkIndex = 8; --- 126,133 ---- #define WD90C10 2 /* WD90C1x */ #define WD90C30 3 /* WD90C30 */ #define WD90C31 4 /* WD90C31 */ ! #define WD90C33 5 /* WD90C33 */ ! #define WD90C20 6 /* WD90C2x */ static int WDchipset; static int MClk = 45000; static int MClkIndex = 8; *************** *** 133,139 **** static unsigned char save_cs2 = 0; static Bool use_cs2 = TRUE; ! #define IS_WD90C3X(x) (((x) == WD90C30) || ((x) == WD90C31)) #undef DO_WD90C20 --- 134,141 ---- static unsigned char save_cs2 = 0; static Bool use_cs2 = TRUE; ! #define IS_WD90C3X(x) (((x) == WD90C30) || ((x) == WD90C31) || \ ! ((x) == WD90C33)) #undef DO_WD90C20 *************** *** 154,162 **** { #ifdef DO_WD90C20 static char *chipsets[] = {"pvga1","wd90c00","wd90c10", ! "wd90c30","wd90c31","wd90c20"}; #else ! static char *chipsets[] = {"pvga1","wd90c00","wd90c10","wd90c30","wd90c31"}; #endif if (n + 1 > sizeof(chipsets) / sizeof(char *)) --- 156,165 ---- { #ifdef DO_WD90C20 static char *chipsets[] = {"pvga1","wd90c00","wd90c10", ! "wd90c30","wd90c31","wd90c33","wd90c20"}; #else ! static char *chipsets[] = {"pvga1","wd90c00","wd90c10","wd90c30","wd90c31", ! "wd90c33"}; #endif if (n + 1 > sizeof(chipsets) / sizeof(char *)) *************** *** 279,286 **** WDchipset = WD90C30; else if (!StrCaseCmp(vga256InfoRec.chipset, PVGA1Ident(4))) WDchipset = WD90C31; #ifdef DO_WD90C20 ! else if (!StrCaseCmp(vga256InfoRec.chipset, PVGA1Ident(5))) WDchipset = WD90C20; #endif else --- 282,291 ---- WDchipset = WD90C30; else if (!StrCaseCmp(vga256InfoRec.chipset, PVGA1Ident(4))) WDchipset = WD90C31; + else if (!StrCaseCmp(vga256InfoRec.chipset, PVGA1Ident(5))) + WDchipset = WD90C33; #ifdef DO_WD90C20 ! else if (!StrCaseCmp(vga256InfoRec.chipset, PVGA1Ident(6))) WDchipset = WD90C20; #endif else *************** *** 335,340 **** --- 340,347 ---- WDchipset = WD90C31; else if ((sig[0] == '3') && (sig[1] == '0')) WDchipset = WD90C30; + else if ((sig[0] == '3') && (sig[1] == '3')) + WDchipset = WD90C33; else if ((sig[0] == '2') && (sig[1] == '4')) { WDchipset = WD90C30; ErrorF("%s %s: WD: Detected 90C24, treating it at 90C30\n", *************** *** 760,766 **** #ifndef MONOVGA new->std.CRTC[19] = vga256InfoRec.virtualX >> 3; /* we are in byte-mode */ ! new->std.CRTC[20] = 0x40; new->std.CRTC[23] = 0xE3; /* thats what the man says */ #endif --- 767,776 ---- #ifndef MONOVGA new->std.CRTC[19] = vga256InfoRec.virtualX >> 3; /* we are in byte-mode */ ! if (WDchipset == WD90C33) ! new->std.CRTC[20] = 0x00; ! else ! new->std.CRTC[20] = 0x40; new->std.CRTC[23] = 0xE3; /* thats what the man says */ #endif ------------------------------------------------------------------------