OS2 World Community Forum

OS/2, eCS & ArcaOS - Technical => Games => Topic started by: Jochen Schäfer on June 05, 2021, 03:28:07 pm

Title: PrBoom+
Post by: Jochen Schäfer on June 05, 2021, 03:28:07 pm
Hi guys.

I have ported PrBoom+, which is a source port of DOOM, running on SDL2.
I have put a prereleases package on my Github repo here: https://github.com/josch1710/prboom-plus/releases/tag/v2.6um-alpha1 (https://github.com/josch1710/prboom-plus/releases/tag/v2.6um-alpha1)
In the archive, you find the two binaries for the game and the multiplayer server, as well as prboom.wad and the shareware version of Doom.
If you have the original DOOM games, you can put the WADs in the program directory or under /@unixroot/usr/(local/)share/(games/)doom.
If you want the midi to play, you need to download the timidity patches from here: https://www.libsdl.org/projects/SDL_mixer/timidity/timidity.tar.gz (https://www.libsdl.org/projects/SDL_mixer/timidity/timidity.tar.gz) and install them in /@unixroot/usr/(local/)share/timidity.

My plan is to submit all my bugfixes for SDL/2 and patches for PrBoom+ in the next days.
After that I want to package everything for easier installation.



Enjoy!
Title: Re: PrBoom+
Post by: Martin Iturbide on June 05, 2021, 06:49:32 pm
Awesome !!!

I will be checking it out and posting the news at OS2World !!!

Regards
Title: Re: PrBoom+
Post by: Ibrahim Hakeem on June 05, 2021, 07:07:42 pm
Very nice! I do have to ask though, does anyone know if it is possible to use Kmidi and Timidity in tandem? I feel each of them have their separate advantages.
Title: Re: PrBoom+
Post by: David McKenna on June 05, 2021, 09:14:28 pm
 Thanks Jochen! It seems to work great here (once I realized you have to start the server first). And KMidi and Timidity work fine together... KMidi will be the default, but if you right-click on a *.mid file, and choose 'Open as..', then you should have Timidity++Player as a choice in the drop-down list.

Regards,
Title: Re: PrBoom+
Post by: Jochen Schäfer on June 05, 2021, 10:12:04 pm
Thanks Jochen! It seems to work great here (once I realized you have to start the server first). And KMidi and Timidity work fine together... KMidi will be the default, but if you right-click on a *.mid file, and choose 'Open as..', then you should have Timidity++Player as a choice in the drop-down list.

Regards,
Actually, you only need to start prboom-plus.exe to play a single player game. The server should only be needed, when playing a multiplayer game. What problem are you having when starting without the server?

Regarding Timidity: SDL-Mixer is used for sound generation, which uses Timidity code for MIDI playback. So the Timidity application is not used.
Title: Re: PrBoom+
Post by: David McKenna on June 05, 2021, 11:09:26 pm
 Hi Jochen,

  If I start pmboom-plus.exe by itself, my system locks solid and I have to do a hard reset. If I start the server, then run pmboom-plus.exe, it works fine. So this is not correct? Is there a way to enable some logs?

Regards,
Title: Re: PrBoom+
Post by: Martin Iturbide on June 06, 2021, 04:05:57 am
Hi

I'm trying it out, it works on my side, I'm trying to understand how the keys are mapped, up and down arrows keys does not goes forward or backward, W and S does that.
Alt+Enter works for full screen (xcenter keeps being displayed there, since I like to have it "always on top"... and I found now the first reason why not to have it "always on top". )
Mouse does not goes smoothy to the left and right.  Left click for firing and right clicking for going forward is working.

Just as a little comment to other readers.  Beside the normal libc stuff, It is needed to install from rpm, "SDL2_image, fluidsynth-libs, flac"

Now, I will check how to enable the MIDI.

Regards
Title: Re: PrBoom+
Post by: Jochen Schäfer on June 06, 2021, 08:51:09 am
Hi

I'm trying it out, it works on my side, I'm trying to understand how the keys are mapped, up and down arrows keys does not goes forward or backward, W and S does that.
Hi Martin.

