SGI: Development

Danger from the Deep! - Page 2

fzalfa wrote: allways crashing with my octane2... i have the main menu, i can choose mission, watch boat 3d models , but when i start a mission.....

Hi, if you have dbx installed and can ssh to the octane, could you try the following?
(If you can't ssh to it, you'll lose display and/or keyboard focus when it crashes and have to reboot)
1) ssh to the machine and either export DISPLAY=:0.0 in bash or setenv DISPLAY :0.0 in csh .
2) run dbx /path/to/dangerdeep
3) switch to the octane and start a mission that would crash it.
4) go back to the ssh session, hit Ctrl-C and type where
5) Once that's done, type quit .
And then post the output from the where command?
allways crashing with my octane2... i have the main menu, i can choose mission, watch boat 3d models , but when i start a mission.....


As skip wrote, dbx is the way:

start dbx with

Code: Select all

dbx /usr/local/dangerdeep


in dbx:

Code: Select all

(dbx) run /usr/local/bin/dangerdeep --nofullscreen --res 640


so you just have a window sized 640xsome height

play untill it stops. (the window will still be there, dbx catches the coredump, but , when hunting a bug e.g. in the sceneeditor, the background-sound stops).

typing into dbx

Code: Select all

step


gives me this:

Code: Select all

Process  1471: region 54 identical to prev ignored
Process  1471 (dangerdeep) stopped on signal SIGSEGV: Segmentation violation (handler sig_fixup_mask) at [::__dynamic_cast:255 ,0xacb63a4]
Source (of /j10/mtibuild/v741m/workarea/v7.4.1m/libC/lang_support/rtti.cxx) not available for Process  1471


we need more via where

Code: Select all

(dbx) where

Thread 0x10000
>  0 ::__dynamic_cast(0x130d3d20, 0x30207068, 0x1033e590, 0x7fff1da0, 0x0, 0x0, 0xfa, 0xc580cc0e) ["/j10/mtibuild/v741m/workarea/v7.4.1m/libC/lang_support/rtti.cxx":255, 0xacb63a4]
1 map_display::draw_trail(sea_object*,const vector2t<double>&) const(0x1334e8e0, 0x30207068, 0x7fff1da0, 0x7fff1da0, 0x0, 0x0, 0xfa, 0xc580cc0e) ["/usr/people/skip/dev/dangerdeep-current/src/game.cpp":103, 0x102285b0]
2 map_display::draw_visual_contacts(game&,const sea_object*,const vector2t<double>&) const(0x1334e8e0, 0x30207068, 0x1033e590, 0x0, 0x0, 0x0, 0xfa, 0xc580cc0e) ["/usr/people/skip/dev/dangerdeep-current/src/game.cpp":237, 0x10227ddc]
3 map_display::display(game&) const(0x1334e8e0, 0x12d99c50, 0x1033e590, 0x7fff1da0, 0x0, 0x0, 0xfa, 0xc580cc0e) ["/usr/people/skip/dev/dangerdeep-current/src/game.cpp":717, 0x1022a1ec]
4 user_interface::display(void) const(0x12e472a8, 0x30207068, 0x1033e590, 0x7fff1da0, 0x0, 0x0, 0xfa, 0xc580cc0e) ["/usr/people/skip/dev/dangerdeep-current/src/freeview_display.cpp":339, 0x101ee478]
5 game::exec(void)(0x12d99c50, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) ["/usr/people/skip/dev/dangerdeep-current/src/freeview_display.cpp":1733, 0x10237f80]
6 ::run_game_editor(game*)(0x12d99c50, 0x30207068, 0x1033e590, 0x7fff1da0, 0x0, 0x0, 0xfa, 0xc580cc0e) ["/usr/people/skip/dev/dangerdeep-current/src/widget.cpp":532, 0x102d1f04]
7 ::menu_mission_editor(void)(0x12d999a0, 0x0, 0x12d999a0, 0x7fff1da0, 0x1, 0x0, 0x0, 0xc580cc0e) ["/usr/people/skip/dev/dangerdeep-current/src/texts.cpp":1081, 0x102af4c0]
8 ::widget_func_button<void (*)(void)>::on_release(void)(0x130d3d20, 0x30207068, 0x1033e590, 0x7fff1da0, 0x0, 0x0, 0xfa, 0xc580cc0e) ["/usr/include/sys/bsd_types.h":270, 0x1026a678]
9 widget::process_input(const SDL_Event&)(0x130d3d20, 0x0, 0x1033e590, 0x7fff1da0, 0x0, 0x0, 0xfa, 0xc580cc0e) ["/usr/people/skip/dev/dangerdeep-current/src/image.cpp":362, 0x101925b0]
10 widget::process_input(const std::list<SDL_Event,std::allocator<SDL_Event> >&)(0x7fff2c08, 0x7fff2894, 0x1033e590, 0x7fff1da0, 0x0, 0x0, 0xfa, 0xc580cc0e) ["/usr/people/skip/dev/dangerdeep-current/src/image.cpp":378, 0x1019244c]
11 widget::run(unsigned int,bool)(0x7fff2c08, 0x0, 0x0, 0x0, 0x0, 0x0, 0xfa, 0xc580cc0e) ["/usr/people/skip/dev/dangerdeep-current/src/texts.cpp":516, 0x102cf770]
More (n if no)?
12 ::mymain(std::list<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >&)(0x10351160, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0) ["/usr/people/skip/dev/dangerdeep-current/src/datadirs.cpp":1704, 0x102db658]
13 ::call_mymain(std::list<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >&)(0x130d3d20, 0x30207068, 0x1033e590, 0x7fff1da0, 0x0, 0x0, 0xfa, 0xc580cc0e) ["/usr/people/skip/dev/dangerdeep-current/src/mymain.cpp":46, 0x102db948]
14 ::main(0x7fff2fc4, 0x0, 0x1033e590, 0x7fff1da0, 0x0, 0x0, 0xfa, 0xc580cc0e) ["/usr/people/skip/dev/dangerdeep-current/src/mymain.cpp":85, 0x102dbc64]
15 __start() ["/xlv55/kudzu-apr12/work/irix/lib/libc/libc_n32_M4/csu/crt1text.s":177, 0x100d8e28]


