summaryrefslogtreecommitdiff
path: root/hw/xfree86
diff options
context:
space:
mode:
authorTakuma Murakami <takuma@dgp.ne.jp>2004-02-25 06:23:39 +0000
committerTakuma Murakami <takuma@dgp.ne.jp>2004-02-25 06:23:39 +0000
commit1064c98feca863a7fc4cc86ffed20a6dda16a50e (patch)
tree94fb0183f8337939571e33fdc91b97bcda3fa894 /hw/xfree86
parent6557c4b5468e94bf25132aa30bd1dbdec82b4637 (diff)
For the topmost Windows window, explicitly raise its X counterpart to the
top in Z order to keep correct stacking when there is a minimized window which formerly obscured it.
Diffstat (limited to 'hw/xfree86')
-rw-r--r--hw/xfree86/os-support/misc/PortIO.S57
1 files changed, 57 insertions, 0 deletions
diff --git a/hw/xfree86/os-support/misc/PortIO.S b/hw/xfree86/os-support/misc/PortIO.S
new file mode 100644
index 000000000..61aac6b89
--- /dev/null
+++ b/hw/xfree86/os-support/misc/PortIO.S
@@ -0,0 +1,57 @@
+/* $XFree86: xc/programs/Xserver/hw/xfree86/os-support/misc/PortIO.S,v 1.1 2004/02/02 03:55:32 dawes Exp $ */
+
+/* Port I/O functions for platforms with no inlining. */
+
+#include "assyntax.h"
+
+ FILE("PortIO.s")
+
+ AS_BEGIN
+
+ GLOBL GLNAME(outb)
+ GLOBL GLNAME(outw)
+ GLOBL GLNAME(outl)
+ GLOBL GLNAME(inb)
+ GLOBL GLNAME(inw)
+ GLOBL GLNAME(inl)
+
+ SEG_TEXT
+ ALIGNTEXT4
+GLNAME(outb):
+ MOV_L (REGOFF(4,ESP), EDX)
+ MOV_L (REGOFF(8,ESP), EAX)
+ OUT_B
+ RET
+
+ ALIGNTEXT4
+GLNAME(outw):
+ MOV_L (REGOFF(4,ESP), EDX)
+ MOV_L (REGOFF(8,ESP), EAX)
+ OUT_W
+ RET
+
+ ALIGNTEXT4
+GLNAME(outl):
+ MOV_L (REGOFF(4,ESP), EDX)
+ MOV_L (REGOFF(8,ESP), EAX)
+ OUT_L
+ RET
+
+ ALIGNTEXT4
+GLNAME(inb):
+ MOV_L (REGOFF(4,ESP), EDX)
+ IN_B
+ RET
+
+ ALIGNTEXT4
+GLNAME(inw):
+ MOV_L (REGOFF(4,ESP), EDX)
+ IN_L
+ RET
+
+ ALIGNTEXT4
+GLNAME(inl):
+ MOV_L (REGOFF(4,ESP), EDX)
+ IN_L
+ RET
+