diff options
Diffstat (limited to 'xorg-server/hw/kdrive/src')
-rw-r--r-- | xorg-server/hw/kdrive/src/kdrive.c | 6 | ||||
-rw-r--r-- | xorg-server/hw/kdrive/src/kinput.c | 27 | ||||
-rw-r--r-- | xorg-server/hw/kdrive/src/kmap.c | 9 | ||||
-rw-r--r-- | xorg-server/hw/kdrive/src/makefile | 15 |
4 files changed, 55 insertions, 2 deletions
diff --git a/xorg-server/hw/kdrive/src/kdrive.c b/xorg-server/hw/kdrive/src/kdrive.c index 5cfe54ff8..f79b96f6f 100644 --- a/xorg-server/hw/kdrive/src/kdrive.c +++ b/xorg-server/hw/kdrive/src/kdrive.c @@ -321,6 +321,7 @@ KdProcessSwitch (void) KdEnableScreens (); } +#ifndef _MSC_VER void AbortDDX(void) { @@ -343,6 +344,7 @@ ddxGiveUp (void) { AbortDDX (); } +#endif Bool kdDumbDriver; Bool kdSoftCursor; @@ -1310,11 +1312,14 @@ KdInitOutput (ScreenInfo *pScreenInfo, OsRegisterSigWrapper(KdSignalWrapper); } +#ifndef _MSC_VER void OsVendorFatalError(void) { } +#endif +#ifndef _MSC_VER int DPMSSet(ClientPtr client, int level) { @@ -1326,3 +1331,4 @@ DPMSSupported (void) { return FALSE; } +#endif diff --git a/xorg-server/hw/kdrive/src/kinput.c b/xorg-server/hw/kdrive/src/kinput.c index 318d233d4..58b8f2ba9 100644 --- a/xorg-server/hw/kdrive/src/kinput.c +++ b/xorg-server/hw/kdrive/src/kinput.c @@ -104,21 +104,29 @@ KdSigio (int sig) static void KdBlockSigio (void) { +#ifdef _MSC_VER + __asm int 3; +#else sigset_t set; sigemptyset (&set); sigaddset (&set, SIGIO); sigprocmask (SIG_BLOCK, &set, 0); +#endif } static void KdUnblockSigio (void) { +#ifdef _MSC_VER + __asm int 3; +#else sigset_t set; sigemptyset (&set); sigaddset (&set, SIGIO); sigprocmask (SIG_UNBLOCK, &set, 0); +#endif } #ifdef DEBUG_SIGIO @@ -164,15 +172,22 @@ KdResetInputMachine (void) static void KdNonBlockFd (int fd) { +#ifdef _MSC_VER + __asm int 3; +#else int flags; flags = fcntl (fd, F_GETFL); flags |= FASYNC|NOBLOCK; fcntl (fd, F_SETFL, flags); +#endif } static void KdAddFd (int fd) { +#ifdef _MSC_VER + __asm int 3; +#else struct sigaction act; sigset_t set; @@ -189,11 +204,15 @@ KdAddFd (int fd) sigaction (SIGIO, &act, 0); sigemptyset (&set); sigprocmask (SIG_SETMASK, &set, 0); +#endif } static void KdRemoveFd (int fd) { +#ifdef _MSC_VER + __asm int 3; +#else struct sigaction act; int flags; @@ -209,6 +228,7 @@ KdRemoveFd (int fd) sigemptyset (&act.sa_mask); sigaction (SIGIO, &act, 0); } +#endif } Bool @@ -546,11 +566,13 @@ KdPointerProc(DeviceIntPtr pDevice, int onoff) return BadImplementation; } +#ifndef _MSC_VER Bool LegalModifier(unsigned int key, DeviceIntPtr pDev) { return TRUE; } +#endif static void KdBell (int volume, DeviceIntPtr pDev, pointer arg, int something) @@ -569,6 +591,7 @@ KdBell (int volume, DeviceIntPtr pDev, pointer arg, int something) KdRingBell(ki, volume, ctrl->bell_pitch, ctrl->bell_duration); } +#ifndef _MSC_VER void DDXRingBell(int volume, int pitch, int duration) { @@ -584,7 +607,7 @@ DDXRingBell(int volume, int pitch, int duration) } } } - +#endif void KdRingBell(KdKeyboardInfo *ki, int volume, int pitch, int duration) { @@ -2175,6 +2198,7 @@ miPointerScreenFuncRec kdPointerScreenFuncs = KdWarpCursor }; +#ifndef _MSC_VER void ProcessInputEvents (void) { @@ -2184,6 +2208,7 @@ ProcessInputEvents (void) KdProcessSwitch (); KdCheckLock (); } +#endif /* FIXME use XSECURITY to work out whether the client should be allowed to * open and close. */ diff --git a/xorg-server/hw/kdrive/src/kmap.c b/xorg-server/hw/kdrive/src/kmap.c index 60e8ae134..a10c9ec09 100644 --- a/xorg-server/hw/kdrive/src/kmap.c +++ b/xorg-server/hw/kdrive/src/kmap.c @@ -24,6 +24,7 @@ #include "kdrive.h" #include <errno.h> +#ifndef _MSC_VER #include <unistd.h> #include <sys/mman.h> #ifdef HAVE_ASM_MTRR_H @@ -31,6 +32,9 @@ #endif #include <sys/ioctl.h> +#else +#define DRAW_DEBUG(a) +#endif void * KdMapDevice (CARD32 addr, CARD32 size) @@ -39,7 +43,8 @@ KdMapDevice (CARD32 addr, CARD32 size) void *a; void *d; - d = VirtualAlloc (NULL, size, MEM_RESERVE, PAGE_NOACCESS); + d = VirtualAlloc (NULL, size, MEM_RESERVE, PAGE_READWRITE|PAGE_NOCACHE); +/* if (!d) return NULL; DRAW_DEBUG ((DEBUG_S3INIT, "Virtual address of 0x%x is 0x%x", addr, d)); @@ -53,6 +58,8 @@ KdMapDevice (CARD32 addr, CARD32 size) return NULL; } DRAW_DEBUG ((DEBUG_S3INIT, "Device mapped successfully")); +*/ + __asm int 3; return d; #endif #ifdef linux diff --git a/xorg-server/hw/kdrive/src/makefile b/xorg-server/hw/kdrive/src/makefile new file mode 100644 index 000000000..db710ec4f --- /dev/null +++ b/xorg-server/hw/kdrive/src/makefile @@ -0,0 +1,15 @@ +LIBRARY = libkdrive + +CSRCS = \ + kcmap.c \ + kcurscol.c \ + kinfo.c \ + kkeymap.c \ + kmap.c \ + kmode.c \ + kshadow.c \ + kinput.c \ + kdrive.c + + + |