of course the sources are used from the buildmachines, so we see e.g. skips pathes.

this way you do not need ssh. and I have found another rtti-prob on IRIX ;)
i do not have dbx......

so dangerdeep produce no core file...

Laurent
SGI or die !!!
:O2: :Octane2: :Octane: :Indigo2IMP: :Indigo2IMP: :Indigo: :Indigo: :Indy: :PI: :Crimson: :PWRSeries: :Onyx: :O2000R:
HP proliant DL 585 Quad Opteron dual core 2.5Ghz 16Gb
i do not have dbx......

so dangerdeep produce no core file...


AFAIK IRIX produces the core-file.

this can be set up via

Code: Select all

# chkconfig savecore on|off
Hello everyone,

Downloaded the tat.bz2 file with data on this second page. installed all the SDL*'s. When I run ./dangerdeep or bin/dangerdeep I get this error.

Code: Select all

Trace/BPT/RangeErr/DivZero/Overflo Trap

The log shows that it errors out at GL_SGIX_Vertex_Preclip.

Any ideas? I also noticed that my data folder in the share directory is empty. There should be files I would believe.

JR
AX wrote: Any ideas? I also noticed that my data folder in the share directory is empty. There should be files I would believe.

/usr/local/share/dangerdeep/data is not used, the original data zip extracts to a "data" directory, which needs to be /usr/local/share/dangerdeep (by default) on *nix builds. The empty directory is probably a remnant from that. This is really odd, but deleting that empty directory (rmdir /usr/local/share/dangerdeep/data as root) seems to help. I had trouble with vanishing ships until I removed it.

AX wrote: Downloaded the tat.bz2 file with data on this second page. installed all the SDL*'s. When I run ./dangerdeep or bin/dangerdeep I get this error.

Code: Select all

Trace/BPT/RangeErr/DivZero/Overflo Trap

