Hello

Doco is Australian for Documentation.
Well not officially :slight_smile:

Input abstraction? How do you mean? As for the .rc files, that shouldn’t be
too difficult. I’ve been writing programs that use .rc files for almost four
years. I could even do Win-style INI files (I’d prefer not to). But do you
mean like a standard format for .rc files? I’m not sure that would work since
the games you can make with SDL can be completely different. Right now, I’m
working on a board game using it, and I’ve run SDLDoom. I don’t know if there
are any other games currently being made with SDL, but just those two seem
totally different to me.

Wouldn’t it be better to let the SDL apps handle the configuration stuff. So,
for example, you could select as a command-line option whether to use full
screen mode or windowed mode, or as a menu item.

Of course, it would be good to be able to select prefs for all SDL apps at the
same time, but that could be more annoying than useful.

What about if SDL grabbed some settings from shell environment variables if they
exhist. These values would be “max” values, or deviations from the default.
(Ie. the program would be able to overide them if it wants)

That way a configuration file is just a shell script which runs the program
at the end.

cya
Josh-----
Real programmers don’t bring brown-bag lunches. If the vending machine
doesn’t sell it, they don’t eat it. Vending machines don’t sell
quiche.

RE: Re: Hello?

You should be thankful! :slight_smile:

Well, I am thankful that it’s not like the RedHat Newbie list, yes, but it was
kind of unnerving to hot hear anything from the list. Kind of like walking
into a dark, silent room and wondering if you’re by yourself, or if there are
fifty pair of eyes staring at you.

There have been discussions, but I think Sam is aiming to get all ports
stable before too much new happens. Also, doco is in the works.

Any word on exactly what’s broke? I’ve only played with it on RedHat Linux 5.0
on Intel Pentium processors and XFree86 3.3.1 and 3.3.2. I never had any
problems (Except that the only modes it can set the screen to are 640x480,
800x600, and 1024x768, but I think that might be my X server more than SDL).
And what’s doco? (Pardon the ignorance)

BTW, did I bring up the fact that I think some kind of input abstraction
and configuration stuff should be considered? A simple text based
configuration (.rc) file would be best, with a nifty Gtk(or whatever) edit
tool for users written later.

Input abstraction? How do you mean? As for the .rc files, that shouldn’t be
too difficult. I’ve been writing programs that use .rc files for almost four
years. I could even do Win-style INI files (I’d prefer not to). But do you
mean like a standard format for .rc files? I’m not sure that would work since
the games you can make with SDL can be completely different. Right now, I’m
working on a board game using it, and I’ve run SDLDoom. I don’t know if there
are any other games currently being made with SDL, but just those two seem
totally different to me.

                      Knight Walker  

------[The Kobran Imperium]-----[801-265-1299]-----[SLC, UT, USA]-----
Multi-net messages, Usenet Newsgroups, networked games, Cool SysOps!
BBSing isn’t dead, it just smells a little funny.

Well, I am thankful that it’s not like the RedHat Newbie list, yes, but it was
kind of unnerving to hot hear anything from the list. Kind of like walking
into a dark, silent room and wondering if you’re by yourself, or if there are
fifty pair of eyes staring at you.

FYI, 42 pairs of eyes :slight_smile:

There have been discussions, but I think Sam is aiming to get all ports
stable before too much new happens. Also, doco is in the works.

Any word on exactly what’s broke? I’ve only played with it on RedHat Linux 5.0
on Intel Pentium processors and XFree86 3.3.1 and 3.3.2. I never had any
problems (Except that the only modes it can set the screen to are 640x480,
800x600, and 1024x768, but I think that might be my X server more than SDL).
And what’s doco? (Pardon the ignorance)

