CVS commit: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k
Module Name:xsrc Committed By: tsutsui Date: Fri Nov 20 18:09:00 UTC 2020 Modified Files: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k: x68kConfig.c Log Message: Sync with xorg-server: Report which settings are chosen per a config file in the log file. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kConfig.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k
Module Name:xsrc Committed By: tsutsui Date: Fri Nov 20 18:09:00 UTC 2020 Modified Files: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k: x68kConfig.c Log Message: Sync with xorg-server: Report which settings are chosen per a config file in the log file. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kConfig.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kConfig.c diff -u xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kConfig.c:1.4 xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kConfig.c:1.5 --- xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kConfig.c:1.4 Thu Nov 5 16:06:08 2020 +++ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kConfig.c Fri Nov 20 18:09:00 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: x68kConfig.c,v 1.4 2020/11/05 16:06:08 tsutsui Exp $ */ +/* $NetBSD: x68kConfig.c,v 1.5 2020/11/20 18:09:00 tsutsui Exp $ */ /*- * Copyright (c) 1996 Yasushi Yamasaki * All rights reserved. @@ -112,16 +112,20 @@ const char *hostConfigFilename = "/etc/X const char *siteConfigFilename = X11_LIBDIR "/X68kConfig"; const char *configFilename = NULL; static FILE *config; -char modeSet = FALSE; +static char modeSet = FALSE; static int parseCommand(void); +static void logConfig(void); int x68kConfig(void) { -if (configFilename) +MessageType filefrom = X_DEFAULT; + +if (configFilename) { config = fopen(configFilename, "r"); -else { + filefrom = X_CMDLINE; +} else { configFilename = hostConfigFilename; config = fopen(configFilename, "r"); if (config == NULL) { @@ -131,11 +135,15 @@ x68kConfig(void) } if (config == NULL) FatalError("Can't open X68kConfig file"); + +LogMessage(filefrom, "Using config file: \"%s\"\n", configFilename); + while (parseCommand()) ; fclose(config); if (!modeSet) FatalError("No mode set."); +logConfig(); return 1; } @@ -143,7 +151,7 @@ x68kConfig(void) /*- * X68KConfig parsing part *---*/ -void parseError(int line, const char *str, ...); +static void parseError(int line, const char *str, ...); enum TokenType { TOKEN_EOF, @@ -255,7 +263,7 @@ static void parseMouse(int argc, Token * static void parseKeyboard(int argc, Token **argv); static void parseMode(int argc, Token **argv); -Command command[] = { +static const Command command[] = { { "ModeDef", parseModeDef }, { "Mouse", parseMouse }, { "Keyboard", parseKeyboard }, @@ -263,6 +271,24 @@ Command command[] = { }; #define NCOMMANDS (sizeof(command)/sizeof(command[0])) +static const char *x68kTypeStr[] = { + [X68K_FB_NULL]= NULL, + [X68K_FB_TEXT]= "Text", + [X68K_FB_GRAPHIC] = "Graphic", +}; +#define NTYPES (sizeof(x68kTypeStr) / sizeof(x68kTypeStr[0])) + +static const char *x68kClassStr[] = { + [StaticGray] = "StaticGray", + [GrayScale] = "GrayScale", + [StaticColor] = "StaticColor", + [PseudoColor] = "PseudoColor", + [TrueColor] = "TrueColor", + [DirectColor] = "DirectColor", +}; +#define NCLASSES (sizeof(x68kClassStr) / sizeof(x68kClassStr[0])) +#define ClassInvalid (-1) + /*- * function "parseCommand" * @@ -333,13 +359,13 @@ parseCommand(void) * purpose: examine the number of arguments and the type of each *argument. * argument: (int)n : correct number of arguments - *(enum TokenType *)type : table of types + *(const enum TokenType *)type : table of types *(int)argc_m1 : actual number of arguments *(Token **)argv : command and arguments * returns: nothing *---*/ static void -checkArguments(int n, enum TokenType *type, int argc_m1, Token **argv) +checkArguments(int n, const enum TokenType *type, int argc_m1, Token **argv) { int i; @@ -359,7 +385,7 @@ checkArguments(int n, enum TokenType *ty typedef struct _Mode { struct _Mode *next; -char *name; +const char *name; int type; int depth; int class; @@ -367,7 +393,8 @@ typedef struct _Mode { X68kFbReg reg; } Mode; -Mode *modeList = NULL; +static Mode *modeList = NULL; +static Mode *modeChosen; /*- * function "parseModeDef" @@ -379,7 +406,7 @@ Mode *modeList = NULL; static void parseModeDef(int argc, Token **argv) { -enum TokenType argtype[] = { +
CVS commit: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k
Module Name:xsrc Committed By: tsutsui Date: Fri Nov 13 17:49:57 UTC 2020 Modified Files: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k: X68kConfig Log Message: Sync with xorg-server: Fix typo in comment. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/X68kConfig Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/X68kConfig diff -u xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/X68kConfig:1.2 xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/X68kConfig:1.3 --- xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/X68kConfig:1.2 Thu Nov 5 16:06:08 2020 +++ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/X68kConfig Fri Nov 13 17:49:57 2020 @@ -1,4 +1,4 @@ -;; $NetBSD: X68kConfig,v 1.2 2020/11/05 16:06:08 tsutsui Exp $ +;; $NetBSD: X68kConfig,v 1.3 2020/11/13 17:49:57 tsutsui Exp $ ;; ;; X68kConfig: sample configuration for X68k ;; written by Yasushi Yamasaki @@ -81,7 +81,7 @@ 105040) ; -; 1024x762x4bit StaticGray +; 1024x768x4bit StaticGray ; CRTC-R20 = 0x041a(1050) VIDEOC-R0 = 0x0004 ; (ModeDef NeedsMultiScan Graphic 4 StaticGray 1024 768
CVS commit: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k
Module Name:xsrc Committed By: tsutsui Date: Fri Nov 13 17:49:57 UTC 2020 Modified Files: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k: X68kConfig Log Message: Sync with xorg-server: Fix typo in comment. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/X68kConfig Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k
Module Name:xsrc Committed By: tsutsui Date: Thu Nov 5 16:06:08 UTC 2020 Modified Files: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k: X68kConfig x68k.h x68kConfig.c x68kFb.c x68kGraph.c x68kInit.c x68kKbd.c x68kReg.h x68kText.c Log Message: Cherry-pick Xorg version independent changes from xorg-server. Normalize #include paths. Call LogInit() for logging to /var/log/X68k.%s.log as Xorg and Xsun servers. Fix a suspicious chunk disabled on xfree 4.x migration as sunKbd.c does. Restore video mode properly on exit even on CRT Mode 19 (640x480 31kHz VGA). Add ModeDef for 640x480x4bit PseudoColor. Avoid a use of __UNVOLATILE(3). Remove unnecessary pointer casts from malloc(3). Use exact-width interger types properly for register accesses etc. To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r1.2 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/X68kConfig cvs rdiff -u -r1.2 -r1.3 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68k.h cvs rdiff -u -r1.3 -r1.4 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kConfig.c \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kFb.c \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kGraph.c \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kReg.h \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kText.c cvs rdiff -u -r1.4 -r1.5 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kInit.c \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kKbd.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/X68kConfig diff -u xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/X68kConfig:1.1.1.1 xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/X68kConfig:1.2 --- xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/X68kConfig:1.1.1.1 Thu Jun 9 09:07:59 2016 +++ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/X68kConfig Thu Nov 5 16:06:08 2020 @@ -1,4 +1,4 @@ -;; $NetBSD: X68kConfig,v 1.1.1.1 2016/06/09 09:07:59 mrg Exp $ +;; $NetBSD: X68kConfig,v 1.2 2020/11/05 16:06:08 tsutsui Exp $ ;; ;; X68kConfig: sample configuration for X68k ;; written by Yasushi Yamasaki @@ -52,6 +52,14 @@ 919 17 81 5675 40 552 27 78930) +; +; 640x480x4bit PseudoColor +; CRTC-R20 = 0x0417(1047) VIDEOC-R0 = 0x0004 +; +(ModeDef Pseudo16Color640x480 Graphic 4 PseudoColor 640 480 +99 11 13 93 5241 33 513 27 + 104740) + ;; ;; tricky modes ;; @@ -100,6 +108,7 @@ ;(Mode Monochrome1024x768) ;(Mode Pseudo16Color1024x768) ;(Mode NeedsMultiScan) +;(Mode Pseudo16Color640x480) ;; ;; input devices Index: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68k.h diff -u xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68k.h:1.2 xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68k.h:1.3 --- xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68k.h:1.2 Fri Apr 10 16:49:36 2020 +++ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68k.h Thu Nov 5 16:06:08 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: x68k.h,v 1.2 2020/04/10 16:49:36 tsutsui Exp $ */ +/* $NetBSD: x68k.h,v 1.3 2020/11/05 16:06:08 tsutsui Exp $ */ /*- * Copyright (c) 1996 Yasushi Yamasaki * All rights reserved. @@ -43,12 +43,12 @@ #include /* generic X */ -#include -#include +#include +#include #define XK_KATAKANA -#include +#include #define NEED_EVENTS -#include +#include /* dix */ #include @@ -79,7 +79,7 @@ typedef struct _X68kScreenRec { int scr_height; /* screen height */ int dpi;/* dots per inch */ uint8_t *fb;/* frame buffer VA */ -volatile FbReg *reg;/* control register VA */ +FbReg *reg; /* control register VA */ X68kFbReg x68kreg; /* control register*/ int mapsize;/* size of mapped memory */ ColormapPtr installedMap; /* installed colormap*/ Index: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kConfig.c diff -u xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kConfig.c:1.3 xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kConfig.c:1.4 --- xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kConfig.c:1.3 Sat Aug 1 20:09:03 2020 +++ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kConfig.c Thu Nov 5 16:06:08 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: x68kConfig.c,v 1.3
CVS commit: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k
Module Name:xsrc Committed By: tsutsui Date: Thu Nov 5 16:06:08 UTC 2020 Modified Files: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k: X68kConfig x68k.h x68kConfig.c x68kFb.c x68kGraph.c x68kInit.c x68kKbd.c x68kReg.h x68kText.c Log Message: Cherry-pick Xorg version independent changes from xorg-server. Normalize #include paths. Call LogInit() for logging to /var/log/X68k.%s.log as Xorg and Xsun servers. Fix a suspicious chunk disabled on xfree 4.x migration as sunKbd.c does. Restore video mode properly on exit even on CRT Mode 19 (640x480 31kHz VGA). Add ModeDef for 640x480x4bit PseudoColor. Avoid a use of __UNVOLATILE(3). Remove unnecessary pointer casts from malloc(3). Use exact-width interger types properly for register accesses etc. To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r1.2 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/X68kConfig cvs rdiff -u -r1.2 -r1.3 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68k.h cvs rdiff -u -r1.3 -r1.4 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kConfig.c \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kFb.c \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kGraph.c \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kReg.h \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kText.c cvs rdiff -u -r1.4 -r1.5 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kInit.c \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kKbd.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k
Module Name:xsrc Committed By: tsutsui Date: Sun Jul 19 19:05:20 UTC 2020 Modified Files: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k: x68kKbd.c Log Message: Remove #ifdef XKB conditional. It has been mandatory on Xorg: https://cgit.freedesktop.org/xorg/xserver/commit/?id=40877c6680863bd6a8475f2bb0c54df55bcf0b0e To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kKbd.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kKbd.c diff -u xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kKbd.c:1.2 xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kKbd.c:1.3 --- xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kKbd.c:1.2 Fri Apr 10 16:49:36 2020 +++ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kKbd.c Sun Jul 19 19:05:20 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: x68kKbd.c,v 1.2 2020/04/10 16:49:36 tsutsui Exp $ */ +/* $NetBSD: x68kKbd.c,v 1.3 2020/07/19 19:05:20 tsutsui Exp $ */ /*- * Copyright (c) 1996 Yasushi Yamasaki * All rights reserved. @@ -378,12 +378,10 @@ x68kKbdCtrl(DeviceIntPtr pDev, KeybdCtrl { X68kKbdPrivPtr pPriv = (X68kKbdPrivPtr)pDev->public.devicePrivate; -#ifdef XKB if (pPriv->leds != ctrl->leds) { x68kSetLeds(pPriv, (u_char)ctrl->leds); pPriv->leds = ctrl->leds; } -#endif } /*-
CVS commit: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k
Module Name:xsrc Committed By: tsutsui Date: Sun Jul 19 19:05:20 UTC 2020 Modified Files: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k: x68kKbd.c Log Message: Remove #ifdef XKB conditional. It has been mandatory on Xorg: https://cgit.freedesktop.org/xorg/xserver/commit/?id=40877c6680863bd6a8475f2bb0c54df55bcf0b0e To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kKbd.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k
Module Name:xsrc Committed By: tsutsui Date: Sat Jul 18 04:37:50 UTC 2020 Modified Files: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k: x68kInit.c Log Message: Use AllocDevicePair() to initialize input devices in InitInput(). This should have been done on the initial X11R7'fied imoprt as upstream xnest did: https://cgit.freedesktop.org/xorg/xserver/commit?id=32ce5c83a504d2cafd2b19ed628b40032ef347b3 Tested and no visible regression on XM6i. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kInit.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kInit.c diff -u xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kInit.c:1.2 xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kInit.c:1.3 --- xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kInit.c:1.2 Fri Apr 10 16:49:36 2020 +++ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kInit.c Sat Jul 18 04:37:50 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: x68kInit.c,v 1.2 2020/04/10 16:49:36 tsutsui Exp $ */ +/* $NetBSD: x68kInit.c,v 1.3 2020/07/18 04:37:50 tsutsui Exp $ */ /*- * Copyright (c) 1996 Yasushi Yamasaki * All rights reserved. @@ -128,8 +128,14 @@ InitOutput(ScreenInfo *pScreenInfo, int void InitInput(int argc, char *argv[]) { -x68kPointerDevice = AddInputDevice(serverClient, x68kMouseProc, TRUE); -x68kKeyboardDevice = AddInputDevice(serverClient, x68kKbdProc, TRUE); +int rc; + +rc = AllocDevicePair(serverClient, "x68k", + , , + x68kMouseProc,x68kKbdProc, FALSE); +if (rc != Success) + FatalError("Failed to init x68k default input devices.\n"); + GetEventList(); if ( !mieqInit() )
CVS commit: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k
Module Name:xsrc Committed By: tsutsui Date: Sat Jul 18 04:37:50 UTC 2020 Modified Files: xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k: x68kInit.c Log Message: Use AllocDevicePair() to initialize input devices in InitInput(). This should have been done on the initial X11R7'fied imoprt as upstream xnest did: https://cgit.freedesktop.org/xorg/xserver/commit?id=32ce5c83a504d2cafd2b19ed628b40032ef347b3 Tested and no visible regression on XM6i. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ xsrc/external/mit/xorg-server.old/dist/hw/netbsd/x68k/x68kInit.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.