I just tried the .tar.bz2, but it doesn't crash for me. The binary in it seems to be an -Ofast build, which is somewhat broken (but faster :? ) as I noted earlier. I use the simple "-O3" build, which is noticeably slower. With the -Ofast build, only the VIIC is usable in some stations, some ships are invisible and invincible. It does have better performance. I've actually replaced it with a build using flags suggested by hamei (adding -INLINE -OPT:Olimit=0:roundoff=3 -TARG:platform=IP35:proc=r14000), which seems to work okay. So both of my binaries linked on the previous page now work for me. I don't recommend the -Ofast build; it seems to be broken in many ways.

The error you get is actually similar to one I had while porting it (using round() from C++ is apparently not okay, so I wrote it as a macro using floor()). I wonder if floor() or something else is causing a problem?

The list of required packages is: libSDL, libSDL_mixer, libSDL_net, libSDL_image, libpng, libjpeg, libiconv, libtiff, zlib, libvorbisfile, libvorbis and libogg. But I'm sure that you have all those, or it shouldn't execute at all.
skip wrote: ..
The list of required packages is: libSDL, libSDL_mixer, libSDL_net, libSDL_image, libpng, libjpeg, libiconv, libtiff, zlib, libvorbisfile, libvorbis and libogg. But I'm sure that you have all those, or it shouldn't execute at all.


It needs:

Code: Select all

neko_sdl.sw.lib 7 maxint
neko_sdl_image.sw.lib 3 maxint
neko_sdl_mixer.sw.lib 5 maxint
neko_sdl_net.sw.lib 2 maxint
neko_fftw.sw.lib 3 maxint
neko_libiconv.sw.lib 2 maxint
neko_libjpeg.sw.lib 2 maxint
neko_libogg.sw.lib 1 maxint
neko_libpng.sw.lib 3 maxint
neko_tiff.sw.lib 3 maxint
neko_libvorbis.sw.lib 1 maxint
neko_zlib.sw.lib 6 maxint


I have updated our neko_fftw to 3.1.2 so it is possible to link dangerdeep without editing the linkline with your hand.

I have compile it as a nekoware standard package and it runs here on my FUEL/V10. No crashes so fare... but some other things.

1. No periscope
2. Most of the models doesnt shown with textures (something misssing/incomplete game or just broken?)
3. On my system the colors looks very 'purple'
4. German "umlauts" are not working when switching the language in the game

Image

Image

So... time for a neko_dangerdeep or not? I can package it in minutes :)

regards
Joerg
Hi Joerg,

Offcourse it is great to see this game into nekoware !
How many Frames Per Second does the game do on your Fuel?
loonvf wrote: Hi Joerg,

Offcourse it is great to see this game into nekoware !
How many Frames Per Second does the game do on your Fuel?



Hmmm... not the easy way. A dozen pathes of the datadir contains spaces. This confuses swpkg and more important the inst utility! I always thought that some quotes " ..... " can be used as a workaround.... buts thats wrong.

So we need a post-exec script which unzips the data.zip to the right location. But im running low on time now.... and currently in dont know a way to cleanup the stuff when try to de-install the package.

On my FUEL i get 6.8-60 frames.

regards
Joerg
1. No periscope


Jorg, be sure to be on periscope-depth (ca. 10m, go there via p , the periscope works only there). Bring out or in the periscope via 0 (zero). Look on< F2> -screen, I can use the mousewheel to zoom, or use mousedrags to go left or right.
joerg wrote: 2. Most of the models doesnt shown with textures (something misssing/incomplete game or just broken?)
3. On my system the colors looks very 'purple'