The LinuxPPC port is a little-bit broken, mainly the threads stuff (which is
disabled for LinuxPPC, last I checked), and the sound. (Which I haven’t checked
lately, because I broke my kernel sound support :slight_smile:

Doco is Australian for Documentation.

Input abstraction? How do you mean? As for the .rc files, that shouldn’t be
too difficult. I’ve been writing programs that use .rc files for almost four
years. I could even do Win-style INI files (I’d prefer not to). But do you
mean like a standard format for .rc files? I’m not sure that would work since
the games you can make with SDL can be completely different. Right now, I’m
working on a board game using it, and I’ve run SDLDoom. I don’t know if there
are any other games currently being made with SDL, but just those two seem
totally different to me.

Wouldn’t it be better to let the SDL apps handle the configuration stuff. So,
for example, you could select as a command-line option whether to use full
screen mode or windowed mode, or as a menu item.

Of course, it would be good to be able to select prefs for all SDL apps at the
same time, but that could be more annoying than useful.On Fri, Jul 24, 1998 at 06:54:13PM -0600, Knight Walker wrote:

Input abstraction? How do you mean? As for the .rc files, that shouldn’t be
too difficult. I’ve been writing programs that use .rc files for almost four
years. I could even do Win-style INI files (I’d prefer not to). But do you
mean like a standard format for .rc files? I’m not sure that would work since
the games you can make with SDL can be completely different. Right now, I’m
working on a board game using it, and I’ve run SDLDoom. I don’t know if there
are any other games currently being made with SDL, but just those two seem
totally different to me.

Wouldn’t it be better to let the SDL apps handle the configuration stuff. So,
for example, you could select as a command-line option whether to use full
screen mode or windowed mode, or as a menu item.

I think that the common stuff should have a std. format - so users don’t
have to learn a new file type for every game they get.

Of course, it would be good to be able to select prefs for all SDL apps at the
same time, but that could be more annoying than useful.

Hmmm, how about .css style of heirachy?

njh

Any word on exactly what’s broke?

The LinuxPPC port is a little-bit broken, mainly the threads stuff (which is
disabled for LinuxPPC, last I checked), and the sound. (Which I haven’t checked
lately, because I broke my kernel sound support :slight_smile:

Apparently the Metro-X X server has a different implementation of DGA
which SDL doesn’t work well with. I’ll take a look at that.

I will have a PowerPC in a few weeks to play with, and I should be able
to resolve the problems with PPC sound. Threads are broken because of
a faulty implementation of pthreads on the Linux PPC port.

SDL has a bew quirks in the DirectX support, most notably that the palette
in 8-bit windowed mode gets a little warped, and switching away from the
application for a long time can have undesired side-effects.

The documentation for SDL should be fine… there’s someone who was
interested in writing a tutorial for beginners, which I would love to
see. :slight_smile:

Um… I’ll write more next week when I get back in California
(BTW, at the last minute I decided not to move to Connecticut. :slight_smile:

See ya!
-Sam Lantinga (slouken at devolution.com)–
Author of Simple DirectMedia Layer -
http://www.devolution.com/~slouken/SDL/

Well not officially :slight_smile:

Ahh… Well, I figured it was unofficial.

What about if SDL grabbed some settings from shell environment variables if they
exhist. These values would be “max” values, or deviations from the default.
(Ie. the program would be able to overide them if it wants)

Again, I don’t see there being that many similarities in SDL games that
would require a standard interface or functions. There are already
functions to get shell environmental variables. I just don’t see it as
being necessary. The game I’m writing has very modest configuration
needs. And I was under the impression that SDL was supposed to be
simple.On 25 Jul, joshua at hal.nb.surfnetcity.com.au wrote:


| |/ | | | _ | | | mailto:@Knight_Walker |
| / | / / | | http://www.aros.net/~kwalker |
| \ | ___ | | |
| |\ | | / \ | | The Kobran Imperium (801)265-1299 |
|| || || || _____________________________________/

Apparently the Metro-X X server has a different implementation of DGA
which SDL doesn’t work well with. I’ll take a look at that.

Well fortunately, the game I’m writing at the current moment doesn’t
require DGA support, so it should work on everything. Once it’s in
beta, I’ll need testers, though.

SDL has a bew quirks in the DirectX support, most notably that the palette
in 8-bit windowed mode gets a little warped, and switching away from the
application for a long time can have undesired side-effects.

Well, thus far, I’ve been using 16-bit mode. Have there been any
reports of problems on true-color displays?

The documentation for SDL should be fine… there’s someone who was
interested in writing a tutorial for beginners, which I would love to
see. :slight_smile:

I agree. The documentation was one of the four reasons why I decided
to explore SDL further. Compared to just about every other Free or
Open development library. It’s got more documentation (That I’ve been
able to find) than SVGAlib, and ncurses. I’d like to see a detailed
tutorial as well. Thus far, I’ve been able to piece together from the
tutorials how to get the best display mode, open a window, and display
a bitmap. I’m reading more to find out how to do animated sprites and
such.

Um… I’ll write more next week when I get back in California
(BTW, at the last minute I decided not to move to Connecticut. :slight_smile:

Ahh… That explains why the list has been quiet.On 25 Jul, Sam Lantinga wrote:


| |/ | | | _ | | | mailto:@Knight_Walker |
| / | / / | | http://www.aros.net/~kwalker |
| \ | ___ | | |
| |\ | | / \ | | The Kobran Imperium (801)265-1299 |
|| || || || _____________________________________/

Apparently the Metro-X X server has a different implementation of DGA
which SDL doesn’t work well with. I’ll take a look at that.

Last time I looked a Metro-X, it didn’t support DGA at all! (But that was the
Metro-X that came with RH 3.03 on that Infomagic set :slight_smile:

I always just assumed that it was XFree86’s “proprietry” standard…

I will have a PowerPC in a few weeks to play with, and I should be able
to resolve the problems with PPC sound. Threads are broken because of
a faulty implementation of pthreads on the Linux PPC port.

Excellent! I hope you’re not just getting it to fix the sound, unless you’re
planning on doing some kernel hacking :slight_smile: (Eg. the unstable kernel’s sound did
and will work with SDL – it’s just that sound support doesn’t compile in to
the kernel anymore :slight_smile:

I think there was some endianness swapping in the kernel sound driver between
2.1.24 (stable) and 2.1.10x (“unstable” – more stable than the stable one
though :slight_smile:

The documentation for SDL should be fine… there’s someone who was
interested in writing a tutorial for beginners, which I would love to
see. :slight_smile:

I’m up for that tutorial :slight_smile:

Seriously, though. I think the docs on your web site are quite good for
beginners. (Admittedly, I haven’t gotten any good demos yet, but that’s due to
a lack of inspiration, time and patience)

Um… I’ll write more next week when I get back in California
(BTW, at the last minute I decided not to move to Connecticut. :slight_smile:

Why? Cigarette prices too high up there? :-)On Sat, Jul 25, 1998 at 06:31:41PM -0700, Sam Lantinga wrote:

And I was under the impression that SDL was supposed to be simple.

YESS!! SDL is supposed to be lean and mean. Of course, this doesn’t
prevent anyone from layering any kind of nifty library support on top
of it. :slight_smile: Just look in the examples directory.

As for setting the default audio output device… well, that can be
done under Linux by setting the erp… lost the environment variable
support. Uh, erm. The next version of SDL will have support for an
AUDIODEV environment variable. :slight_smile:

As for MIDI and MOD support… I don’t have a sound card that supports
MIDI, and know very little about it. I’m sure that a library could be
added to the examples that uses the timidity interface… it would use
a fair amount of CPU, but could mix directly to a DSP soundcard.

The HElliZER demo uses a MOD player library which works very well under
SDL, but I don’t have a URL for it yet. I can make it available soon,
I just haven’t done it yet because it has problems loading the correct
animations under Win32 – It’s not an SDL problem, and I haven’t had time
to fix it.

If somebody who knows more about MIDI wants to spec out an SDL API,
I’d be glad to look at it.

See ya!
-Sam Lantinga (slouken at devolution.com)–
Author of Simple DirectMedia Layer -
http://www.devolution.com/~slouken/SDL/

SDL has a bew quirks in the DirectX support, most notably that the palette
in 8-bit windowed mode gets a little warped, and switching away from the
application for a long time can have undesired side-effects.

Well, thus far, I’ve been using 16-bit mode. Have there been any
reports of problems on true-color displays?

Nope. A long time ago Executor had problems with apparently reversed
colors on some video cards, but it seemed to be driver and DirectX
version dependent. I haven’t heard of anything recently.

See ya!
-Sam Lantinga (slouken at devolution.com)–
Author of Simple DirectMedia Layer -
http://www.devolution.com/~slouken/SDL/

I will have a PowerPC in a few weeks to play with, and I should be able
to resolve the problems with PPC sound. Threads are broken because of
a faulty implementation of pthreads on the Linux PPC port.

Excellent! I hope you’re not just getting it to fix the sound, unless you’re
planning on doing some kernel hacking :slight_smile: (Eg. the unstable kernel’s sound did
and will work with SDL – it’s just that sound support doesn’t compile in to
the kernel anymore :slight_smile:

That’s not encouraging. :slight_smile:
No, I’m actually getting it to help a friend of mine fix some problems with
their computer. They’ll give it to me on extended loan.

(BTW, at the last minute I decided not to move to Connecticut. :slight_smile:

Why? Cigarette prices too high up there? :slight_smile:

Nope. Just more California girls here. :slight_smile:

See ya!
-Sam Lantinga (slouken at devolution.com)–
Author of Simple DirectMedia Layer -
http://www.devolution.com/~slouken/SDL/

As for MIDI and MOD support… I don’t have a sound card that supports
MIDI, and know very little about it. I’m sure that a library could be
added to the examples that uses the timidity interface… it would use
a fair amount of CPU, but could mix directly to a DSP soundcard.

Umm… from what I recall from a chat we had a while back, you have a SB16
(or Vibra 16), and they have a Yamaha OPL3 chip on them, which is an FM chip
that for many years was what the PC world new as “Midi support”.

It will sound rather terrible, once you’ve had a little listen to midi playing
on my AWE 32 with the 2MB GM patch installed, but it isn’t that bad, if you
write good music that takes the FM synthesis into account.

Don’t bother with any of that software midi stuff - the new Linux kernels have
SoftOSS support, and anybody who has a crippled OS, can just put up with FM
synth, or buy a REAL sound card :slight_smile:

I’ll see if I can find some docs on it for you.

The HElliZER demo uses a MOD player library which works very well under
SDL, but I don’t have a URL for it yet. I can make it available soon,
I just haven’t done it yet because it has problems loading the correct
animations under Win32 – It’s not an SDL problem, and I haven’t had time
to fix it.

Define “very well”… I’ve heard you talking about your PII :slight_smile:

But, MOD files are quite a good standard… It would be nice to keep at least
something from the old, and somewhat dead Amiga platform.

If somebody who knows more about MIDI wants to spec out an SDL API,
I’d be glad to look at it.

I could look into it, but don’t expect any directly usable code out of me :-)On Sun, Jul 26, 1998 at 11:37:24PM -0700, Sam Lantinga wrote:


– Michael Samuel

Don’t trust anything I say, just give it consideration.

YESS!! SDL is supposed to be lean and mean. Of course, this doesn’t
prevent anyone from layering any kind of nifty library support on top
of it. :slight_smile: Just look in the examples directory.

Of course not. But speed is important at the level SDL works on. I’ve
had a look in the examples directory, but some of it still elludes me.
Could you be so kind as to post a brief description of what each
example does?

As for setting the default audio output device… well, that can be
done under Linux by setting the erp… lost the environment variable
support. Uh, erm. The next version of SDL will have support for an
AUDIODEV environment variable. :slight_smile:

Well, I can see the need for something like that, but with as huge and
complex as my environmental variable list is getting, I’m not sure I’d
like to push it much farther.

As for MIDI and MOD support… I don’t have a sound card that supports
MIDI, and know very little about it. I’m sure that a library could be
added to the examples that uses the timidity interface… it would use
a fair amount of CPU, but could mix directly to a DSP soundcard.

Probably. If anyone wants to take apart the playmidi source code and
tell us how it works… :slight_smile: Even just FM-based would be good. I’m a
tiny bit warry about basing anything on timidity because timidity has
proven to be less than stellar on my system (crackles, sound cut outs,
etc).

But yeah, mixing sound and music is something that I’ve been worried
about. As it is, I’ve been playing around with MikMod for music, but
that’s proven problematic when a sound effect plays while the mod is
going.

The HElliZER demo uses a MOD player library which works very well under
SDL, but I don’t have a URL for it yet. I can make it available soon,
I just haven’t done it yet because it has problems loading the correct
animations under Win32 – It’s not an SDL problem, and I haven’t had time
to fix it.

Does it allow the possibility of playing one (or more) sound effects
while the mod is going? If so, that just bypassed one of my big
worries.On 26 Jul, Sam Lantinga wrote:


| |/ | | | _ | | | mailto:@Knight_Walker |
| / | / / | | http://www.aros.net/~kwalker |
| \ | ___ | | |
| |\ | | / \ | | The Kobran Imperium (801)265-1299 |
|| || || || _____________________________________/

As for MIDI and MOD support… I don’t have a sound card that supports
MIDI, and know very little about it. I’m sure that a library could be
added to the examples that uses the timidity interface… it would use
a fair amount of CPU, but could mix directly to a DSP soundcard.

MODs are not the kind of things you want to “support” per se in SDL.
However, a sound mixing engine for which a MOD player could be implemented
would be acceptable. I know most of you probably don’t mean integrating a
MOD engine into SDL, but I just want to make sure we’re all on the same
wavelength, here. :slight_smile: Don’t want SDL getting insanely wacky.

As for MIDI support, I think it’s a great idea. Commercial development
has pretty much abandoned MIDI just when it was getting cool. (I say this
as a commercial developer myself…) But MIDI’s starting to sound pretty
nice even on reasonably priced systems, and is ideal for things like free
software, and demos, where distributing CD audio tracks is just not
convenient…

-Chuck

MODs are not the kind of things you want to “support” per se in SDL.
Yes you do. MIDI is NOT ideal for games.
The FM synthesis in PC sound cards is utter crap, and has made
a good chunk of PC games cheesy because most computer users don’t
have real MIDI instruments as opposed to MIDI synthesis.

wavelength, here. :slight_smile: Don’t want SDL getting insanely wacky.

As for MIDI support, I think it’s a great idea.
MIDI over MODS? Sheesh.

In order to get voice samples in a score you’d need not only
your MIDI but the overhead of using huge .WAV’s or the
decompression overhead of MP3’s.

Commercial development
has pretty much abandoned MIDI just when it was getting cool. (I say this
as a commercial developer myself…)
Baseline hardware doesn’t do MIDI. Let alone do it well.

-David

MODs are not the kind of things you want to “support” per se in SDL.
Yes you do. MIDI is NOT ideal for games.

Welcome to a holy war, Chuck. Hehe…

But, I’m not advocating MIDI over MODs, so don’t go putting words in my
mouth :slight_smile: You’re talking to a guy whose written MODs for over 8 years, and
has released a shareware title featuring a MOD soundtrack (well, S3M
actually…).

In reality, MODs are certainly much better than MIDI in many
circumstances, but be careful about making SDL bloated beyond compare.
The way MOD support should be done in SDL is as an SDL-compatible
library. SDL should have an interface to perform multi-frequency
arbitrary-channel sound mixing (ala DirectSound). On platforms that don’t
support multichannel mixing, a software mixing routine must be included as
well. However, a MOD player is an application/library that runs under
SDL. This part would be completely platform independent.

As for MIDI support, I think it’s a great idea.
MIDI over MODS? Sheesh.

I used to be a MIDI-basher, too. That’s why I’m such a MOD nut. But
given time, you’ll realize that they both have their place. And they both
deserve support in SDL. But having a MOD player built into SDL is just as
silly as having a MIDI sequencer. These things are better left as
libraries.

-Chuck

The way MOD support should be done in SDL is as an SDL-compatible
library.

That’s exactly what the HElliZER demo uses – it uses the mikmod library,
and I just plugged in an SDL driver to it, so there’s no additional code
in SDL to support it… it just works. :slight_smile:

I haven’t tried the demo on anything less than a Pentium 133, and I suspect
that it would run very slowly, due to the software 3D rendering it does.

SDL should have an interface to perform multi-frequency arbitrary-channel
sound mixing (ala DirectSound). On platforms that don’t
support multichannel mixing, a software mixing routine must be included as
well.

The mixer library in the examples takes four channels of a single arbitrary
frequency and mixes them in software to the sound device. Audio files that
are loaded are converted at load time to the current audio format.

In my experience, even on a lowly 486, four channels of audio mixing in
software uses a mere 3-5% of the CPU. For this reason I haven’t worried
about hardware mixing. Also, there are many effects you can do in software
mixing that you can’t, or usually can’t, in hardware mixing.
The only exception is the new 3D sound API, and I don’t have any 3D sound
cards.

See ya!
-Sam Lantinga (slouken at devolution.com)–
Author of Simple DirectMedia Layer -
http://www.devolution.com/~slouken/SDL/

Of course not. But speed is important at the level SDL works on. I’ve
had a look in the examples directory, but some of it still elludes me.
Could you be so kind as to post a brief description of what each
example does?

I’m going to distribute the examples as a separate archive, with a
README and a GNU Makefile. I’ll keep you posted.

Probably. If anyone wants to take apart the playmidi source code and
tell us how it works… :slight_smile: Even just FM-based would be good. I’m a
tiny bit warry about basing anything on timidity because timidity has
proven to be less than stellar on my system (crackles, sound cut outs,
etc).

That’s good to know.

Does it allow the possibility of playing one (or more) sound effects
while the mod is going? If so, that just bypassed one of my big
worries.

Nope, though that would be trivial to add.

See ya!
-Sam Lantinga (slouken at devolution.com)–
Author of Simple DirectMedia Layer -
http://www.devolution.com/~slouken/SDL/

RE: Re: Hello

Yes you do. MIDI is NOT ideal for games.

Yeah, but we’ve got a problem here. We want fast load times and lean games
(I’m shooting for about a meg or two myself), but I want my sound to be GOOD.
For me, that’s tracked music (MOD/S3M/MTM/XM/IT).

The FM synthesis in PC sound cards is utter crap, and has made
a good chunk of PC games cheesy because most computer users don’t
have real MIDI instruments as opposed to MIDI synthesis.

Amen.

MIDI over MODS? Sheesh.

If we all had wavetable soundcards, you betcha. I’ve heard some cheesey MODs,
but then again, almost ALL the MIDIs on my sound card suck.

In order to get voice samples in a score you’d need not only
your MIDI but the overhead of using huge .WAV’s or the
decompression overhead of MP3’s.

Well, for the sound effects, I’m probably going to be using WAVs or whatever
sound format SDL supports. But I wouldn’t go for MP3s. I’ve still got a 486
for crying out loud.

                      Knight Walker  

------[The Kobran Imperium]-----[801-265-1299]-----[SLC, UT, USA]-----
Multi-net messages, Usenet Newsgroups, networked games, Cool SysOps!
BBSing isn’t dead, it just smells a little funny.

The mixer library in the examples takes four channels of a single arbitrary
frequency and mixes them in software to the sound device. Audio files that
are loaded are converted at load time to the current audio format.

You should probably look at esd (the Enlightened Sound Daemon)…

In my experience, even on a lowly 486, four channels of audio mixing in
software uses a mere 3-5% of the CPU. For this reason I haven’t worried
about hardware mixing. Also, there are many effects you can do in software
mixing that you can’t, or usually can’t, in hardware mixing.
The only exception is the new 3D sound API, and I don’t have any 3D sound
cards.

As the proud owner of a “3D sound” card, I can truthfully say that it is a load
of utter crap. Even with the chopper demo, it is nothing more than an extra
chip to do the stereo panning for you. (Which could probably be done in
software with little effort)

Also, to take advantage on it, you will probably need to use hardware sound
channels, which will place arbituary limits on the number of simultanious
sounds you can have playing at once. Not to mention that SDL should use the
OS sound driver, not the sound hardware directly, as there are WAY too many
different, incompatible sound chips around for SDL to have support for each
one individually.

BTW, MIDI rulez :-)On Mon, Jul 27, 1998 at 10:13:01AM -0700, Sam Lantinga wrote:


– Michael Samuel

Don’t trust anything I say, just give it consideration.