3rdparty: build with ATARICROSS=1
This commit is contained in:
parent
83c660d0ea
commit
96d59333e3
37
3rdparty/Makefile
vendored
37
3rdparty/Makefile
vendored
@ -26,7 +26,8 @@ SDLARCH = $(SDL).tar.gz
|
||||
SDLURL = https://www.libsdl.org/release/$(SDLARCH)
|
||||
SDLSHA256 = d6d316a793e5e348155f0dd93b979798933fb98aa1edebcc108829d6474aad00
|
||||
SDLPATCHES = SDL-1.2.15-patch-src_video_x11_SDL_x11sym.h \
|
||||
SDL-1.2.15-quartzvideo.patch
|
||||
SDL-1.2.15-quartzvideo.patch \
|
||||
SDL-1.2.15-atari-timer.patch
|
||||
SDLDEVEL = SDL-devel-1.2.15-mingw32.tar.gz
|
||||
SDLDEVELURL = https://www.libsdl.org/release/$(SDLDEVEL)
|
||||
SDLDEVELPATCH = SDL-1.2.15.patch
|
||||
@ -101,6 +102,7 @@ LUAARCH=$(LUA).tar.gz
|
||||
LUAURL=https://www.lua.org/ftp/$(LUAARCH)
|
||||
LUAURLALT=https://www.tecgraf.puc-rio.br/lua/mirror/ftp/$(LUAARCH)
|
||||
LUASHA256=0c2eed3f960446e1a3e4b9a1ca2f3ff893b6ce41942cf54d5dd59ab4b3b058ac
|
||||
LUAPATCHES = lua-atari-log2.patch
|
||||
# https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-0.6.1.tar.gz
|
||||
RECOILVER=4.3.1
|
||||
RECOIL=recoil-$(RECOILVER)
|
||||
@ -156,6 +158,20 @@ CFLAGS = $(CROSS_CFLAGS)
|
||||
LDFLAGS = $(CROSS_LDFLAGS)
|
||||
endif
|
||||
|
||||
ifdef ATARICROSS
|
||||
ATARI = 1
|
||||
ARCH ?= m68k
|
||||
MCPU ?= -m68020-60
|
||||
CROSS_CC ?= $(ARCH)-atari-mint-gcc
|
||||
CROSS_AR ?= $(ARCH)-atari-mint-ar
|
||||
CROSS_RANLIB ?= $(ARCH)-atari-mint-ranlib
|
||||
CROSS_STRIP ?= $(ARCH)-atari-mint-strip
|
||||
CC = $(CROSS_CC)
|
||||
AR = $(CROSS_AR)
|
||||
RANLIB = $(CROSS_RANLIB)
|
||||
STRIP = $(CROSS_STRIP)
|
||||
endif
|
||||
|
||||
HOST = $(shell $(CC) -dumpmachine)
|
||||
#HOST = i686-pc-mingw32
|
||||
DATE = $(shell date -R)
|
||||
@ -211,6 +227,10 @@ ifdef WIN32
|
||||
done
|
||||
echo "The Windows distribution of Grafx2 is linked with Lua v$(LUAVER)" > ../doc/README-lua.txt
|
||||
else
|
||||
ifdef ATARI
|
||||
cd $(LUA) && $(MAKE) PLAT=generic CC=$(CC) RANLIB=$(RANLIB) AR="$(AR) rcs"
|
||||
cd $(LUA) && $(MAKE) install PLAT=generic INSTALL_TOP=$(PREFIX)
|
||||
else
|
||||
ifeq ($(PLATFORM), FreeBSD)
|
||||
cd $(LUA) && $(MAKE) freebsd install INSTALL_TOP=$(PREFIX)
|
||||
else
|
||||
@ -223,6 +243,7 @@ else
|
||||
cd $(LUA) && $(MAKE) posix install INSTALL_TOP=$(PREFIX)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
echo "Lua v$(LUAVER)" > ../doc/README-lua.txt
|
||||
endif
|
||||
@ -320,6 +341,9 @@ $(PREFIX)/lib/libSDLmain.a: archives/$(SDLDEVEL)
|
||||
tail --lines +3 $(SDL)/README-SDL.txt >> ../doc/README-SDL.txt
|
||||
else
|
||||
SDLDISABLE = --disable-joystick --disable-audio
|
||||
ifdef ATARI
|
||||
SDLDISABLE += --disable-video-opengl --disable-threads
|
||||
endif
|
||||
ifeq ($(PLATFORM), Darwin)
|
||||
SDLDISABLE += --without-x
|
||||
# the following trick was stolen from macports
|
||||
@ -333,6 +357,9 @@ $(PREFIX)/lib/libSDLmain.a: $(SDL)/.ok
|
||||
$(SDLDISABLE)
|
||||
cd $(SDL) && $(MAKE)
|
||||
cd $(SDL) && $(MAKE) install
|
||||
ifdef ATARI
|
||||
$(RM) $(PREFIX)/include/SDL/SDL_opengl.h
|
||||
endif
|
||||
$(CP) $(SDL)/README-SDL.txt ../doc/README-SDL.txt
|
||||
endif
|
||||
|
||||
@ -374,7 +401,11 @@ $(PREFIX)/lib/libSDL_ttf.a: $(PREFIX)/lib/libSDLmain.a
|
||||
$(PREFIX)/lib/libSDL_ttf.a: $(SDLTTF)/.ok
|
||||
cd $(SDLTTF) && PKG_CONFIG_PATH=$(PREFIX)/lib/pkgconfig \
|
||||
CC=$(CC) CPPFLAGS=-I$(PREFIX)/include LDFLAGS="-L$(PREFIX)/lib $(LDFLAGS) $(ADDLDFLAGS)" \
|
||||
./configure --prefix=$(PREFIX) --with-sdl-prefix=$(PREFIX) --with-freetype-prefix=$(PREFIX) --host=$(HOST)
|
||||
./configure --prefix=$(PREFIX) --with-sdl-prefix=$(PREFIX) --with-freetype-prefix=$(PREFIX) \
|
||||
--host=$(HOST)
|
||||
ifdef ATARI
|
||||
sed -i.bak 's/-O2/-O0/' $(SDLTTF)/Makefile
|
||||
endif
|
||||
cd $(SDLTTF) && $(MAKE)
|
||||
cd $(SDLTTF) && $(MAKE) install
|
||||
ifdef WIN32
|
||||
@ -479,7 +510,7 @@ else
|
||||
# configure [--const] [--zprefix] [--prefix=PREFIX] [--eprefix=EXPREFIX]
|
||||
# [--static] [--64] [--libdir=LIBDIR] [--sharedlibdir=LIBDIR]
|
||||
# [--includedir=INCLUDEDIR] [--archs="-arch i386 -arch x86_64"]
|
||||
cd $(ZLIB) && ./configure --prefix=$(PREFIX) && $(MAKE) test
|
||||
cd $(ZLIB) && CC=$(CC) AR=$(AR) RANLIB=$(RANLIB) ./configure --prefix=$(PREFIX) && $(MAKE) test
|
||||
cd $(ZLIB) && $(MAKE) install
|
||||
endif
|
||||
$(CP) $(ZLIB)/README ../doc/README-zlib1.txt
|
||||
|
||||
562
3rdparty/SDL-1.2.15-atari-timer.patch
vendored
Normal file
562
3rdparty/SDL-1.2.15-atari-timer.patch
vendored
Normal file
@ -0,0 +1,562 @@
|
||||
# HG changeset patch
|
||||
# User Patrice Mandin <patmandin@gmail.com>
|
||||
# Date 1406540679 -7200
|
||||
# Node ID 4a9c67d11c9f688b9c47fb6ee46d3c903ec35f22
|
||||
# Parent 7f4407040fbd31079fbab9264076450bdd20b1ec
|
||||
atari: Do not use system interrupt for handling timer. Do it from userspace, like RISCOS backend.
|
||||
|
||||
diff -r 7f4407040fbd -r 4a9c67d11c9f configure.in
|
||||
--- a/configure.in Sun Jul 27 19:19:47 2014 +0200
|
||||
+++ b/configure.in Mon Jul 28 11:44:39 2014 +0200
|
||||
@@ -2865,7 +2865,6 @@
|
||||
else
|
||||
AC_DEFINE(SDL_TIMER_MINT)
|
||||
SOURCES="$SOURCES $srcdir/src/timer/mint/*.c"
|
||||
- SOURCES="$SOURCES $srcdir/src/timer/mint/*.S"
|
||||
fi
|
||||
have_timers=yes
|
||||
fi
|
||||
diff -r 7f4407040fbd -r 4a9c67d11c9f src/timer/mint/SDL_systimer.c
|
||||
--- a/src/timer/mint/SDL_systimer.c Sun Jul 27 19:19:47 2014 +0200
|
||||
+++ b/src/timer/mint/SDL_systimer.c Mon Jul 28 11:44:39 2014 +0200
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
/*
|
||||
* TOS/MiNT timer driver
|
||||
- * based on vbl vector
|
||||
+ * based on RISCOS backend
|
||||
*
|
||||
* Patrice Mandin
|
||||
*/
|
||||
@@ -44,106 +44,119 @@
|
||||
|
||||
#include "SDL_timer.h"
|
||||
#include "../SDL_timer_c.h"
|
||||
-#include "SDL_thread.h"
|
||||
|
||||
#include "../../video/ataricommon/SDL_atarisuper.h"
|
||||
|
||||
-#include "SDL_vbltimer_s.h"
|
||||
+/* from src/video/ataricommon/SDL_atarievents.c */
|
||||
+void SDL_AtariMint_BackgroundTasks(void);
|
||||
|
||||
-/* from audio/mint */
|
||||
-void SDL_MintAudio_CheckFpu(void);
|
||||
+static Uint32 readHz200Timer(void);
|
||||
|
||||
/* The first ticks value of the application */
|
||||
static Uint32 start;
|
||||
-static SDL_bool read_hz200_from_vbl = SDL_FALSE;
|
||||
+
|
||||
static int mint_present; /* can we use Syield() ? */
|
||||
|
||||
+/* Timer SDL_arraysize(Timer ),start/reset time */
|
||||
+static Uint32 timerStart;
|
||||
+
|
||||
void SDL_StartTicks(void)
|
||||
{
|
||||
- void *old_stack;
|
||||
long dummy;
|
||||
|
||||
- /* Set first ticks value */
|
||||
- old_stack = (void *)Super(0);
|
||||
- start = *((volatile long *)_hz_200);
|
||||
- SuperToUser(old_stack);
|
||||
-
|
||||
- start *= 5; /* One _hz_200 tic is 5ms */
|
||||
+ /* Set first ticks value, one _hz_200 tic is 5ms */
|
||||
+ start = readHz200Timer() * 5;
|
||||
|
||||
mint_present = (Getcookie(C_MiNT, &dummy) == C_FOUND);
|
||||
}
|
||||
|
||||
Uint32 SDL_GetTicks (void)
|
||||
{
|
||||
- Uint32 now = start;
|
||||
+ Uint32 now = readHz200Timer() * 5;
|
||||
|
||||
- if (read_hz200_from_vbl) {
|
||||
- now = SDL_Atari_hz200;
|
||||
- } else {
|
||||
- void *old_stack = (void *)Super(0);
|
||||
- now = *((volatile long *)_hz_200);
|
||||
- SuperToUser(old_stack);
|
||||
- }
|
||||
-
|
||||
- return((now*5)-start);
|
||||
+ return(now-start);
|
||||
}
|
||||
|
||||
void SDL_Delay (Uint32 ms)
|
||||
{
|
||||
Uint32 now;
|
||||
|
||||
+ /* No need to loop for delay below resolution */
|
||||
+ if (ms<5) {
|
||||
+ SDL_AtariMint_BackgroundTasks();
|
||||
+ if (mint_present) {
|
||||
+ Syield();
|
||||
+ }
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
now = SDL_GetTicks();
|
||||
while ((SDL_GetTicks()-now)<ms){
|
||||
+ SDL_AtariMint_BackgroundTasks();
|
||||
if (mint_present) {
|
||||
Syield();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
-/* Data to handle a single periodic alarm */
|
||||
-static SDL_bool timer_installed=SDL_FALSE;
|
||||
+static Uint32 readHz200Timer(void)
|
||||
+{
|
||||
+ void *old_stack;
|
||||
+ Uint32 now;
|
||||
|
||||
-/* This is only called if the event thread is not running */
|
||||
+ old_stack = (void *)Super(0);
|
||||
+ now = *((volatile long *)_hz_200);
|
||||
+ SuperToUser(old_stack);
|
||||
+
|
||||
+ return now;
|
||||
+}
|
||||
+
|
||||
+/* Non-threaded version of timer */
|
||||
+
|
||||
int SDL_SYS_TimerInit(void)
|
||||
{
|
||||
- void *old_stack;
|
||||
-
|
||||
- SDL_MintAudio_CheckFpu();
|
||||
-
|
||||
- /* Install RunTimer in vbl vector */
|
||||
- old_stack = (void *)Super(0);
|
||||
- timer_installed = !SDL_AtariVblInstall(SDL_ThreadedTimerCheck);
|
||||
- SuperToUser(old_stack);
|
||||
-
|
||||
- if (!timer_installed) {
|
||||
- return(-1);
|
||||
- }
|
||||
-
|
||||
- read_hz200_from_vbl = SDL_TRUE;
|
||||
- return(SDL_SetTimerThreaded(0));
|
||||
+ return(0);
|
||||
}
|
||||
|
||||
void SDL_SYS_TimerQuit(void)
|
||||
{
|
||||
- /* Uninstall RunTimer vbl vector */
|
||||
- if (timer_installed) {
|
||||
- void *old_stack = (void *)Super(0);
|
||||
- SDL_AtariVblUninstall(SDL_ThreadedTimerCheck);
|
||||
- SuperToUser(old_stack);
|
||||
- timer_installed = SDL_FALSE;
|
||||
- }
|
||||
- read_hz200_from_vbl = SDL_FALSE;
|
||||
+ SDL_SetTimer(0, NULL);
|
||||
}
|
||||
|
||||
int SDL_SYS_StartTimer(void)
|
||||
{
|
||||
- SDL_SetError("Internal logic error: MiNT uses vbl timer");
|
||||
- return(-1);
|
||||
+ timerStart = SDL_GetTicks();
|
||||
+
|
||||
+ return(0);
|
||||
}
|
||||
|
||||
void SDL_SYS_StopTimer(void)
|
||||
{
|
||||
- return;
|
||||
+ /* Don't need to do anything as we use SDL_timer_running
|
||||
+ to detect if we need to check the timer */
|
||||
+}
|
||||
+
|
||||
+
|
||||
+void SDL_AtariMint_CheckTimer(void)
|
||||
+{
|
||||
+ if (SDL_timer_running && SDL_GetTicks() - timerStart >= SDL_alarm_interval)
|
||||
+ {
|
||||
+ Uint32 ms;
|
||||
+
|
||||
+ ms = SDL_alarm_callback(SDL_alarm_interval);
|
||||
+ if ( ms != SDL_alarm_interval )
|
||||
+ {
|
||||
+ if ( ms )
|
||||
+ {
|
||||
+ SDL_alarm_interval = ROUND_RESOLUTION(ms);
|
||||
+ } else
|
||||
+ {
|
||||
+ SDL_alarm_interval = 0;
|
||||
+ SDL_timer_running = 0;
|
||||
+ }
|
||||
+ }
|
||||
+ if (SDL_alarm_interval) timerStart = SDL_GetTicks();
|
||||
+ }
|
||||
}
|
||||
|
||||
#endif /* SDL_TIMER_MINT */
|
||||
diff -r 7f4407040fbd -r 4a9c67d11c9f src/timer/mint/SDL_vbltimer.S
|
||||
--- a/src/timer/mint/SDL_vbltimer.S Sun Jul 27 19:19:47 2014 +0200
|
||||
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
|
||||
@@ -1,228 +0,0 @@
|
||||
-/*
|
||||
- SDL - Simple DirectMedia Layer
|
||||
- Copyright (C) 1997-2012 Sam Lantinga
|
||||
-
|
||||
- This library is free software; you can redistribute it and/or
|
||||
- modify it under the terms of the GNU Lesser General Public
|
||||
- License as published by the Free Software Foundation; either
|
||||
- version 2.1 of the License, or (at your option) any later version.
|
||||
-
|
||||
- This library is distributed in the hope that it will be useful,
|
||||
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
- Lesser General Public License for more details.
|
||||
-
|
||||
- You should have received a copy of the GNU Lesser General Public
|
||||
- License along with this library; if not, write to the Free Software
|
||||
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
-
|
||||
- Sam Lantinga
|
||||
- slouken@libsdl.org
|
||||
-*/
|
||||
-
|
||||
-/*
|
||||
- * VBL queue routine
|
||||
- *
|
||||
- * Patrice Mandin
|
||||
- */
|
||||
-
|
||||
-#define _vbl_queue 0x456
|
||||
-#define _hz_200 0x4ba
|
||||
-
|
||||
- .text
|
||||
-
|
||||
- .globl _SDL_AtariVblInstall
|
||||
- .globl _SDL_AtariVblUninstall
|
||||
-
|
||||
- .globl _SDL_MintAudio_hasfpu
|
||||
-
|
||||
-/*--- Save/restore FPU context ---*/
|
||||
-
|
||||
-#if defined(__mcoldfire__)
|
||||
-
|
||||
-#define SAVE_FPU_CONTEXT \
|
||||
- lea sp@(-216),sp; \
|
||||
- fsave sp@; \
|
||||
- fmovel fpiar,sp@-; \
|
||||
- lea sp@(-64),sp; \
|
||||
- fmovemd fp0-fp7,sp@
|
||||
-
|
||||
-#define RESTORE_FPU_CONTEXT \
|
||||
- fmovemd sp@,fp0-fp7; \
|
||||
- lea sp@(64),sp; \
|
||||
- fmovel sp@+,fpiar; \
|
||||
- frestore sp@; \
|
||||
- lea sp@(216),sp
|
||||
-
|
||||
-#else
|
||||
-
|
||||
-#define SAVE_FPU_CONTEXT \
|
||||
- .chip 68k/68881; \
|
||||
- fsave sp@-; \
|
||||
- fmoveml fpcr/fpsr/fpiar,sp@-; \
|
||||
- fmovemx fp0-fp7,sp@-; \
|
||||
- .chip 68k
|
||||
-
|
||||
-#define RESTORE_FPU_CONTEXT \
|
||||
- .chip 68k/68881; \
|
||||
- fmovemx sp@+,fp0-fp7; \
|
||||
- fmoveml sp@+,fpcr/fpsr/fpiar; \
|
||||
- frestore sp@+; \
|
||||
- .chip 68k
|
||||
-
|
||||
-#endif
|
||||
-
|
||||
-/*--- Vector installer ---*/
|
||||
-
|
||||
-_SDL_AtariVblInstall:
|
||||
-#if defined(__mcoldfire__)
|
||||
- movel sp@(4),d0
|
||||
- movel d0,my_vector
|
||||
-#else
|
||||
- movel sp@(4),my_vector
|
||||
-#endif
|
||||
-
|
||||
- lea _my_vbl,a0
|
||||
-
|
||||
- clrw vbl_mutex
|
||||
-#if defined(__mcoldfire__)
|
||||
- movel _hz_200.w,d0
|
||||
- movel d0, _SDL_Atari_hz200
|
||||
-#else
|
||||
- movel _hz_200.w, _SDL_Atari_hz200
|
||||
-#endif
|
||||
-
|
||||
- /* Stop interrupts */
|
||||
-
|
||||
- movew #0x2700,sr
|
||||
-
|
||||
- /* Read vbl_queue pointer */
|
||||
- movel _vbl_queue.w,a1
|
||||
-
|
||||
- /* Search a free place */
|
||||
- moveq #7,d0
|
||||
-bcl_search_place:
|
||||
- movel (a1),d1
|
||||
- beqs place_found
|
||||
- addql #4,a1
|
||||
-#if defined(__mcoldfire__)
|
||||
- subql #1,d0
|
||||
- bpls bcl_search_place
|
||||
-#else
|
||||
- dbra d0,bcl_search_place
|
||||
-#endif
|
||||
-
|
||||
- /* Not found */
|
||||
- moveq #1,d0
|
||||
- bras exit_vbl_queue
|
||||
-
|
||||
- /* Then install ourselves */
|
||||
-place_found:
|
||||
- movel a0,(a1)
|
||||
- moveq #0,d0
|
||||
-
|
||||
-exit_vbl_queue:
|
||||
- /* Restart interrupts */
|
||||
- movew #0x2300,sr
|
||||
-
|
||||
- rts
|
||||
-
|
||||
-/*--- Vector uninstaller ---*/
|
||||
-
|
||||
-_SDL_AtariVblUninstall:
|
||||
- movel sp@(4),d0
|
||||
- cmpl my_vector,d0
|
||||
- bnes badvector
|
||||
-
|
||||
- movel #_my_vbl,d0
|
||||
-
|
||||
- /* Stop interrupts */
|
||||
-
|
||||
- movew #0x2700,sr
|
||||
-
|
||||
- /* Read vbl_queue pointer */
|
||||
- movel _vbl_queue.w,a1
|
||||
-
|
||||
- /* Search where we are */
|
||||
- moveq #7,d1
|
||||
-bcl2_search_place:
|
||||
- cmpl (a1),d0
|
||||
- bnes next_place
|
||||
- clrl (a1)
|
||||
- moveq #0,d1
|
||||
-next_place:
|
||||
- addql #4,a1
|
||||
-#if defined(__mcoldfire__)
|
||||
- subql #1,d1
|
||||
- bpls bcl_search_place
|
||||
-#else
|
||||
- dbra d1,bcl2_search_place
|
||||
-#endif
|
||||
-
|
||||
- /* Restart interrupts */
|
||||
- movew #0x2300,sr
|
||||
-badvector:
|
||||
- rts
|
||||
-
|
||||
-/*--- Our vbl ---*/
|
||||
-
|
||||
-_my_vbl:
|
||||
-#if defined(__mcoldfire__)
|
||||
- lea sp@(-60),sp
|
||||
- moveml d0-d7/a0-a6,sp@
|
||||
-#else
|
||||
- moveml d0-d7/a0-a6,sp@-
|
||||
-#endif
|
||||
-
|
||||
- /* Update _hz_200 */
|
||||
-#if defined(__mcoldfire__)
|
||||
- movel _hz_200.w,d0
|
||||
- movel d0, _SDL_Atari_hz200
|
||||
-#else
|
||||
- movel _hz_200.w, _SDL_Atari_hz200
|
||||
-#endif
|
||||
-
|
||||
- /* Verify if this is not already running */
|
||||
-
|
||||
- tstw vbl_mutex
|
||||
- bnes vbl_end
|
||||
-#if defined(__mcoldfire__)
|
||||
- movew vbl_mutex,d0
|
||||
- notl d0
|
||||
- movew d0,vbl_mutex
|
||||
-#else
|
||||
- notw vbl_mutex
|
||||
-#endif
|
||||
-
|
||||
- /* Save FPU if needed */
|
||||
- tstw _SDL_MintAudio_hasfpu
|
||||
- beqs SDL_AtariVbl_nofpu1
|
||||
- SAVE_FPU_CONTEXT
|
||||
-SDL_AtariVbl_nofpu1:
|
||||
-
|
||||
- movel my_vector,a0
|
||||
- jsr a0@
|
||||
-
|
||||
- /* Restore FPU if needed */
|
||||
- tstw _SDL_MintAudio_hasfpu
|
||||
- beqs SDL_AtariVbl_Xbios_nofpu2
|
||||
- RESTORE_FPU_CONTEXT
|
||||
-SDL_AtariVbl_Xbios_nofpu2:
|
||||
-
|
||||
- clrw vbl_mutex
|
||||
-vbl_end:
|
||||
-#if defined(__mcoldfire__)
|
||||
- moveml sp@,d0-d7/a0-a6
|
||||
- lea sp@(60),sp
|
||||
-#else
|
||||
- moveml sp@+,d0-d7/a0-a6
|
||||
-#endif
|
||||
- rts
|
||||
-
|
||||
- .data
|
||||
- .even
|
||||
- .comm _SDL_Atari_hz200,4*1
|
||||
- .even
|
||||
- .comm vbl_mutex,2*1
|
||||
- .even
|
||||
- .comm my_vector,4*1
|
||||
diff -r 7f4407040fbd -r 4a9c67d11c9f src/timer/mint/SDL_vbltimer_s.h
|
||||
--- a/src/timer/mint/SDL_vbltimer_s.h Sun Jul 27 19:19:47 2014 +0200
|
||||
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
|
||||
@@ -1,35 +0,0 @@
|
||||
-/*
|
||||
- SDL - Simple DirectMedia Layer
|
||||
- Copyright (C) 1997-2012 Sam Lantinga
|
||||
-
|
||||
- This library is free software; you can redistribute it and/or
|
||||
- modify it under the terms of the GNU Lesser General Public
|
||||
- License as published by the Free Software Foundation; either
|
||||
- version 2.1 of the License, or (at your option) any later version.
|
||||
-
|
||||
- This library is distributed in the hope that it will be useful,
|
||||
- but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
- Lesser General Public License for more details.
|
||||
-
|
||||
- You should have received a copy of the GNU Lesser General Public
|
||||
- License along with this library; if not, write to the Free Software
|
||||
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
-
|
||||
- Sam Lantinga
|
||||
- slouken@libsdl.org
|
||||
-*/
|
||||
-#include "SDL_config.h"
|
||||
-
|
||||
-/*
|
||||
- * TOS/MiNT timer driver
|
||||
- * based on vbl vector
|
||||
- *
|
||||
- * Patrice Mandin
|
||||
- */
|
||||
-
|
||||
-extern volatile long SDL_Atari_hz200;
|
||||
-
|
||||
-/* Functions prototypes */
|
||||
-extern int SDL_AtariVblInstall(void *newvector);
|
||||
-extern void SDL_AtariVblUninstall(void *newvector);
|
||||
diff -r 7f4407040fbd -r 4a9c67d11c9f src/video/ataricommon/SDL_atarievents.c
|
||||
--- a/src/video/ataricommon/SDL_atarievents.c Sun Jul 27 19:19:47 2014 +0200
|
||||
+++ b/src/video/ataricommon/SDL_atarievents.c Mon Jul 28 11:44:39 2014 +0200
|
||||
@@ -34,6 +34,7 @@
|
||||
|
||||
#include "../../events/SDL_sysevents.h"
|
||||
#include "../../events/SDL_events_c.h"
|
||||
+#include "../../timer/SDL_timer_c.h"
|
||||
|
||||
#include "SDL_atarikeys.h"
|
||||
#include "SDL_atarievents_c.h"
|
||||
@@ -41,6 +42,9 @@
|
||||
#include "SDL_gemdosevents_c.h"
|
||||
#include "SDL_ikbdevents_c.h"
|
||||
|
||||
+/* from src/timer/mint/SDL_systimer.c */
|
||||
+void SDL_AtariMint_CheckTimer(void);
|
||||
+
|
||||
enum {
|
||||
MCH_ST=0,
|
||||
MCH_STE,
|
||||
@@ -232,3 +236,8 @@
|
||||
|
||||
return(keysym);
|
||||
}
|
||||
+
|
||||
+void SDL_AtariMint_BackgroundTasks(void)
|
||||
+{
|
||||
+ if (SDL_timer_running) SDL_AtariMint_CheckTimer();
|
||||
+}
|
||||
diff -r 7f4407040fbd -r 4a9c67d11c9f src/video/ataricommon/SDL_atarievents_c.h
|
||||
--- a/src/video/ataricommon/SDL_atarievents_c.h Sun Jul 27 19:19:47 2014 +0200
|
||||
+++ b/src/video/ataricommon/SDL_atarievents_c.h Mon Jul 28 11:44:39 2014 +0200
|
||||
@@ -44,6 +44,8 @@
|
||||
|
||||
extern void SDL_Atari_InitInternalKeymap(_THIS);
|
||||
|
||||
+extern void SDL_AtariMint_BackgroundTasks(void);
|
||||
+
|
||||
/* Atari to Unicode charset translation table */
|
||||
extern Uint16 SDL_AtariToUnicodeTable[256];
|
||||
SDL_keysym *SDL_Atari_TranslateKey(int scancode, SDL_keysym *keysym,
|
||||
diff -r 7f4407040fbd -r 4a9c67d11c9f src/video/ataricommon/SDL_biosevents.c
|
||||
--- a/src/video/ataricommon/SDL_biosevents.c Sun Jul 27 19:19:47 2014 +0200
|
||||
+++ b/src/video/ataricommon/SDL_biosevents.c Mon Jul 28 11:44:39 2014 +0200
|
||||
@@ -71,6 +71,8 @@
|
||||
int i;
|
||||
SDL_keysym keysym;
|
||||
|
||||
+ SDL_AtariMint_BackgroundTasks();
|
||||
+
|
||||
/* Update pressed keys */
|
||||
SDL_memset(bios_currentkeyboard, 0, ATARIBIOS_MAXKEYS);
|
||||
|
||||
diff -r 7f4407040fbd -r 4a9c67d11c9f src/video/ataricommon/SDL_gemdosevents.c
|
||||
--- a/src/video/ataricommon/SDL_gemdosevents.c Sun Jul 27 19:19:47 2014 +0200
|
||||
+++ b/src/video/ataricommon/SDL_gemdosevents.c Mon Jul 28 11:44:39 2014 +0200
|
||||
@@ -72,6 +72,8 @@
|
||||
int i;
|
||||
SDL_keysym keysym;
|
||||
|
||||
+ SDL_AtariMint_BackgroundTasks();
|
||||
+
|
||||
/* Update pressed keys */
|
||||
SDL_memset(gemdos_currentkeyboard, 0, ATARIBIOS_MAXKEYS);
|
||||
|
||||
diff -r 7f4407040fbd -r 4a9c67d11c9f src/video/ataricommon/SDL_ikbdevents.c
|
||||
--- a/src/video/ataricommon/SDL_ikbdevents.c Sun Jul 27 19:19:47 2014 +0200
|
||||
+++ b/src/video/ataricommon/SDL_ikbdevents.c Mon Jul 28 11:44:39 2014 +0200
|
||||
@@ -73,6 +73,8 @@
|
||||
int i;
|
||||
SDL_keysym keysym;
|
||||
|
||||
+ SDL_AtariMint_BackgroundTasks();
|
||||
+
|
||||
/*--- Send keyboard events ---*/
|
||||
|
||||
for (i=0; i<ATARIBIOS_MAXKEYS; i++) {
|
||||
diff -r 7f4407040fbd -r 4a9c67d11c9f src/video/gem/SDL_gemevents.c
|
||||
--- a/src/video/gem/SDL_gemevents.c Sun Jul 27 19:19:47 2014 +0200
|
||||
+++ b/src/video/gem/SDL_gemevents.c Mon Jul 28 11:44:39 2014 +0200
|
||||
@@ -86,6 +86,8 @@
|
||||
|
||||
quit = 0;
|
||||
|
||||
+ SDL_AtariMint_BackgroundTasks();
|
||||
+
|
||||
resultat = evnt_multi(
|
||||
MU_MESAG|MU_TIMER|MU_KEYBD,
|
||||
0,0,0,
|
||||
11
3rdparty/lua-atari-log2.patch
vendored
Normal file
11
3rdparty/lua-atari-log2.patch
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
--- lua-5.3.5/src/lmathlib.c.orig 2019-02-09 01:48:42.693042000 +0100
|
||||
+++ lua-5.3.5/src/lmathlib.c 2019-02-09 01:49:09.775053000 +0100
|
||||
@@ -183,7 +183,7 @@ static int math_log (lua_State *L) {
|
||||
res = l_mathop(log)(x);
|
||||
else {
|
||||
lua_Number base = luaL_checknumber(L, 2);
|
||||
-#if !defined(LUA_USE_C89)
|
||||
+#if !defined(LUA_USE_C89) && !defined(__atarist__) && !defined(__MINT__)
|
||||
if (base == l_mathop(2.0))
|
||||
res = l_mathop(log2)(x); else
|
||||
#endif
|
||||
Loading…
x
Reference in New Issue
Block a user