Good to hear, it's working for you. PrBoom updated the keyboard mapping to more modern standard (i.e. WASD), but you should be able to change them somewhere in the options.
Title: Re: PrBoom+
Post by: Jochen Schäfer on June 06, 2021, 08:57:17 am
Hi Jochen,

  If I start pmboom-plus.exe by itself, my system locks solid and I have to do a hard reset. If I start the server, then run pmboom-plus.exe, it works fine. So this is not correct? Is there a way to enable some logs?

Regards,
That is really strange behaviour. Can you tell me which video and audio drivers, you use?
When you start PrBoom+ without the server, is it really a hack lock or does it only seem so, because the fullscreen window is blocking everything?
Does ALT+ENTER still work? Do you hear sound?
PrBoom is really talkative on startup, so you can redirect the output to a file and look for clues. Also, you could try to start with "-window".

Bye Jochen
Title: Re: PrBoom+
Post by: David McKenna on June 06, 2021, 05:13:54 pm
 Hi Jochen,

 Well, I tried it again today and it seems to work OK. Don't know what was going on yesterday - maybe memory fragmentation? - but no trouble today. I'm using Panorama and the latest UniAud from Paul. Sorry for the alarm...

Regards,
Title: Re: PrBoom+
Post by: Martin Iturbide on June 06, 2021, 06:27:56 pm
Hi Jochen.

Today I tested further "PrBoom+".
1) Sound:
- I run it and sound was working.
- I installed Timidity from Alex site, (with the instruments) and added the timidity.tar.gz files to "/@unixroot/usr/share/timidity"
- I run the program again and sound is not longer working. The rest of the ArcaOS system sound is working fine. Just in case I updated the Paul's latest uniaud , rebooted and PrBoom+ does not sound. I'm not sure what happened that is not producing sound anymore.
- I removed the  timidity.tar.gz files from "/@unixroot/usr/share/timidity" just in case, but I can not get the sound back.
Is there any other configuration file I can check?
Will it be some issue with the SDL2 library DLL that manages sound? which version are you using?

2) Mouse: Can someone confirm if the mouse, left and right movement is working, or it is supposed to work?

Thanks Jochen.

Regards
Title: Re: PrBoom+
Post by: David McKenna on June 06, 2021, 07:51:38 pm
 Hey Martin,

  Mouse seems a bit squirrelly here - left click shoots, right click moves forward, but moving side to side causes weird jerky turning movements, so I use the left/right arrow keys for that. Moving forward and backwards (by pushing mouse forwards or backwards) sometimes works and sometimes doesn't. Another thing I noticed is a message in the console saying fluidsynth is not initialized,  using BSP nodes (even though fluidsynth is chosen as midi player in settings)- but it seems sound works OK.

Regards,
Title: Re: PrBoom+
Post by: Jochen Schäfer on June 06, 2021, 08:49:47 pm
The mouse is fine. In Doom, you can't look up or down. It's a limit of the engine.

@Martin: I don't know, what the problem is. Since I needed some bugfixes in SDL2 and SDL-Mixer is officially still missing, I linked them all statically. The SDL2 requirement comes from SDL-Image, which is linked as a DLL. I never had any problem with the Timidity patches.
Title: Re: PrBoom+
Post by: Martin Iturbide on June 07, 2021, 01:18:38 am
About the mouse...
... but moving side to side causes weird jerky turning movements,...
Yes, that is why I'm experiencing, but since it is the first time I use PrBoom+ I'm not sure if that is normal on all platform.

Regards
Title: Re: PrBoom+
Post by: Jochen Schäfer on June 07, 2021, 09:35:37 am
IIRC, in the original DOS DOOM there was no mouse support. So possibly the addons can be not well tested.
I will look into it.
Title: Re: PrBoom+
Post by: Jochen Schäfer on July 01, 2021, 10:16:30 pm
So, I narrowed it down to SDL not implementing relative mouse movement. This means SDL goes into an emulation of relative mouse movement. But then, the WM_MOUSEMOVE window message is always reporting the same coordinates and so, no movement is reported.
I'm not understanding, why that does happen. If somebody has some suggestions, they would be welcome.
Title: Re: PrBoom+
Post by: Martin Iturbide on February 05, 2022, 06:09:32 pm
Hi

