|
|
bdeec79 |
Index: allegro/include/allegro/platform/aintlnx.h
|
|
|
bdeec79 |
diff -u allegro/include/allegro/platform/aintlnx.h:1.3 allegro/include/allegro/platform/aintlnx.h:1.3.2.1
|
|
|
bdeec79 |
--- allegro/include/allegro/platform/aintlnx.h:1.3 Tue Nov 13 14:52:13 2001
|
|
|
bdeec79 |
+++ allegro/include/allegro/platform/aintlnx.h Thu Oct 9 08:02:07 2003
|
|
|
bdeec79 |
@@ -259,8 +259,11 @@
|
|
|
bdeec79 |
|
|
|
bdeec79 |
|
|
|
bdeec79 |
/* VGA register access helpers */
|
|
|
bdeec79 |
-#include "allegro/internal/aintern.h"
|
|
|
bdeec79 |
-#include "allegro/internal/aintvga.h"
|
|
|
bdeec79 |
+/* This is conditional because configure may have disabled VGA support */
|
|
|
bdeec79 |
+#ifdef ALLEGRO_LINUX_VGA
|
|
|
bdeec79 |
+ #include "allegro/internal/aintern.h"
|
|
|
bdeec79 |
+ #include "allegro/internal/aintvga.h"
|
|
|
bdeec79 |
+#endif
|
|
|
bdeec79 |
|
|
|
bdeec79 |
|
|
|
bdeec79 |
|
|
|
bdeec79 |
Index: allegro/include/allegro/platform/alunix.h
|
|
|
bdeec79 |
diff -u allegro/include/allegro/platform/alunix.h:1.2.2.2 allegro/include/allegro/platform/alunix.h:1.2.2.3
|
|
|
bdeec79 |
--- allegro/include/allegro/platform/alunix.h:1.2.2.2 Fri Jan 31 08:12:50 2003
|
|
|
bdeec79 |
+++ allegro/include/allegro/platform/alunix.h Thu Oct 9 08:02:08 2003
|
|
|
bdeec79 |
@@ -251,6 +251,8 @@
|
|
|
bdeec79 |
|
|
|
bdeec79 |
/* Port I/O functions -- maybe these should be internal */
|
|
|
bdeec79 |
|
|
|
bdeec79 |
+#ifdef ALLEGRO_LINUX_VGA
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
static INLINE void outportb(unsigned short port, unsigned char value)
|
|
|
bdeec79 |
{
|
|
|
bdeec79 |
__asm__ volatile ("outb %0, %1" : : "a" (value), "d" (port));
|
|
|
bdeec79 |
@@ -287,6 +289,8 @@
|
|
|
bdeec79 |
return value;
|
|
|
bdeec79 |
}
|
|
|
bdeec79 |
|
|
|
bdeec79 |
+#endif /* ALLEGRO_LINUX_VGA */
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
|
|
|
bdeec79 |
#endif /* ALLEGRO_LINUX */
|
|
|
bdeec79 |
|
|
|
bdeec79 |
Index: allegro/src/linux/lsystem.c
|
|
|
bdeec79 |
diff -u allegro/src/linux/lsystem.c:1.17.2.1 allegro/src/linux/lsystem.c:1.17.2.4
|
|
|
bdeec79 |
--- allegro/src/linux/lsystem.c:1.17.2.1 Fri Feb 7 04:41:09 2003
|
|
|
bdeec79 |
+++ allegro/src/linux/lsystem.c Thu Oct 9 08:02:09 2003
|
|
|
bdeec79 |
@@ -26,13 +26,16 @@
|
|
|
bdeec79 |
#include "allegro.h"
|
|
|
bdeec79 |
#include "allegro/internal/aintern.h"
|
|
|
bdeec79 |
#include "allegro/platform/aintunix.h"
|
|
|
bdeec79 |
-#include "allegro/internal/aintvga.h"
|
|
|
bdeec79 |
-#include "linalleg.h"
|
|
|
bdeec79 |
+#include "allegro/platform/aintlnx.h"
|
|
|
bdeec79 |
|
|
|
bdeec79 |
+#ifdef ALLEGRO_LINUX_VGA
|
|
|
bdeec79 |
#ifdef HAVE_SYS_IO_H
|
|
|
bdeec79 |
/* iopl() exists in here instead of unistd.h in glibc */
|
|
|
bdeec79 |
#include <sys/io.h>
|
|
|
bdeec79 |
#endif
|
|
|
bdeec79 |
+#endif
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
+#include "linalleg.h"
|
|
|
bdeec79 |
|
|
|
bdeec79 |
#ifndef ALLEGRO_LINUX
|
|
|
bdeec79 |
#error Something is wrong with the makefile
|
|
|
bdeec79 |
@@ -171,7 +174,9 @@
|
|
|
bdeec79 |
* we attempt to set our euid to 0, in case this is the
|
|
|
bdeec79 |
* second time we've been called. */
|
|
|
bdeec79 |
__al_linux_have_ioperms = !seteuid (0);
|
|
|
bdeec79 |
+#ifdef ALLEGRO_LINUX_VGA
|
|
|
bdeec79 |
__al_linux_have_ioperms &= !iopl (3);
|
|
|
bdeec79 |
+#endif
|
|
|
bdeec79 |
__al_linux_have_ioperms &= !__al_linux_init_memory();
|
|
|
bdeec79 |
|
|
|
bdeec79 |
/* At this stage we can drop the root privileges. */
|
|
|
bdeec79 |
@@ -189,8 +194,10 @@
|
|
|
bdeec79 |
if (__al_linux_init_console()) return -1;
|
|
|
bdeec79 |
|
|
|
bdeec79 |
/* Initialise VGA helpers */
|
|
|
bdeec79 |
+#ifdef ALLEGRO_LINUX_VGA
|
|
|
bdeec79 |
if (__al_linux_have_ioperms)
|
|
|
bdeec79 |
if (__al_linux_init_vga_helpers()) return -1;
|
|
|
bdeec79 |
+#endif
|
|
|
bdeec79 |
|
|
|
bdeec79 |
/* Install emergency-exit signal handlers */
|
|
|
bdeec79 |
old_sig_abrt = signal(SIGABRT, signal_handler);
|
|
|
bdeec79 |
@@ -242,7 +249,10 @@
|
|
|
bdeec79 |
#endif
|
|
|
bdeec79 |
|
|
|
bdeec79 |
/* shut down VGA helpers */
|
|
|
bdeec79 |
- __al_linux_shutdown_vga_helpers();
|
|
|
bdeec79 |
+#ifdef ALLEGRO_LINUX_VGA
|
|
|
bdeec79 |
+ if (__al_linux_have_ioperms)
|
|
|
bdeec79 |
+ __al_linux_shutdown_vga_helpers();
|
|
|
bdeec79 |
+#endif
|
|
|
bdeec79 |
|
|
|
bdeec79 |
/* shut down the console subsystem */
|
|
|
bdeec79 |
__al_linux_done_console();
|
|
|
bdeec79 |
@@ -254,7 +264,9 @@
|
|
|
bdeec79 |
_unix_driver_lists_shutdown();
|
|
|
bdeec79 |
|
|
|
bdeec79 |
__al_linux_shutdown_memory();
|
|
|
bdeec79 |
+#ifdef ALLEGRO_LINUX_VGA
|
|
|
bdeec79 |
iopl (0);
|
|
|
bdeec79 |
+#endif
|
|
|
bdeec79 |
}
|
|
|
bdeec79 |
|
|
|
bdeec79 |
|
|
|
bdeec79 |
Index: allegro/src/linux/lvga.c
|
|
|
bdeec79 |
diff -u allegro/src/linux/lvga.c:1.7 allegro/src/linux/lvga.c:1.7.2.1
|
|
|
bdeec79 |
--- allegro/src/linux/lvga.c:1.7 Mon Dec 3 05:34:27 2001
|
|
|
bdeec79 |
+++ allegro/src/linux/lvga.c Thu Oct 9 08:02:09 2003
|
|
|
bdeec79 |
@@ -24,12 +24,13 @@
|
|
|
bdeec79 |
#include <sys/mman.h>
|
|
|
bdeec79 |
|
|
|
bdeec79 |
#include "allegro.h"
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
+#if ((defined ALLEGRO_LINUX_VGA) && ((!defined ALLEGRO_WITH_MODULES) || (defined ALLEGRO_MODULE)))
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
#include "allegro/internal/aintern.h"
|
|
|
bdeec79 |
#include "allegro/platform/aintunix.h"
|
|
|
bdeec79 |
#include "allegro/internal/aintvga.h"
|
|
|
bdeec79 |
|
|
|
bdeec79 |
-#if ((defined ALLEGRO_LINUX_VGA) && ((!defined ALLEGRO_WITH_MODULES) || (defined ALLEGRO_MODULE)))
|
|
|
bdeec79 |
-
|
|
|
bdeec79 |
|
|
|
bdeec79 |
|
|
|
bdeec79 |
static MODE_REGISTERS mode13h = /* 320x200x8bpp NI */
|
|
|
bdeec79 |
Index: allegro/src/linux/lvgahelp.c
|
|
|
bdeec79 |
diff -u allegro/src/linux/lvgahelp.c:1.4 allegro/src/linux/lvgahelp.c:1.4.2.1
|
|
|
bdeec79 |
--- allegro/src/linux/lvgahelp.c:1.4 Tue Nov 13 14:52:13 2001
|
|
|
bdeec79 |
+++ allegro/src/linux/lvgahelp.c Thu Oct 9 08:02:09 2003
|
|
|
bdeec79 |
@@ -20,6 +20,9 @@
|
|
|
bdeec79 |
#endif
|
|
|
bdeec79 |
|
|
|
bdeec79 |
#include "allegro.h"
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
+#ifdef ALLEGRO_LINUX_VGA
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
#include "allegro/internal/aintern.h"
|
|
|
bdeec79 |
#include "allegro/platform/aintunix.h"
|
|
|
bdeec79 |
#include "allegro/internal/aintvga.h"
|
|
|
bdeec79 |
@@ -263,3 +266,4 @@
|
|
|
bdeec79 |
__al_linux_set_vga_regs (&txt_regs);
|
|
|
bdeec79 |
}
|
|
|
bdeec79 |
|
|
|
bdeec79 |
+#endif /* ALLEGRO_LINUX_VGA */
|
|
|
bdeec79 |
Index: allegro/src/linux/vtswitch.c
|
|
|
bdeec79 |
diff -u allegro/src/linux/vtswitch.c:1.8.2.2 allegro/src/linux/vtswitch.c:1.8.2.3
|
|
|
bdeec79 |
--- allegro/src/linux/vtswitch.c:1.8.2.2 Fri Feb 7 05:35:56 2003
|
|
|
bdeec79 |
+++ allegro/src/linux/vtswitch.c Thu Oct 9 08:02:10 2003
|
|
|
bdeec79 |
@@ -26,5 +26,4 @@
|
|
|
bdeec79 |
#include "allegro.h"
|
|
|
bdeec79 |
#include "allegro/internal/aintern.h"
|
|
|
bdeec79 |
#include "allegro/platform/aintunix.h"
|
|
|
bdeec79 |
-#include "allegro/internal/aintvga.h"
|
|
|
bdeec79 |
#include "linalleg.h"
|
|
|
bdeec79 |
|
|
|
bdeec79 |
#ifdef HAVE_MMAP
|
|
|
bdeec79 |
Index: allegro/src/misc/modex.c
|
|
|
bdeec79 |
diff -u allegro/src/misc/modex.c:1.23.2.3 allegro/src/misc/modex.c:1.23.2.4
|
|
|
bdeec79 |
--- allegro/src/misc/modex.c:1.23.2.3 Fri Feb 14 05:25:33 2003
|
|
|
bdeec79 |
+++ allegro/src/misc/modex.c Thu Oct 9 08:02:10 2003
|
|
|
bdeec79 |
@@ -23,6 +23,9 @@
|
|
|
bdeec79 |
#include <string.h>
|
|
|
bdeec79 |
|
|
|
bdeec79 |
#include "allegro.h"
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
+#ifdef GFX_MODEX
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
#include "allegro/internal/aintern.h"
|
|
|
bdeec79 |
#include "allegro/internal/aintvga.h"
|
|
|
bdeec79 |
|
|
|
bdeec79 |
@@ -30,7 +33,6 @@
|
|
|
bdeec79 |
#include ALLEGRO_INTERNAL_HEADER
|
|
|
bdeec79 |
#endif
|
|
|
bdeec79 |
|
|
|
bdeec79 |
-#ifdef GFX_MODEX
|
|
|
bdeec79 |
#if (!defined ALLEGRO_LINUX) || ((defined ALLEGRO_LINUX_VGA) && ((!defined ALLEGRO_WITH_MODULES) || (defined ALLEGRO_MODULE)))
|
|
|
bdeec79 |
|
|
|
bdeec79 |
|
|
|
bdeec79 |
Index: allegro/src/misc/vga.c
|
|
|
bdeec79 |
diff -u allegro/src/misc/vga.c:1.17.2.1 allegro/src/misc/vga.c:1.17.2.2
|
|
|
bdeec79 |
--- allegro/src/misc/vga.c:1.17.2.1 Fri Feb 7 05:36:02 2003
|
|
|
bdeec79 |
+++ allegro/src/misc/vga.c Thu Oct 9 08:02:10 2003
|
|
|
bdeec79 |
@@ -23,6 +23,9 @@
|
|
|
bdeec79 |
#include <string.h>
|
|
|
bdeec79 |
|
|
|
bdeec79 |
#include "allegro.h"
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
+#ifdef GFX_VGA
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
#include "allegro/internal/aintern.h"
|
|
|
bdeec79 |
#include "allegro/internal/aintvga.h"
|
|
|
bdeec79 |
|
|
|
bdeec79 |
@@ -30,7 +33,6 @@
|
|
|
bdeec79 |
#include ALLEGRO_INTERNAL_HEADER
|
|
|
bdeec79 |
#endif
|
|
|
bdeec79 |
|
|
|
bdeec79 |
-#ifdef GFX_VGA
|
|
|
bdeec79 |
#if (!defined ALLEGRO_LINUX) || ((defined ALLEGRO_LINUX_VGA) && ((!defined ALLEGRO_WITH_MODULES) || (defined ALLEGRO_MODULE)))
|
|
|
bdeec79 |
|
|
|
bdeec79 |
|
|
|
bdeec79 |
Index: allegro/src/misc/vgaregs.c
|
|
|
bdeec79 |
diff -u allegro/src/misc/vgaregs.c:1.5 allegro/src/misc/vgaregs.c:1.5.2.1
|
|
|
bdeec79 |
--- allegro/src/misc/vgaregs.c:1.5 Tue Nov 13 14:52:13 2001
|
|
|
bdeec79 |
+++ allegro/src/misc/vgaregs.c Thu Oct 9 08:02:10 2003
|
|
|
bdeec79 |
@@ -17,6 +17,9 @@
|
|
|
bdeec79 |
|
|
|
bdeec79 |
|
|
|
bdeec79 |
#include "allegro.h"
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
+#ifdef GFX_VGA
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
#include "allegro/internal/aintern.h"
|
|
|
bdeec79 |
#include "allegro/internal/aintvga.h"
|
|
|
bdeec79 |
|
|
|
bdeec79 |
@@ -88,3 +91,4 @@
|
|
|
bdeec79 |
}
|
|
|
bdeec79 |
|
|
|
bdeec79 |
|
|
|
bdeec79 |
+#endif /* GFX_VGA */
|
|
|
bdeec79 |
Index: allegro/src/unix/uptimer.c
|
|
|
bdeec79 |
diff -u allegro/src/unix/uptimer.c:1.6 allegro/src/unix/uptimer.c:1.6.2.1
|
|
|
bdeec79 |
--- allegro/src/unix/uptimer.c:1.6 Wed Jan 23 14:25:34 2002
|
|
|
bdeec79 |
+++ allegro/src/unix/uptimer.c Sat Oct 4 13:04:27 2003
|
|
|
bdeec79 |
@@ -19,16 +19,6 @@
|
|
|
bdeec79 |
#include "allegro.h"
|
|
|
bdeec79 |
#include "allegro/internal/aintern.h"
|
|
|
bdeec79 |
|
|
|
bdeec79 |
-/* See hack later. */
|
|
|
bdeec79 |
-#ifdef ALLEGRO_LINUX
|
|
|
bdeec79 |
-#include <unistd.h>
|
|
|
bdeec79 |
-#ifdef HAVE_SYS_IO_H
|
|
|
bdeec79 |
-#include <sys/io.h>
|
|
|
bdeec79 |
-#endif
|
|
|
bdeec79 |
-#include "allegro/platform/aintlnx.h"
|
|
|
bdeec79 |
-#endif
|
|
|
bdeec79 |
-
|
|
|
bdeec79 |
-
|
|
|
bdeec79 |
|
|
|
bdeec79 |
#ifdef HAVE_LIBPTHREAD
|
|
|
bdeec79 |
|
|
|
bdeec79 |
@@ -38,6 +28,16 @@
|
|
|
bdeec79 |
#include <sys/time.h>
|
|
|
bdeec79 |
|
|
|
bdeec79 |
|
|
|
bdeec79 |
+/* See hack later. */
|
|
|
bdeec79 |
+#ifdef ALLEGRO_LINUX_VGA
|
|
|
bdeec79 |
+#ifdef HAVE_SYS_IO_H
|
|
|
bdeec79 |
+/* iopl() exists in here instead of unistd.h in glibc */
|
|
|
bdeec79 |
+#include <sys/io.h>
|
|
|
bdeec79 |
+#endif
|
|
|
bdeec79 |
+#include "allegro/platform/aintlnx.h"
|
|
|
bdeec79 |
+#endif
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
+
|
|
|
bdeec79 |
#define TIMER_TO_USEC(x) ((long)((x) / 1.193181))
|
|
|
bdeec79 |
#define USEC_TO_TIMER(x) ((long)((x) * (TIMERS_PER_SECOND / 1000000.)))
|
|
|
bdeec79 |
|
|
|
bdeec79 |
@@ -89,7 +89,7 @@
|
|
|
bdeec79 |
|
|
|
bdeec79 |
block_all_signals();
|
|
|
bdeec79 |
|
|
|
bdeec79 |
-#ifdef ALLEGRO_LINUX
|
|
|
bdeec79 |
+#ifdef ALLEGRO_LINUX_VGA
|
|
|
bdeec79 |
/* privileges hack for Linux:
|
|
|
bdeec79 |
* One of the jobs of the timer thread is to update the mouse pointer
|
|
|
bdeec79 |
* on screen. When using the Mode-X driver under Linux console, this
|