This relates, apparently, to exception handling in C++. It has been an issue before in g++, judging by the PB list archives, but the solutions all involve re-compiling crt1.o, which I would really love to avoid.

Anybody who has solved this problem, I look forward to a solution. Seems this should have been fixed, so I do not know why it crops up, unless one of the SDL libs I am using was compiled with the wront crt1.o? I don't quite understand what it does. I'm not very experienced with C++. :?:

The issue is that SDL uses Cocoa internally, and therefore Objective C. For some reason you have to link the ObjC runtime directly with your program (I suspect the linker puts a call to objcInit() in your _start routine). You can either:

Hmm, I have written some GLUT apps, but I never made the connection. OK, so now it compiles ... except for one BIG file, which I forgot I had turned off to get the rest of the easy stuff out of the way.

And now the hard work is left. Despite using SDL, there are still XWindows issues in oglrender.cpp, and I have to work around the CD drive support in some way.

Well I spent most of today on this, but I now have to put it aside and work on schoolwork. So, anybody looking forward to this in the near future, try not to hold your breath. I have to figure out what the code that I cannot use is doing before I can look at replacing it with something else.

If anybody else wants the project as it stands, e-mail me and I'll send it off to you.

Seems to be a pile of textures, sound fx and other stuff in the distro, much to my surprise. I think you can download a demo mountain, jay peak, but the readme makes it sound like a windows installer. Anyway the game is only $20. I think they're using it to sell their crazy virtual snowboard appliance.

Let's see how far we can take this thing. It would be pretty darn cool if we could get it to work.

Well the file in question (linuxmain.cpp) includes SDL.h, which itself includes SDL_main.h. I don't know about SDL_main.m, I have no such animal that I can see. SDL_main.m should have already been compiled into SDL itself, shouldn't it?

Well I got confused by a Makefile and thought that a bunch of stuff called "gamegui" was a library. The Makefile was for an application, or something. I had to include all that code in the main executable. That took a while to figure out -- I didn't notice that the functions in the gamegui headers weren't "extern". Doh!

You will undoubtedly have to change a few default directories. Use the second link if you would rather get the original files from CVS first, for example to do a diff/merge. I have only added one line of code; all other changes to source are altered compiler directives.

Go here to get the installers/packages for a number of "resorts", as they call them. These wil probably be necessary before you can do anything with the engine executable. There is a default mountain setting, changed by command line args, but I think it is initially set to Jay Peak, so download that one. I found the mountain definition file and more textures and such in that.

Henryj, I figure that, barring the cdrom and data paths, we need to know what the two Linux X11 functions in oglrender.cpp are for, and whether we will need to duplicate the functionality. They are small, and don't seem immediately related to setting up the context, so I don't know.

I'm sorry but I haven't looked at it in the last twenty-four hours (marking Prolog midterms and other distractions), so I don't have any more progress to report from my end.

Ha! I figured out a way to make some more progress while still not coding at all. (I could have done the following by building as a tool, I think, but whatever.)

I took the executable out of the App bundle and renamed in soulride. (Where did I get "Soul Rider" from?) I put this in the soulride directory, and ran it from Terminal. It crashed, complaining about "mammoth.srt" -- I can't figure what that is and searching the files finds me nothing. So I ran start_jay_peak.sh instead (Edit: it didn't work when I tried it directly because I screwed up the command line option format I think -- yep, it works now).

Now I'm really close -- but it says:

Quote:http://soulride.com
Couldn't initialize SDL: SDL not built with cdrom support
Input file 'Jay_Peak.srt' is in a new format. You need an updated soulride.exe in order to load it.

So they have changed the data format? But it was a Linux download... checked and the other downloads are .exe, so would have to try running that in Virtual PC in order to extract the data, but the TODO file suggests that the retail stuff doesn't work anyway.

Even "testing.srt" does not work for same reason! So we either need to locate the "old format" or fix it to read the new one. That means maybe waiting for the Linux port to work. This is kinda weird. Anyway, sorry Finlay, we're really close, but without data, no workie! The logo renders a cool little animation, too...