No shadow surface on OS 9.1?

ok,

I’m getting really frustrated with SDL 1.21 on MacOS 9.1…especially
since I’ve heard nothing back on my last query regarding the
availability(or not) of GL_GetAttribute under same OS…

my latest error comes from trying to run the “demo” fire: after the
following code at start up:

videoflags = SDL_SWSURFACE|SDL_FULLSCREEN|SDL_HWPALETTE;

thescreen = SDL_SetVideoMode(XSIZE, YSIZE, 8, videoflags);
if ( thescreen == NULL )
{
fprintf(stderr, “Couldn’t set display mode: %s\n”,
SDL_GetError());
SDL_Quit();
exit(5);
}

…the program exits and outputs to file the following:

Couldn’t set display mode: Couldn’t create shadow surface

I’ve tried to find out what a “shadow surface” is, but haven’t found
it yet…I tried to compile with #define HAVE_OPENGL, but that didn’t
help…

anyone?–

The shadow surface is what allows SDL to run with certain surface features
even if the underlying hardware does not support it. For example, you can
write 8bit graphics routines and they will “just work” on 16bit and 32bit
displays.

The problem you are having sounds like there is not enough memory
available to the application. Try turning up the heap size a few notches.
For OpenGL, you’ll need more stack space too.

Don’t worry about setting it too high at first; later, you can adjust it
once you determine what the exact needs are (for example, using a tool
like Peekaboo).

As far as the GL_GetAttribute stuff, I can tell you what the typical
attributes are for mac hardware:

zbuffer bits: 16
32bit: ARGB 8-8-8-8
16bit: ARGB 1-5-5-5
8bit: (not accelerated!)

These are the native pixel formats, I don’t expect that any other ones are
supported.

Oh, and I believe most new cards (Rage 128 and up) support the stencil
buffer.

Send more questions if you have them :slight_smile:
DarrellOn Sat, 4 Aug 2001, jam wrote:

ok, >
I’m getting really frustrated with SDL 1.21 on MacOS 9.1…especially
since I’ve heard nothing back on my last query regarding the
availability(or not) of GL_GetAttribute under same OS…

my latest error comes from trying to run the “demo” fire: after the
following code at start up:

videoflags = SDL_SWSURFACE|SDL_FULLSCREEN|SDL_HWPALETTE;

thescreen = SDL_SetVideoMode(XSIZE, YSIZE, 8, videoflags);
if ( thescreen == NULL )
{
fprintf(stderr, “Couldn’t set display mode: %s\n”,
SDL_GetError());
SDL_Quit();
exit(5);
}

…the program exits and outputs to file the following:

Couldn’t set display mode: Couldn’t create shadow surface

I’ve tried to find out what a “shadow surface” is, but haven’t found
it yet…I tried to compile with #define HAVE_OPENGL, but that didn’t
help…

anyone?


SDL mailing list
SDL at libsdl.org
http://www.libsdl.org/mailman/listinfo/sdl