Update Odamex 0.7


Hi ptitSeb :)

@Magic Sam : nope, I haven't worked on that, sorry.

No problem ! Please let me know when you have a new build ready, so that I can give it a try.

I'm also planning to switch from stock SDL to @notaz ' SDL, in order to experiment with accelerated vsync and doublebuffering support . I have one question though: do I need to turn vsync ON in both odamex.cfg (set "vid_vsync" "1") and SDL environment variable (SDL_OMAP_VSYNC = 1) ?

Cheers, Magic Sam
 
Hi all !

@ptitSeb : you actually never told me what kind of permission errors you had on FAT32, and which files were affected ;) Could you please give some more details ? Maybe I could do something about that :)

Cheers, Magic Sam
 
So here are the screenshots of the error. Not much inside. Probably trigerred by wxWidget, but not sure yet (and I check, you seems to have the same version as I have in current codeblocks pnd, but the one in wxWidget is older)...
odamex_error.png odamex_error2.png
 
Hi all :)

@ptitSeb : thanks for the screenshots, and sorry about the late reply !

If I understand correctly, these errors are not blocking, right ?

Cheers, Magic Sam
 
Hi all,

I played a little with Odamex this afternoon, as I tried to release build #7 on the Repo.

The main expected change is a switch from stock SDL to @notaz ' SDL, in order to improve 32 bits rendering.

Unfortunately, it didn't work too well... The game starts in fullscreen mode (widescreen) with 32 bpp rendering ON, but in-game controls don't work (I can't move, shoot, go back to the menu, etc...).

I tried to reconfigure the keys from the main menu, but that didn't work either. I could delete previous settings with [Backspace], but I couldn't set new keys with [Enter]...

Any ideas what I could be doing wrong ?

Cheers, Magic Sam
 
Hi all,

I've compiled a new version of Odamex yesterday evening.

I'm still working on some settings, but I should be able to upload that new PND to the Repo soon (this week-end if possible).

Cheers, Magic Sam
 
Thanks for this, Magic Sam :) On my CC, no problems, i have only changed the config since I´m used to different buttons for shoot, open and run. With doom.wad, (singleplayer) works very fine, found no obvious problems yet :)
 
Hi :)
True, it´s behind while it´s running, and possibly the reason I do not find an ongoing network game with more than 0 participants.It pops up visibly after closing and says:
"Failed to set temporary file permissions (error 1: operation not permitted)".
Since I use it for single player only anyway, no loss to me :) for me it´s more important it is fullscnreen and that brightness can be easily adjusted as it is :) ran the timidity installer once again and now music works :)

Card I use is indeed formatted FAT32; type "UMOX SDXC class 10, 128 GB"; latest firmware, driver is default, to which I returned a while ago due to issued in the Emu Ex emus.

have a nice Sunday all :)
 
@atari_afternoon : unfortunately, this has nothing to do with this bug :( There are just very few people playing Odamex right now. Check the network status here (at the top of the page) for instance.

On a side note, there is an online competition every Friday at 7.30 p.m (EST), called Odamex Nitro.

EDIT: @ptitSeb : @atari_afternoon has the same file permission error you have. Do you still think it could be related to wxWidgets ? Should I report this issue on the Odamex bug tracker ?

Cheers, Magic Sam
 
Last edited:
^^Will write down Saturday 1:30 a.m. CET in my calendar (I´m a night owl) :D can´t believe I have never heard of Odamex before, I´m a Doom player from day one. Even the past weks, played one full three episodes run on the freshly aquired GP32 while we had still so much evening sunshine :)

I have yet to find any harm in gameplay.
 
@Magic Sam : yes, probably the same wxWidget problem. I don't think Odamex team should be contacted for that, it's probably Pandora specific (only Linux machine where you run software from FAT32 partition I guess).
 
Hi all :)

I've been working on the following script these past few days. It downloads / upgrades Freedoom to the latest available version (release and snapshots):
Code:
#!/bin/bash

# Moved $my_soulsphere_path out of the loop

my_soulsphere_path="http://freedoom.soulsphere.org/"

# Download latest Freedoom release

if [ ! -e firsboot ]; then
touch firsboot
echo "This is the first time this program runs"

