I got Unreal Engine 1 running on my X5000 (fgsfdsfgs/UE1 sources, cross-compiled with GCC 13.4.0 via walkero's Docker toolchain). It renders, it's playable, and it exits cleanly. Took a lot of debugging to get here. The last problem is sound. When I enable audio (UseSound=True, NOpenALDrv), the window opens and then the whole system freezes — 100% CPU, no crash log, have to reboot. With sound off, everything works fine. I'm using OpenAL-Soft 1.23.1 with the SDL2 backend, linked against the SDK's SDL2. Just before the freeze I get: [ALSOFT] Failed to set 44100hz, got 48000hz instead [ALSOFT] No capture backend available! I already ruled out my own threading code (custom sem_t and gthread stubs for GCC 13) — a standalone sem_wait/sem_post stress test runs fine on the real machine. I think it's the SDL2 audio backend on AmigaOS4. Questions:
Has anyone had a similar freeze with OpenAL-Soft's SDL2 backend? Would building OpenAL-Soft against a native AHI backend instead of SDL2 be the better way? The MorphOS port by BeWorld/BSzili uses the same OpenAL+SDL2 setup and mentions an early "audio bug" fix — does anyone know if that applies to AmigaOS4 or was it MorphOS-only?
Thanks for any help.
MacStudio ARM M1 Max Qemu//Pegasos2 AmigaOs4.1 FE / AmigaOne x5000/40 AmigaOs4.1 FE
@Maijestro OpenAL surely works (i use it in many projects), but just what you can try firstly is:
At first, be sure you use static build of whole exe, i.e. when you do "ppc-amigaos-readelf -d yourfile.exe", you have "no dynamic" listed. That by itself can solve lots of issues
ps. And don't forget to have stack cookie of 2mb, i always use it for any more or less "big" projects, just to never worry about possible stack issues which can cause all sort of weird issues too.