Author Topic: Games with older SDL and FSLIB  (Read 211687 times)

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5865
  • Karma: +155/-1
Re: Games with older SDL and FSLIB
« Reply #195 on: April 28, 2026, 04:45:36 pm »
I get this with that line,
Code: [Select]
usr/include/SDL -c sysvid.c -o sysvid.o
sysvid.c: In function 'sysvid_chkvm':
sysvid.c:152:10: error: '*modes' is a pointer; did you mean to use '->'?
  152 | if (modes->w <= SCALER_MAXWIDTH && modes->h <= SCALER_MAXHEIGHT) {
      |          ^~
      |          ->
sysvid.c:152:41: error: '*modes' is a pointer; did you mean to use '->'?
  152 | if (modes->w <= SCALER_MAXWIDTH && modes->h <= SCALER_MAXHEIGHT) {
      |                                         ^~
      |                                         ->

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 5732
  • Karma: +50/-1
  • Your Friend Wil Declares...
    • Martin's Personal Blog
Re: Games with older SDL and FSLIB
« Reply #196 on: April 28, 2026, 04:55:39 pm »
Hello Dave

Checking the list I don't know why I skipped "Kuklomenos".
It has the problem that is compiled with an old libvorbis.
-- https://github.com/OSSGames/GAME-SDL-ACTION-Kuklomenos
-- https://mbays.freeshell.org/kuklomenos/

Can you please check it out if it compiles with the latest libvorbis?

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5865
  • Karma: +155/-1
Re: Games with older SDL and FSLIB
« Reply #197 on: April 29, 2026, 05:38:57 am »
Hi Martin, the problem is that Kuklomemos uses tremor, a integer playback codec which we don't have an RPM off. From running configure, I see,
Code: [Select]
checking for tremor/ivorbisfile.h... no
checking for ov_open_callbacks in -lvorbisidec... no
and from configure --help
Code: [Select]
  --enable-sound          enable sound [[default=yes]]
  --enable-sound-ogg-tremor   enable OGG sound via libtremor [default=no]
  --enable-sound-ogg-shared
                          dynamically load Ogg Vorbis support [[default=yes]]
See, for example, https://github.com/sezero/tremor
I did try compiling wondering if using SDL_mixer would work. I get a similar crash as the last project.
Code: [Select]
H:\tmp\GAME-SDL-ACTION-Kuklomenos>kuklomenos.exe

LIBC: Killed by SIGSEGV
PID=0x1416 PPID=0x006B TID=0x0001 SLOT=0x00D5 PRI=0x0200 MC=0x0001 PS=0x0010
H:\TMP\GAME-SDL-ACTION-KUKLOMENOS\KUKLOMENOS.EXE
KUKLOMEN 0:00016A45
CS:EIP=005B:00026A45 SS:ESP=0053:0015FED0 EBP=0015FF38
 DS=0053      ES=0053      FS=150B      GS=0000     EFL=00010206
EAX=200304E4 EBX=0015FF60 ECX=00000780 EDX=0000000C EDI=00000000 ESI=00000000
Creating 1416_01.TRP
Moved 1416_01.TRP to W:\var\log\app\69F11A7A004AD403-1416_01-KUKLOMENOS-exceptq.txt
Perhaps Tellie has am idea.

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 5732
  • Karma: +50/-1
  • Your Friend Wil Declares...
    • Martin's Personal Blog
Re: Games with older SDL and FSLIB
« Reply #198 on: April 29, 2026, 03:31:44 pm »
Thanks for giving it a try.

Sadly Gianfilippo Cimmino didn't include the source code to see how did he pull it off. And on my side the old Kuklomemos does not run to see if it really have sound support.

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 5732
  • Karma: +50/-1
  • Your Friend Wil Declares...
    • Martin's Personal Blog
Re: Games with older SDL and FSLIB
« Reply #199 on: May 01, 2026, 03:50:27 am »
Thanks you very much Dave.

This thread started on 2025-06-23

You made it possible to bring back all these games to OS/2-ArcaOS, since it is now like all use SNAP today.
Code: [Select]
* Issues -G:\WARP\A\Abe's Amazing Adventure - Issue Mix_OpenAudio
* Done - G:\WARP\A\Alizarin Tetris
* Issues - G:\WARP\A\Amoebax -  Requires source patching
* Done - G:\WARP\C\Cuyo\bin
* Done - G:\WARP\E\Enigma - Issues with Imagemagick. (Paul's Port was already good)
* Done - G:\WARP\F\Formido
* Done - G:\WARP\H\UHexen (replaced with UHexen/2)
* Issue - G:\WARP\K\KoboDeluxe - Issue with cmake finding SDL_image
* Issue -. G:\WARP\K\Kuklomenos - Requires tremor playback codec
* Done -G:\WARP\L\Lopan
* Done -G:\WARP\L\Luola
* Done - G:\WARP\M\Marryampic2
* Issue - G:\WARP\P\Pingus - Dependency on OpenGL, older on Boost.
* Done - G:\WARP\R\Rock Dodger
* Done - G:\WARP\S\sdlinvaders
* Done - G:\WARP\S\sdlroids
* Done - G:\WARP\S\sdlzombies
* Issues - G:\WARP\S\snakeme - Issues with cmake
* Done - G:\WARP\S\still yet another sokoban
* Done - G:\WARP\T\Tiles World
* Done - G:\WARP\X\XRick

Thanks Dave, and all the people that collaborated.

If it is ok with you Dave, I will keep using this thread to try ask you for help with some other little SDL games.

Regards
« Last Edit: May 05, 2026, 09:49:03 pm by Martin Iturbide »
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 5732
  • Karma: +50/-1
  • Your Friend Wil Declares...
    • Martin's Personal Blog
Re: Games with older SDL and FSLIB
« Reply #200 on: May 04, 2026, 04:29:34 am »
Hello Dave

Can you please check if the latest Jump 'n Bump (1.70) compile for us?
- https://gitlab.com/LibreGames/jumpnbump
It uses SDL2

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5865
  • Karma: +155/-1
Re: Games with older SDL and FSLIB
« Reply #201 on: May 04, 2026, 05:42:34 am »
Hello Dave

Can you please check if the latest Jump 'n Bump (1.70) compile for us?
- https://gitlab.com/LibreGames/jumpnbump
It uses SDL2

Regards

Hmm, sdl2_mixer doesn't seem to have mod support, so no music.
Code: [Select]
H:\tmp\jumpnbump>jumpnbump.exe
Opened audio at 44100Hz 16bit stereo, 2048 bytes audio buffer
Couldn't load music: Unrecognized audio format
Couldn't load music: Unrecognized audio format
Couldn't load music: Unrecognized audio format
Edit: Posted too soon. Currently runs from the source directory, could be installed somewhere


TeLLie

  • Sr. Member
  • ****
  • Posts: 301
  • Karma: +21/-0
Re: Games with older SDL and FSLIB
« Reply #202 on: May 04, 2026, 08:18:11 pm »
Hi Dave

Did you modify the makefile or run it without changes.
As it stops here with
exec ../gobpack font
../gobpack 1 ../gobpack syntax error word unexpected

Greetz Tellie

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5865
  • Karma: +155/-1
Re: Games with older SDL and FSLIB
« Reply #203 on: May 04, 2026, 08:55:34 pm »
Needed -Zexe to get by that. My simple changes,
Code: [Select]
diff --git a/Makefile b/Makefile
index 05923d8..5958e8d 100644
--- a/Makefile
+++ b/Makefile
@@ -6,21 +6,21 @@ BINDIR ?= $(PREFIX)/bin
 DATADIR ?= $(PREFIX)/share
 # Can be overridden to use e.g. /usr/share/games
 GAMEDATADIR ?= $(DATADIR)
-EXE ?=
+EXE ?=.exe
 
-CFLAGS ?= -Wall -O2 -ffast-math -funroll-loops -fno-common
+CFLAGS ?= -Wall -O2 -ffast-math -funroll-loops -fno-common -Zexe
 SDL_CFLAGS = `sdl2-config --cflags`
 DEFINES = -Dstricmp=strcasecmp -Dstrnicmp=strncasecmp -DNDEBUG -DUSE_SDL -DUSE_NET -DZLIB_SUPPORT -DBZLIB_SUPPORT
 ifeq ($(SYSINSTALL), 1)
 DEFINES += -DGAMEDATADIR="\"$(GAMEDATADIR)\""
 endif
-INCLUDES = -I.
+INCLUDES = -I. -Zexe
 CFLAGS += $(DEFINES) $(SDL_CFLAGS) $(INCLUDES)
 export SDL_CFLAGS
 export DEFINES
 export INCLUDES
 
-LDFLAGS ?=
+LDFLAGS ?= -Zomf -Zhigh-mem
 SDL_LIBS = `sdl2-config --libs`
 LIBS = $(SDL_LIBS) -lSDL2_mixer -lSDL2_net -lbz2 -lz -lm
 

Adding -Zexe to INCLUDES was likely the fix and a quick hack. Yes, works  without the -Zexe in CFLAGS.
Just a reminder, -Zexe changes linking the executable foo to creating foo.exe and foo with foo being a forwarder to foo.exe. Occasionally needed when linking with LD
« Last Edit: May 04, 2026, 09:03:13 pm by Dave Yeo »

TeLLie

  • Sr. Member
  • ****
  • Posts: 301
  • Karma: +21/-0
Re: Games with older SDL and FSLIB
« Reply #204 on: May 04, 2026, 10:06:15 pm »
Hi Dave,

Thankz i had done allmost same in make file, except dint add -Zexe to the -I
If i run it i get
E:\jumpnbump\bin>jumpnbump.exe
Opened audio at 44100Hz 16bit stereo, 2048 bytes audio buffer
Couldn't load music: Failed loading modplug_dll.a: dlopen rc=2 extra=MODPLUG_DLL.A

I compiled also libmodplug
As i compiled the SDl_mixer with mod
i only wonder what music its loading
I hear some jumping sound if i push the key

I add my build, please try it if all is ok the sound is there :)

Greetz tellie
« Last Edit: May 04, 2026, 11:46:44 pm by TeLLie »

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5865
  • Karma: +155/-1
Re: Games with older SDL and FSLIB
« Reply #205 on: May 04, 2026, 10:31:47 pm »
Recompile SDL2_mixer without dynamically loading modplug (just regular linking) and hopefully the mod's in data will play.
Dynamically loading often fails due to the DLL having an 8.3 name and the program tries to dynamically load the long DLL name.
The mod's do play with mikmod.

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 5732
  • Karma: +50/-1
  • Your Friend Wil Declares...
    • Martin's Personal Blog
Re: Games with older SDL and FSLIB
« Reply #206 on: May 05, 2026, 04:15:27 am »
Thanks Dave, Tellie

I'm using the Tellie file version.

Is the path hardcoded? The image attached had the error message I get with the path.

If I put the folder directly on C:\ it works, and I have music and sounds.

FYI: I cloned the repo here: https://github.com/OS2World/GAME-SDL-ACTION-JumpnBump/tree/main

Regards
« Last Edit: May 05, 2026, 04:36:52 am by Martin Iturbide »
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5865
  • Karma: +155/-1
Re: Games with older SDL and FSLIB
« Reply #207 on: May 06, 2026, 01:38:29 am »
Tellie's version doesn't work here.
Code: [Select]
H:\tmp\jumpnbump\bin>jumpnbump.exe
can't open /jumpnbump/share/jumpnbump/jumpbump.dat:No such file or directory
I don't have a C: drive currently.
Perhaps Tellie can rebuild with the prefix not having a drive letter.

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 5732
  • Karma: +50/-1
  • Your Friend Wil Declares...
    • Martin's Personal Blog
Re: Games with older SDL and FSLIB
« Reply #208 on: May 06, 2026, 03:00:18 am »
Hello
Tellie's version doesn't work here.
Code: [Select]
H:\tmp\jumpnbump\bin>jumpnbump.exe
can't open /jumpnbump/share/jumpnbump/jumpbump.dat:No such file or directory
I don't have a C: drive currently.
Perhaps Tellie can rebuild with the prefix not having a drive letter.
Put it directly on H:\, not on \tmp, and see if ti works.

I hope Tellie can fix this harcoded path to don't be absolute.

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Dave Yeo

  • Hero Member
  • *****
  • Posts: 5865
  • Karma: +155/-1
Re: Games with older SDL and FSLIB
« Reply #209 on: May 06, 2026, 05:37:36 am »
Doesn't work on H: either. Unluckily I tried building SDL_mixer and having problems. My SSD died yesterday, replaced with a HD and am wondering if something failed restoring my backup.
Tellie can recompile after restoring the SYSINSTALL ?= line to 0 and putting the resulting binary in the top of jumpnbump instead of bin, it should be portable. You can test by putting the binary I built in jumpnbump like so,
Code: [Select]
Directory of H:\tmp\jumpnbump

 5-05-26  4:35p         <DIR>    124 a---  .
 5-05-26  8:36p         <DIR>    441 ----  ..
 5-05-26  4:34p         <DIR>    124 a---  bin
 5-04-26  2:46p         <DIR>    124 a---  data
 5-05-26  4:34p        97,927      0 a---  jumpnbump.exe
 5-04-26  2:46p         <DIR>    124 a---  share
        6 file(s)      97,927 bytes used
                   13,151,629 K bytes free