The game requires multitexturing and other GL bits not supported (at least on my machine) in IRIX. The patch simply removes those, which is probably causing both of these. The water is also much less pretty than the screenshots of official builds. nuclear posted about the GL extensions, it seems that fixing these is likely to be quite involved. :(
skip wrote: ... nuclear posted about the GL extensions, it seems that fixing these is likely to be quite involved. :(

Maybe it's time to call in our resident OpenGL expert, Mr Squeen ...
For some reason, I had to dig around to find the specific data files for Danger From the Deep game to work with the compiled code presented in this thread. To save time, I packaged it all in a tarball with a 'run' script and a src/ dir with some notes and sources.

This tarball is nothing 'new' .. just a packaging of what others have done here already.

I always run it from /usr/local/ but it should work anywhere else you extract the tarball too. Runs very well on a Tezro. Runs poorly on an O2 R5k.

the dangerfromthedeep.tar.gz file is in my contrib dir:

ftp://ftp.nekochan.net:21/pub/downloads ... eep.tar.gz


-Kevin
Thanks! Must give this a try some time :)
Systems in use:
:Indigo2IMP: - Nitrogen : R10000 195MHz CPU, 384MB RAM, SolidIMPACT Graphics, 36GB 15k HDD & 300GB 10k HDD, 100Mb/s NIC, New/quiet fans, IRIX 6.5.22
:Fuel: - Lithium : R14000 600MHz CPU, 4GB RAM, V10 Graphics, 72GB 15k HDD & 300GB 10k HDD, 1Gb/s NIC, New/quiet fans, IRIX 6.5.30
Other system in storage: :O2: R5000 200MHz, 224MB RAM, 72GB 15k HDD, PSU fan mod, IRIX 6.5.30
Hello,

Many thanks for the package!


necron2600 wrote: I always run it from /usr/local/ but it should work anywhere else you extract the tarball too. Runs very well on a Tezro. Runs poorly on an O2 R5k.


I tried to run your version on my R10k O2 and it fails:

Code: Select all

Caught exception: font: failed to open /tmp/dangerfromthedeep/data/fonts/font_arial

The files named font_aria* are present...

If I move it to /usr/local then it does the same.

Do you have any idea that can be wrong?
:O2: :1600SW: :Indy: :Indy: :Indigo:
hmm. make sure you are running the "./run" script and not trying to run the binary directly (unless you copy the command and arguments from that run file).

Maybe how you have untared it could be a problem? I used gtar.. making it easier to decompress/gunzip and extract a tar quickly.

To test.. I extracted the tar.gz file in /tmp/:

$ cd /tmp
$ gtar xpzf /somewhere/dangerfromthedeep.tar.gz
$ cd dangerfromthedeep/
$ ./run
unknown parameter --res=800.
data directory set to "/tmp/dangerfromthedeep/data/"
OpenGL vendor : SGI
GL renderer : VPRO/A/32
GL version : 1.2 Irix 6.5
[...]

Let me know if using gtar clears up your issue?
-Kevin
Hello Kevin,

I do exactly the same (using /usr/nekoware/bin/gtar) but the results is the same.
I use the "run" script.

Maybe something in my setup is wrong as the fonts look to be OK (I compared them with fonts from a different source and they are the same).

Anyway, thank you very much for your help!

Best regards,
Jirka


Code: Select all

moose>./run
unknown parameter --res=800.
data directory set to "/tmp/dangerfromthedeep/data/"
OpenGL vendor : SGI
GL renderer : CRIME
GL version : 1.1 Irix 6.5
GL max texture size : 1024
GL number of texture units : 0
GL number of lights : 8
GL number of clip planes : 6
GL maximum viewport dimensions : 2048
GL depth bits (current) : 24
Supported GL extensions :
GL_EXT_abgr
GL_EXT_blend_color
GL_EXT_blend_logic_op
GL_EXT_blend_minmax
GL_EXT_blend_subtract
GL_EXT_convolution
GL_EXT_copy_texture
GL_EXT_histogram
GL_EXT_packed_pixels
GL_EXT_polygon_offset
GL_EXT_subtexture
GL_EXT_texture
GL_EXT_texture3D
GL_EXT_texture_object
GL_EXT_vertex_array
GL_INGR_interlace_read
GL_SGI_color_matrix
GL_SGI_color_table
GL_SGI_texture_color_table
GL_SGIS_texture_color_mask
GL_SGIS_texture_edge_clamp
GL_SGIX_interlace
GL_SGIX_texture_scale_bias

Caught exception: font: failed to open /tmp/dangerfromthedeep/data/fonts/font_arial
Check the permissions on the two executables. They were set funny when I extracted the archive.
Tried, no luck. :-(

My last idea is to update the SDL (the only "modern" library which the dangerdeep4 uses)...