SDL and NT4.0: DirectX problems

Hi, I am new to SDL. I just downloaded and installed the CVS.

But I have a problem building SDL in my Windows NT4.0 SP5 with Visual C++
5.0, and concerns to DirectX. This is the output of the build process.***
SDL_dx5audio.c
…\src\video\windx5\directx.h(77) : fatal error C1083: Cannot open
include file: ‘dinput.h’: No such file or directory
SDL_dx5events.c
D:\Tools\SDL-1.1\Src\Video\Windx5\directx.h(77) : fatal error C1083: Cannot
open include file: ‘dinput.h’: No such file or directory
SDL_dx5video.c
D:\Tools\SDL-1.1\Src\Video\Windx5\directx.h(77) : fatal error C1083: Cannot
open include file: ‘dinput.h’: No such file or directory
SDL_dx5yuv.c
D:\Tools\SDL-1.1\src\video\windx5\directx.h(77) : fatal error C1083: Cannot
open include file: ‘dinput.h’: No such file or directory


AFAIK, NT supports up to DX3.0a, and the VisualC.html says you need at least
DX5 SDK installed. My application MUST run in Windows NT (and I?ll probably
have to port it to Linux), and it is graphic intense. How can I use SDL? If
I install DX5 (is it possible?) and build the library, will it run in NT?
Are there any other solutions?

I saw many applications that run on NT, so there must be a way… or do they
use the GDI?

Thanks.


I?aki Idigoras Igartua <@Idigoras_Inaki>

Hi, I am new to SDL. I just downloaded and installed the CVS.

But I have a problem building SDL in my Windows NT4.0 SP5
with Visual C++
5.0, and concerns to DirectX. This is the output of the build process.


SDL_dx5audio.c
…\src\video\windx5\directx.h(77) : fatal error C1083: Cannot open

[snip]

You need to install the DirectX (at least 5) SDK to compile SDL. NT4
supports nothing more recent than DX3 at run time, but you can of course
compile with later versions.

The resulting executables will work on NT4, though only in windowed mode, I
think.


I?aki Idigoras Igartua

Dominique Biesmans> -----Original Message-----

From: Idigoras Inaki [mailto:IIdigoras at ikerlan.es]
Sent: dinsdag 5 december 2000 10:53
To: sdl at lokigames.com
Subject: [SDL] SDL and NT4.0: DirectX problems.

You need to install the DirectX (at least 5) SDK to compile SDL. NT4
supports nothing more recent than DX3 at run time, but you can of course
compile with later versions.

The resulting executables will work on NT4, though only in windowed mode, I
think.

No, fullscreen works as well, it just doesn’t take advantage of hardware
acceleration beyond what GDI provides.

You can either build on Linux (cross-compiling to Windows), or build on
Windows 95/98/2000 and the resulting binaries should run fine on NT (with
the exception of sound which will have 1/4 second latency). If that isn’t
true, let me know, since that’s a bug.

See ya!
-Sam Lantinga, Lead Programmer, Loki Entertainment Software

No, fullscreen works as well, it just doesn’t take advantage of hardware
acceleration beyond what GDI provides.
[Idigoras Inaki]
I need fullscreen, and better if it is hardware accelerated :slight_smile:
Is there any way of using SDL on Windows NT with DirectX 3.0?

You can either build on Linux (cross-compiling to Windows), or build on
Windows 95/98/2000 and the resulting binaries should run fine on NT (with
the exception of sound which will have 1/4 second latency). If that isn’t
true, let me know, since that’s a bug.
[Idigoras Inaki]
I do not understand these:
1. build on Linux & cross-compile to Windows
I know nothing about this; what do you mean by
cross-compile? that you can “translate” the Linux binaries to Win32? How?

2. build on Windows 95/98/2000 and binaries should run fine on NT
	I do not see any problem on building on NT, if you have the

tools (compiler and libraries) for the target, whatever it is (Windows NT in
this case).> See ya!

-Sam Lantinga, Lead Programmer, Loki Entertainment Software


I?aki Idigoras Igartua <@Idigoras_Inaki>

[snip]
I need fullscreen, and better if it is hardware accelerated :slight_smile:
Is there any way of using SDL on Windows NT with DirectX 3.0?
[snip]

Yes, I always wondered when I was still using NT (w2k now) why DX5 was
required for DirectX SDL. I don’t think any functionality > dx3 is being
used, or is it? I think that with some work SDL could be made to work with
dx3…> -----Original Message-----

From: Idigoras Inaki [mailto:IIdigoras at ikerlan.es]

Idigoras Inaki schrieb am 06 Dec 2000:

[Idigoras Inaki]
I do not understand these:

  1. build on Linux & cross-compile to Windows
    I know nothing about this; what do you mean by
    cross-compile? that you can “translate” the Linux binaries to Win32? How?

Ray Kelm wrote an excellent page on how to cross-compile for Windows
(i.e. let your linux compiler create a .exe that can be run on Win32).
It’s on

http://www.libsdl.org/Xmingw32/crossgcc/index.html

  • Andreas–
    Check out my 3D lightcycle game: http://www.gltron.org
    More than 90’000 Downloads of the latest version (0.59)

Yes, I always wondered when I was still using NT (w2k now) why DX5 was
required for DirectX SDL. I don’t think any functionality > dx3 is being
used, or is it? I think that with some work SDL could be made to work with
dx3…

or at least a dx3 driver…

Dominique Biesmans wrote:

Idigoras Inaki wrote:

I need fullscreen, and better if it is hardware
accelerated :slight_smile: Is there any way of using SDL on
Windows NT with DirectX 3.0?

Yes, I always wondered when I was still using NT
(w2k now) why DX5 was required for DirectX SDL.
I don’t think any functionality > dx3 is being
used, or is it? I think that with some work SDL
could be made to work with dx3…

IIRC, I think it has to do with not being able to tell DX3 where a surface
is to reside in memory. There were some other key issues as well. Sam?

  • Randi

Regimental Command
Generic Armored Combat System
http://regcom.sourceforge.net

IIRC, I think it has to do with not being able to tell DX3 where a surface
is to reside in memory. There were some other key issues as well. Sam?

That’s correct. For offscreen display memory surfaces, SDL allocates the
memory and then passes the memory to DirectX so that it can accelerate blits
with DMA. This requires DirectX 5 or newer. There are a couple of other
minor reasons, but that’s the big one.

See ya!
-Sam Lantinga, Lead Programmer, Loki Entertainment Software