wget http://freedoom.github.io/download.html

# TODO: clean the cat / grep / cut stuff

my_release_version=`cat download.html | grep releases | grep freedoom | grep -v "of them" | grep freedm | cut -d "\"" -f 2 | cut -d "/" -f 8`
echo $my_release_version > release_version.txt

my_freedoom_release=`cat download.html | grep releases | grep freedoom \
| grep -v "of them" | grep Freedoom | cut -d "\"" -f 2`
echo $my_freedoom_release > urls_release.txt

my_freedm_release=`cat download.html | grep releases | grep freedoom \
| grep -v "of them" | grep freedm | cut -d "\"" -f 2`
echo $my_freedm_release >> urls_release.txt

# Retrieve release files

wget -i urls_release.txt

# Create release directories

mkdir freedm_release freedoom_release

# Decompressing release files

unzip -j freedm-*.zip -d freedm_release
unzip -j freedoom-*.zip -d freedoom_release

# Cleaning up

rm -f *.zip

# Downloading latest Freedoom snapshots

#my_soulsphere_path="http://freedoom.soulsphere.org/"

wget $my_soulsphere_path

my_snapshot_version=`cat index.html | grep commit | cut -d "<" -f 1 | cut -d " " -f 4`
echo $my_snapshot_version > snapshot_version.txt

my_freedm_snapshot=`cat index.html | grep freedm | cut -d "'" -f 2`
echo "$my_soulsphere_path$my_freedm_snapshot" > urls_snapshot.txt

my_freedoom_snapshot=`cat index.html | grep freedoom | grep -v github \
| cut -d "'" -f 2`
echo "$my_soulsphere_path$my_freedoom_snapshot" >> urls_snapshot.txt

# Retrieving snapshot files

# TODO: use wget option instead of $my_soulsphere_path ?

wget -i urls_snapshot.txt

# Creating snapshot directories

mkdir freedm_snapshot freedoom_snapshot

# Decompressing snapshot files

unzip -j freedm-*.zip -d freedm_snapshot
unzip -j freedoom-*.zip -d freedoom_snapshot

# Cleaning up

rm -f *.zip

else
echo "This is not the first time this program runs"
echo "Looking for new Freedoom release"

# Update download.html

rm -v download.html

wget http://freedoom.github.io/download.html

my_new_release_version=`cat download.html | grep releases | grep freedoom | grep -v "of them" | grep freedm | cut -d "\"" -f 2 | cut -d "/" -f 8`

if [ $my_new_release_version != `cat release_version.txt` ]; then
echo "Freedoom has been updated"
echo $my_new_release_version > release_version.txt

my_freedoom_release=`cat download.html | grep releases | grep freedoom \
| grep -v "of them" | grep Freedoom | cut -d "\"" -f 2`
echo $my_freedoom_release > urls_release.txt

my_freedm_release=`cat download.html | grep releases | grep freedoom \
| grep -v "of them" | grep freedm | cut -d "\"" -f 2`
echo $my_freedm_release >> urls_release.txt

# Retrieve release files

wget -i urls_release.txt

rm -rf freedm_release freedoom_release

# Create release directories

mkdir freedm_release freedoom_release

# Decompressing release files

unzip -j freedm-*.zip -d freedm_release
unzip -j freedoom-*.zip -d freedoom_release

# Cleaning up

rm -f *.zip

else
echo "Freedoom has not been updated"
fi

echo "Looking for new Freedoom snapshots"

#my_soulsphere_path="http://freedoom.soulsphere.org/"

rm -v index.html

wget $my_soulsphere_path

my_new_snapshot_version=`cat index.html | grep commit | cut -d "<" -f 1 | cut -d " " -f 4`

if [ $my_new_snapshot_version != `cat snapshot_version.txt` ]; then
echo "Snapshots have been updated"
echo $my_new_snapshot_version > snapshot_version.txt

my_freedm_snapshot=`cat index.html | grep freedm | cut -d "'" -f 2`
echo "$my_soulsphere_path$my_freedm_snapshot" > urls_snapshot.txt

my_freedoom_snapshot=`cat index.html | grep freedoom | grep -v github \
| cut -d "'" -f 2`
echo "$my_soulsphere_path$my_freedoom_snapshot" >> urls_snapshot.txt

