From 111b527f40e18c3ede381747951e989177267eb6 Mon Sep 17 00:00:00 2001 From: Scott Duensing Date: Wed, 26 Oct 2022 17:43:20 -0500 Subject: [PATCH] BeOS and Haiku targets are now producing binaries. Still need to test them. --- joeylib/src/jSDL12.c | 4 +- joeylib/src/joey.h | 90 ++++++++++++++++++++++++++++++++++++++++++++ scripts/buildVm.sh | 4 +- 3 files changed, 94 insertions(+), 4 deletions(-) diff --git a/joeylib/src/jSDL12.c b/joeylib/src/jSDL12.c index f786446..d48b4bf 100644 --- a/joeylib/src/jSDL12.c +++ b/joeylib/src/jSDL12.c @@ -258,8 +258,6 @@ static void _jlAudioCallback(void *userdata, Uint8 *buffer, int bytes) { void jlDisplayPresent(void) { - jlUtilIdle(); - jint16 sourceX; jint16 sourceY; jint16 targetX; @@ -268,6 +266,8 @@ void jlDisplayPresent(void) { juint16 pixelRight; juint16 p = 0; + jlUtilIdle(); + SDL_LockSurface(_jlWindow); // Border. diff --git a/joeylib/src/joey.h b/joeylib/src/joey.h index 90fca68..15be8e0 100644 --- a/joeylib/src/joey.h +++ b/joeylib/src/joey.h @@ -261,6 +261,96 @@ typedef unsigned int juint16; typedef long jint32; typedef unsigned long juint32; +#elif __BEOS__ + +#define JOEY_BEOS +#define JOEY_PC +#define JOEY_LITLE_ENDIAN +#define JOEY_PATH_SEPARATOR '/' +typedef short jint16; +typedef unsigned short juint16; +typedef int jint32; +typedef unsigned int juint32; + +#define JL_HAS_DISPLAYPRESENT +#define JL_HAS_DRAWBLIT8X8 +#define JL_HAS_DRAWBLIT8X8A +#define JL_HAS_DRAWCLEAR +#define JL_HAS_DRAWPIXELGET +#define JL_HAS_DRAWPIXELSET +#define JL_HAS_DRAWSURFACEGET +#define JL_HAS_DRAWSURFACESET +#define JL_HAS_GAMEGETAXIS +#define JL_HAS_GAMEGETBUTTON +#define JL_HAS_IMGCREATE +#define JL_HAS_IMGDISPLAY +#define JL_HAS_KEYPRESSED +#define JL_HAS_KEYREAD +#define JL_HAS_MODCONTINUE +#define JL_HAS_MODFREE +#define JL_HAS_MODISPLAYING +#define JL_HAS_MODLOAD +#define JL_HAS_MODPAUSE +#define JL_HAS_MODPLAY +#define JL_HAS_MODSTOP +#define JL_HAS_MODVOLUME +#define JL_HAS_PALETTESET +#define JL_HAS_PALETTESETFROMIMG +#define JL_HAS_SOUNDFREE +#define JL_HAS_SOUNDISPLAYING +#define JL_HAS_SOUNDLOAD +#define JL_HAS_SOUNDPLAY +#define JL_HAS_SOUNDSTOP +#define JL_HAS_UTILIDLE +#define JL_HAS_UTILMUSTEXIT +#define JL_HAS_UTILTIMER +#define JL_HAS_UTILHASTITLESET + +#elif __HAIKU__ + +#define JOEY_HAIKU +#define JOEY_PC +#define JOEY_LITLE_ENDIAN +#define JOEY_PATH_SEPARATOR '/' +typedef short jint16; +typedef unsigned short juint16; +typedef int jint32; +typedef unsigned int juint32; + +#define JL_HAS_DISPLAYPRESENT +#define JL_HAS_DRAWBLIT8X8 +#define JL_HAS_DRAWBLIT8X8A +#define JL_HAS_DRAWCLEAR +#define JL_HAS_DRAWPIXELGET +#define JL_HAS_DRAWPIXELSET +#define JL_HAS_DRAWSURFACEGET +#define JL_HAS_DRAWSURFACESET +#define JL_HAS_GAMEGETAXIS +#define JL_HAS_GAMEGETBUTTON +#define JL_HAS_IMGCREATE +#define JL_HAS_IMGDISPLAY +#define JL_HAS_KEYPRESSED +#define JL_HAS_KEYREAD +#define JL_HAS_MODCONTINUE +#define JL_HAS_MODFREE +#define JL_HAS_MODISPLAYING +#define JL_HAS_MODLOAD +#define JL_HAS_MODPAUSE +#define JL_HAS_MODPLAY +#define JL_HAS_MODSTOP +#define JL_HAS_MODVOLUME +#define JL_HAS_PALETTESET +#define JL_HAS_PALETTESETFROMIMG +#define JL_HAS_SOUNDFREE +#define JL_HAS_SOUNDISPLAYING +#define JL_HAS_SOUNDLOAD +#define JL_HAS_SOUNDPLAY +#define JL_HAS_SOUNDSTOP +#define JL_HAS_UTILIDLE +#define JL_HAS_UTILMUSTEXIT +#define JL_HAS_UTILTIMER +#define JL_HAS_UTILHASTITLESET + #else #define JOEY_ST diff --git a/scripts/buildVm.sh b/scripts/buildVm.sh index 2bb7c3a..269d110 100755 --- a/scripts/buildVm.sh +++ b/scripts/buildVm.sh @@ -545,7 +545,7 @@ function doBuild() { TARGET="${SOURCE}/temp" EXT= export CFLAGS="${CFLAGS} -Wall -D_REENTRANT" - export LDFLAGS="-lm -lGL -lroot -lbe -lmedia -lgame -ldevice -ltextencoding" + export LDFLAGS="-lsupc++ -lm -lGL -lroot -lbe -lmedia -lgame -ldevice -ltextencoding" ;; iigs) @@ -1183,5 +1183,5 @@ function updateSystem() { } -#scriptIsDownloaded "$1" "$2" "$3" +scriptIsDownloaded "$1" "$2" "$3"