[
web home |
screenshots |
download |
documentation |
links
]
-- SourceForge Project Pages for psDooM --
[
project home |
news |
support |
bugs |
patches
]
Please note that this information applies to the latest release of psDooM, whether it is a full release or development snapshot. Older releases may have different behavior than what is described here. Consult the CHANGELOG for details of version differences.
psDooM has been tested on the following platforms:
Please let me know if you get it to run on another platform.
psDooM can probably be made to work on any version of *nix which
runs XDoom. It uses several system commands in order to do its
work: 'ps
', 'renice
', and
'kill'
. Formats of the commands must be as
follows:
*** LINUX 'ps' *** ps h a x u OT == no header, list other user's processes, list processes without a controlling terminal, in 'user format', sorted by process start time. example output follows: root 1 0.0 0.9 764 388 ? S 18:39 0:01 init root 2 0.0 0.0 0 0 ? SW 18:39 0:00 (kflushd) root 3 0.0 0.0 0 0 ? SW< 18:39 0:00 (kswapd) root 28 0.0 0.8 736 348 ? S 18:39 0:00 /sbin/kerneld root 143 0.0 1.2 816 472 ? S 18:39 0:00 syslogd root 152 0.0 1.3 896 528 ? S 18:39 0:00 klogd daemon 163 0.0 1.0 784 404 ? S 18:39 0:00 /usr/sbin/atd david 218 0.0 2.1 1280 856 1 S 18:39 0:00 -bash root 221 0.0 0.7 724 296 4 S 18:39 0:00 /sbin/mingetty tty4 david 598 0.0 1.2 844 472 2 R 22:14 0:00 ps h a x u OT *** SOLARIS 'ps' *** /usr/bin/ps -A -o user= -o pid= -o tty= -o comm= list all processes, show username, show process id, show terminal, show user's command, suppress headers. example output follows: root 1 ? init root 28 ? /sbin/kerneld root 2 ? (kflushd) root 3 ? (kswapd) root 152 ? klogd root 143 ? syslogd daemon 163 ? /usr/sbin/atd david 598 2 ps david 218 1 -bash root 221 4 /sbin/mingetty renice +5 <pid> == renices process number <pid> to +5 priority. kill -9 <pid> == sends a SIGKILL to process number <pid>.
psDooM is currently versioned by date (YYYY.MM.DD) and distributed in three formats:
Development snapshot patches to the source tree are available. These typically have fewer new features per release and the program is less tested than the 'dated' versions above. However, all the latest and greatest features are found first in these snapshots. Each development patch is against the latest snapshot or full release, whichever is most recent.
Additionally, some custom data files for use with psDooM and registered Doom 1, Ultimate Doom, or Doom 2 are available:
By far, most psDooM-related emails I have received are about the following problem. While I do enjoy getting emails about psDooM, I decided to post the solution to this common (and simple to fix) error.
There is an error that occurs when trying to compile psDooM on some newer Linux distributions:
make linux-x86 (cd xdoom; make -f Makefile.linux-x86) make[1]: Entering directory `/tmp/psdoom-src/xdoomsrc/xdoom' gcc -O3 -m486 -ffast-math -fomit-frame-pointer -DUSE_INLINE -DUSE_ASMMOD -Wall -DNORMALUNIX -DLINUX -DBUGFIXES -DPOLL_POINTER -c doomstat.c -o linux-x86/doomstat.o In file included from p_pspr.h:34, from d_player.h:39, from d_net.h:33, from doomstat.h:40, from doomstat.c:35: m_fixed.h: In function `FixedMul': m_fixed.h:64: operand constraint contains '+' or '=' at illegal position. m_fixed.h: In function `FixedDiv2': m_fixed.h:79: operand constraint contains '+' or '=' at illegal position. make[1]: *** [linux-x86/doomstat.o] Error 1 make[1]: Leaving directory `/tmp/psdoom-src/xdoomsrc/xdoom' make: *** [xdoom-linux-x86] Error 2
This issue is covered in the Support Request Tracker: [ 302733 ] can't build psdoom.
The problem has to do with some assembly code that some versions of gcc don't like. Since the offending code exists mostly to speed up the program on 486 and older processors, it is not really necessary nowadays.
An updated Makefile.linux-x86 file is available for
download in the Support Request.
Just replace the existing file with the one attached to the Support
Request, and psDooM should compile.
If you would rather fix it by hand, follow the instructions below.
You'll need to edit the Makefile.linux-x86
file found in the xdoomsrc/xdoom/ directory.
Remove -DUSE_INLINE
from whichever
OPTFLAGS
line is active (the one
without the #
in front of it). I would also
remove -DUSE_ASMOD
from that OPTFLAGS
line. (-DUSE_ASMOD
compiles yet more assembler
that modern machines don't need to take advantage of.)
You may also need to change which OPTFLAGS
line
is being used. Place a #
in front of the line:
OPTFLAGS=-O3 -m486 -ffast-math -fomit-frame-pointer -DUSE_INLINE \
(the one after the comment: # Production, old GNU C 2.7
).
Remove the #
from the front of the line:
#OPTFLAGS=-O3 -mpentium -ffast-math -fomit-frame-pointer \
(the one after the comment: # Production, EGCS
).
*** PID BEGIN ***
' and
'*** PID END ***
' in the sources. The files
pr_process.c and pr_process.h
are new files to psDooM.
[
web home |
screenshots |
download |
documentation |
links
]
-- SourceForge Project Pages for psDooM --
[
project home |
news |
support |
bugs |
patches
]
Copyright © 2000 David Koppenhofer