summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStuart Bennett <sb476@cam.ac.uk>2007-11-16 20:50:43 +0000
committerStuart Bennett <sb476@cam.ac.uk>2007-11-16 22:07:05 +0000
commit0713eae35052fd8bb2c4e9db0235df047b98bd5b (patch)
treecda4570fa318dbf241283b487ae9a1f151bbccb0
parent377eb5a82f227e8ee067820f198f2f49b7d5833f (diff)
Hopefully fix 64 bit issues
-rw-r--r--thunk.c4
-rw-r--r--x86-common.c3
-rw-r--r--xf86include/xf86int10.h8
3 files changed, 10 insertions, 5 deletions
diff --git a/thunk.c b/thunk.c
index f453c00..72c0782 100644
--- a/thunk.c
+++ b/thunk.c
@@ -165,7 +165,7 @@ int LRMI_init() {
* Allocate a 64k stack.
*/
stack = LRMI_alloc_real(64 * 1024);
- X86_SS = (unsigned int) stack >> 4;
+ X86_SS = (u32) stack >> 4;
X86_ESP = 0xFFF9;
memset (stack, 0, 64*1024);
@@ -197,7 +197,7 @@ int real_call(struct LRMI_regs *registers) {
if (registers->ss != 0) {
X86_SS = registers->ss;
} else {
- X86_SS = (unsigned int) stack >> 4;
+ X86_SS = (u32) stack >> 4;
}
if (registers->ds != 0) {
diff --git a/x86-common.c b/x86-common.c
index 42f83ff..2d601d3 100644
--- a/x86-common.c
+++ b/x86-common.c
@@ -187,6 +187,8 @@ set_bit(unsigned int bit, void *array)
a[bit / 8] |= (1 << (bit % 8));
}
+#if 0
+These need fixing for 64 bit systems
static inline unsigned int
get_int_seg(int i)
{
@@ -199,6 +201,7 @@ get_int_off(int i)
{
return *(unsigned short *)(i * 4);
}
+#endif
int LRMI_common_init(void)
{
diff --git a/xf86include/xf86int10.h b/xf86include/xf86int10.h
index 9c131dd..ec01082 100644
--- a/xf86include/xf86int10.h
+++ b/xf86include/xf86int10.h
@@ -6,6 +6,8 @@
* Copyright 1999 Egbert Eich
*/
+#include "x86emu/types.h"
+
#ifndef _XF86INT10_H
#define _XF86INT10_H
@@ -16,9 +18,9 @@
#define SET_BIOS_SCRATCH 0x1
#define RESTORE_BIOS_SCRATCH 0x2
-#define CARD8 unsigned char
-#define CARD16 unsigned short
-#define CARD32 unsigned long
+#define CARD8 u8
+#define CARD16 u16
+#define CARD32 u32
#define pointer void *
#define IOADDRESS void *
#define Bool int