documentations
[btb/d2x.git] / README
1 ===========
2     D2X
3 ===========
4
5 http://icculus.org/d2x
6
7
8 Linux/Unix:
9 ===========
10
11 Required tools:
12 * GCC 2.95 or higher
13 * SDL 1.1.0 or higher
14 * NASM 0.98 (OPTIONAL but RECOMMENDED for x86)
15 * A thread safe X server.
16 * GNU make is probably required as well.
17
18 Build instructions:
19 Install all of the components above. Next, from the d2x directory:
20
21 ./configure
22         ./configure --help will show you the available options.
23         If you have a 3d graphics card, use --with-opengl
24
25 VPATH builds also work (i.e., you can put the source in one directory
26 and build in another.  Just execute the configure script from the
27 build directory like so:
28 mkdir d2x-build
29 cd d2x-build
30 ../d2x-source/configure
31
32 make
33 make install
34
35 on systems where `make' isn't GNU make, use `gmake' instead.
36
37 see installation.txt for info on where to put your datafiles, etc.
38
39 Known bugs/issues:
40
41 * Serial support doesn't work. (UDP and IPX networking does)
42 * Sound glitches (due to stuff I haven't implemented)
43 * The mouse support is at the same level as it was in d1x (as in, it
44   kind of works) (btb: works pretty good for me.)
45
46
47 Win32:
48 ======
49
50 Required tools:
51 * Cygwin
52   d2x doesn't use Cygwin, but it makes building it easier (to me).
53   You can probably build it with just MinGW, but I haven't tried yet.
54 * SDL 1.1.0 or higher
55 * NASM 0.98 (OPTIONAL but RECOMMENDED)
56
57 You will probably have to compile SDL from source.
58 Download the source code tarball from http://www.libsdl.org/
59
60 tar zxf SDL-x.x.x.tar.gz
61 cd SDL-x.x.x
62 ./configure
63 make
64 make install
65
66 Note that SDL.dll needs to be in your executable PATH, since that is
67 where windows looks for dlls.
68 I recommend copying or moving it to /usr/local/bin:
69 cp /usr/local/lib/SDL.dll /usr/local/bin
70
71 If you need to run autogen.sh (e.g. to rebuild the configure scripts,
72 or to build from cvs) sdl.m4 will have to be somewhere where aclocal
73 can find it.
74 You can fix this by setting the ACLOCAL_FLAGS variable like this:
75 export ACLOCAL_FLAGS=/usr/local/share/aclocal
76
77 You should also install NASM, for compiling assembler files.  Download
78 it from http://www.web-sites.co.uk/nasm/where.html and place nasmw.exe
79 somewhere in your path (e.g. /usr/local/bin):
80 unzip nasm-0.98-win32.zip
81 mv nasmw.exe /usr/local/bin
82
83 Now you can configure d2x as normal.  i.e.
84 ./configure
85 or
86 ./configure --with-opengl
87
88 automake/autoconf in cygwin has a problem with not always putting the
89 .exe extentions where they need to be.  So you may have to run make
90 twice, like so:
91 make && make d2x-sdl.exe
92 or
93 make && make d2x-gl.exe
94
95 Then just copy your executable and SDL.dll into the descent2 directory.
96
97
98 MS-DOS:
99 =======
100
101 Dos support isn't a high priority right now, so things may be a little
102 messed up.
103
104 Required tools:
105 * DJGPP v2
106 The following DJGPP packages are ALL REQUIRED (newer versions are ok)!
107 v2/
108 djdev203.zip
109 v2gnu/
110 bnu281b.zip gcc2952b.zip mak3781b.zip bsh1147b.zip sed302b.zip
111 m4-14b.zip acnf213b.zip gwk304b.zip txt20b.zip grep22b.zip dif272b.zip
112 So many packages are needed to support the autoconf build system that d2x
113 uses. (Sorry! =)
114 * NASM v0.98 or better is REQUIRED
115
116
117 Build instructions:
118 Install all of the djgpp packages above. Make sure that DJGPP is properly
119 configure (see the DJGPP docs for more information).
120 Make a copy of bash.exe in your djgpp bin/ directory. Call it "sh.exe". This
121 step is VERY IMPORTANT (otherwise all the scripts will fail).
122
123 Now, run the following from the d2x directory:
124 djgpp.bat
125 make
126
127 Hopefully things will work out and the package will build correctly for you.
128
129 Known bugs/issues:
130 * Serial and network support missing.
131 * Sound support missing.
132
133
134
135 Reporting bugs/feedback:
136 ========================
137
138 There are two ways to report bugs and give feedback:
139 1) Get on the descent-source mailing list by sending an email to
140 majordomo@warpcore.org with the body as: "subscribe descent-source
141 <your email address>". Discussions about the source code in general
142 are available here, and is the main list that d2x and d1x, a similar
143 project for descent 1 is discussed on. Patches and questions can be
144 posted there, as well.
145
146 2) Send feedback directly to me, bradleyb@u.washington.edu. I'll try
147 to get back to you ASAP, depending on real-life concerns =)
148
149 /* THE OLD README FOLLOWS */
150 Legal Stuff:
151
152 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
153 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
154 END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
155 ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
156 IN USING, DISPLAYING,  AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
157 SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
158 FREE PURPOSES.  IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
159 CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES.  THE END-USER UNDERSTANDS
160 AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.  
161 COPYRIGHT 1993-1999 PARALLAX SOFTWARE CORPORATION.  ALL RIGHTS RESERVED.
162
163 We make no warranties as to the usability or correctness of this code.
164
165 ============================================
166 Message from Matt Toschlog & Mike Kulas:
167
168 Descent fans:
169
170 Here, finally, is the source for Descent II.  We've been so busy with 
171 Descent 3, Mercenary, FreeSpace, FreeSpace 2, and several other 
172 projects that we haven't given much thought to this old code.  But we 
173 know that many of you are eager to get it, so here you go.
174
175 We were amazed and impressed at the cool things people did with 
176 the Descent source we released a few years ago.  It touches us 
177 deeply how devoted some people are to the Descent series, and we 
178 look forward to seeing what people can do with this Descent II 
179 source.
180
181 Matt Toschlog               Mike Kulas
182 Outrage Entertainment       Volition, Inc.
183
184 ============================================
185
186 About the Source Code:
187
188 Included is almost all the source code to Descent 2, ver. 1.2.  We removed
189 all code to which we did not own the copyright.  This mainly involved low-
190 level sound and modem code and the movie code.    
191
192 The Descent Network has agreed to provide a list of mirror locations where 
193 this code can be downloaded. The location is:
194
195 http://www.descent2.com/ddn/sources/descent2
196
197 The following tools were used in the development of Descent:
198 Watcom C/C++, version 9.5
199 Microsoft Macro Assembler, version 6.1x
200 Opus Make, version 6.01
201
202 Have fun with the code!
203 Parallax Software Corporation
204 12/14/1999
205
206
207 As Packaged the code currently will not compile. Some code had to be removed
208 to release it, therefore you will get some missing file errors when building.
209
210 Much of this code is very close to the Descent 1 source code. Many people have
211 put effort into porting that code, so if you are interested in porting D2, you
212 should be able to take advantage of some of that work.
213
214 A few good web sites to check out are:
215
216 The D1X Project:
217 http://d1x.warpcore.org
218
219 The Descent Network:
220 http://www.descent-network.com
221