Just one little thing with "prboom-plus-2.6um-alpha1.zip". Today I reinstall it on a machine, I did "yum install  flac  fluidsynth SDL2_image" to install the required DLL's.

I wanted to check again the MIDI stuff, I installed TIMIDITY from Alex Taylor, but it was still not working.

So I checked over the web and got "http://www.libsdl.org/projects/SDL_mixer/timidity/timidity.tar.gz (http://www.libsdl.org/projects/SDL_mixer/timidity/timidity.tar.gz)", unzipped all the files in /etc/timidity and MIDI music started to work. I'm not sure if Alex Taylor Timidity was needed there, I guess FluidSynth is doing the MIDI work.

Regards
Title: Re: PrBoom+
Post by: Martin Iturbide on February 05, 2022, 06:27:12 pm
So, I narrowed it down to SDL not implementing relative mouse movement. This means SDL goes into an emulation of relative mouse movement. But then, the WM_MOUSEMOVE window message is always reporting the same coordinates and so, no movement is reported.
I'm not understanding, why that does happen. If somebody has some suggestions, they would be welcome.

That is the only thing missing to make it the perfect Doom running on ArcaOS, but it awesome anyways to play it with the keyboard.

Video resolution is here working at full screen, 1366x768 and 36bit video mode. The best Doom for OS/2.

Thanks for this port.
Title: Re: PrBoom+
Post by: Jochen Schäfer on February 06, 2022, 06:55:21 pm
Hi

Just one little thing with "prboom-plus-2.6um-alpha1.zip". Today I reinstall it on a machine, I did "yum install  flac  fluidsynth SDL2_image" to install the required DLL's.

I wanted to check again the MIDI stuff, I installed TIMIDITY from Alex Taylor, but it was still not working.

So I checked over the web and got "http://www.libsdl.org/projects/SDL_mixer/timidity/timidity.tar.gz (http://www.libsdl.org/projects/SDL_mixer/timidity/timidity.tar.gz)", unzipped all the files in /etc/timidity and MIDI music started to work. I'm not sure if Alex Taylor Timidity was needed there, I guess FluidSynth is doing the MIDI work.

Regards
I couldn't get it to work either and didn't try further.
Title: Re: PrBoom+
Post by: Jochen Schäfer on February 06, 2022, 06:56:37 pm
So, I narrowed it down to SDL not implementing relative mouse movement. This means SDL goes into an emulation of relative mouse movement. But then, the WM_MOUSEMOVE window message is always reporting the same coordinates and so, no movement is reported.
I'm not understanding, why that does happen. If somebody has some suggestions, they would be welcome.

That is the only thing missing to make it the perfect Doom running on ArcaOS, but it awesome anyways to play it with the keyboard.

Video resolution is here working at full screen, 1366x768 and 36bit video mode. The best Doom for OS/2.

Thanks for this port.
It's a problem with SDL2-os2. I hunted it down, but I have no solution at the moment.
Title: Re: PrBoom+
Post by: Jochen Schäfer on August 19, 2023, 10:06:03 am
This https://share.icloud.com/photos/0b7c7rSdylbdGRgIbMJAGde_g (https://share.icloud.com/photos/0b7c7rSdylbdGRgIbMJAGde_g) shows a teaser of the launcher, I’m working on.
Title: Re: PrBoom+
Post by: Alfredo Fernández Díaz on November 10, 2023, 01:30:31 pm
Hi,

IIRC, in the original DOS DOOM there was no mouse support.
The original DOOM had excellent mouse support. It didn't work under Windows (95?) so many people thought there was none, but it always worked, and still works fine to this day under OS/2.

Anyway, I hope I will be able to have a go at this PrBoom+ thing soon <g>