# Retrieving snapshot files

wget -i urls_snapshot.txt

rm -rf freedm_snapshot freedoom_snapshot

# Creating snapshot directories

mkdir freedm_snapshot freedoom_snapshot

# Decompressing snapshot files

unzip -j freedm-*.zip -d freedm_snapshot
unzip -j freedoom-*.zip -d freedoom_snapshot

# Cleaning up

rm -f *.zip

else
echo "Snapshots have not been updated"
fi
fi

I'll try to add it to the next Odamex build.

On a side note, if you are using Odamex to play Freedoom, be sure to set "co_boomphys" to "1" before playing.

Cheers, Magic Sam
 
Last edited:
Hi all :)

I'm compiling an up-to-date version of Odamex (now using SDL2).

If everything works as expected, I'll push it to the Repo ASAP.

Cheers, Magic Sam
[doublepost=1480279240,1480274270][/doublepost]Hi again,

@ptitSeb : the new SDL2 library refuses to start, for no obvious reasons. Would there be some environment variables I need to export in the run script ?

There are also a lot of wxWidgets errors (non blocking issue), do you understand what they mean ?
=======================================================================================
PND : /media/Pandora/pandora/menu/odamex-magicsam.pnd
PND_FSTYPE : Squashfs
APPDATADIR : /media/Pandora/pandora/appdata/odamex-magicsam
APPDD_FSTYPE : ext2
PND_CPUSPEED : <unset>
EXENAME : run.sh
ARGUMENTS : <unset>
=======================================================================================
[ START ]--- Mount the PND ----------
Mounting : mount -t squashfs -o ro "/dev/loop0" "/mnt/utmp/odamex-magicsam"
Mounting the Union FS : mount -t aufs -o exec,dirs="/media/Pandora/pandora/appdata/odamex-magicsam=rw+nolwh":"/mnt/pnd/odamex-magicsam=rr" none "/mnt/utmp/odamex-magicsam"
[SUCCESS]--- Mount the PND ----------
[ START ]--- Starting the application ( run.sh ) ----------
Copying default Odamex configuration
Copying default Odalaunch configuration
./src/gtk/textctrl.cpp(847): assert "IsSingleLine()" failed in GetEditable(): shouldn't be called for multiline
./src/gtk/textctrl.cpp(847): assert "IsSingleLine()" failed in GetEditable(): shouldn't be called for multiline
[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): End of buffer reached!
syserrmsg - Success

[:0] BufferedSocket::(): Data from Server 45.33.41.203:10671 was out of sequence, please report!

syserrmsg - Success

./src/common/list.cpp(317): assert "Assert failure" failed in Item(): invalid index in wxListBase::Item
./src/generic/listctrl.cpp(3279): assert "node" failed in GetColumn(): invalid column index in GetColumn
./src/common/list.cpp(317): assert "Assert failure" failed in Item(): invalid index in wxListBase::Item
./src/generic/listctrl.cpp(3279): assert "node" failed in GetColumn(): invalid column index in GetColumn
./src/common/list.cpp(317): assert "Assert failure" failed in Item(): invalid index in wxListBase::Item
./src/generic/listctrl.cpp(3288): assert "node" failed in GetColumnWidth(): invalid column index
./src/common/list.cpp(317): assert "Assert failure" failed in Item(): invalid index in wxListBase::Item
./src/generic/listctrl.cpp(3288): assert "node" failed in GetColumnWidth(): invalid column index
[SUCCESS]--- Starting the application ( run.sh ) ----------
[ START ]--- Restoring the frame buffer status ----------
[SUCCESS]--- Restoring the frame buffer status ----------
[ START ]--- Restoring nub mode ----------
[SUCCESS]--- Restoring nub mode ----------
[ START ]--- uMount the PND ----------
[ START ]--- Waiting the Union to be available ----------

Cheers, Magic Sam
 
@Magic Sam : nope, I don't have a clue about the wxWidget errors. wxWidget has also many assert with codeblocks, and I'm not sure why...

About SDL2, what do you mean?
 
@ptitSeb : I meant do I need to export SDL2="something" in the run script in order to have that SDL2 application running ?

Cheers, Magic Sam
 
Back
Top