Credits and Thanks
------------------

The following should be a more or less complete list of people
or organisations who have helped me in one way or another. If
you feel you should be mentioned here, please contact me. It is very
easy for me to forget someone and I really like to have a complete
list here.

Thanks to the people at GrimmWare for contributing a WEB place for
Crystal Space! Without them this project would not have gotten
such a start.

Thanks to Alessandro Russo for convincing his system manager
for creating a mailing list for Crystal Space. Thanks to Marco d'Itri
(the system manager) for creating this list for me.
Also thanks to those people for creating a ftp mirror of the
GrimmWare site at:
ftp://ftp.linux.it/pub/mirrors/CrystalSpace/

Crystal Space has it's first contributor! Many thanks to Murat
Demircioglu <demircio@boun.edu.tr> for providing the first steps
to porting Crystal Space to DOS. His code is still present in
this archive (although a bit modified).

David N. Arnold <derek_arnold@fuse.net> has enhanced the DOS
port made by Murat. He added C++ classes and VESA support.
David also wrote the Pentium assembler version of scan.cpp.

Nathaniel Saint Martin <nsaintmartin@mfoptima.fr> enhanced Arnold's
DOS port again so that it works with the Watcom C++ compiler.
He also suggested and implemented a considerable restructering
of the system-dependent stuff. Every system now has its own
directory (currently 'djgpp' for djgpp (with or without ALLEGRO),
'wcc' for Watcom C++, 'xlib' for X Window support, 'svgalib'
for SVGALIB, 'amiga' for Amiga support, 'maclib' for
Macintosh support, and 'win32' for Windows 32-bit support
(current implementation requires DirectDraw)).

Nathaniel Saint Martin <nsaintmartin@mfoptima.fr> made a very nice
console for input and output that should work on all ports.

Nathaniel Saint Martin <nsaintmartin@mfoptima.fr> was the first
to actually present me with an almost working Windows 95 version WITH
source!

Nathaniel Saint Martin <nsaintmartin@mfoptima.fr> donated the
first sound support code. His code is currently not integrated with
Crystal Space. You can find it in the 'contributions' directory.

Nathaniel Saint Martin <nsaintmartin@mfoptima.fr> created the
'config' utility which allows for easier editing of the 'cryst.cfg'
file. Currently only for Windows and DOS.

Nathaniel Saint Martin <nsaintmartin@mfoptima.fr> created a mirror
of all the developers archives and files at:
ftp://ftp.mfoptima.fr/mirrors/CrystalSpace

Nathaniel Saint Martin <nsaintmartin@mfoptima.fr> ported csar to
Windows giving it a nice userinterface.

Jyrki O Saarinen <jxsaarin@cc.helsinki.fi> made the original
Amiga port of Crystal Space. This old port can still be found at:
http://www.helsinki.fi/~jxsaarin/crystalspace/
but it is obsoleted by the new Amiga port in the current release.

Steve Israelson <pfhorte@rogers.wave.ca> made the Macintosh
port of Crystal Space.

Steve Israelson <pfhorte@rogers.wave.ca> suggested a few
enhancements to the inner draw_scanline functions to benifit
processors with many registers (like the PowerPC and 680x0 and
unlike the Pentium). He also removed the need for the loop
counter ('i') in the inner loop.

Steve Israelson made the first preliminary physics system.

Steve Israelson added an easy, uniform kind of dynamic lighting
useful for fluorescent lights and other flickering light
sources.

Steve Israelson made a few parser routines which should make
the parsing of the world file easier to understand :-)
I used his routines to convert all 'load' functions.

Bill Bohan <zorn@technologist.com> contributed the first free
textures for Crystal Space (more will probably follow). They are
absolutely free (he placed them in the public domain) so you may
take the from Crystal Space and use them for something else (for
example, you can decorate your room with them :-). The textures
are Wood1.gif, Wood2.gif, Wood3.gif, Wood4.gif, Wood5.gif,
and Wood6.gif. As you can imagine they are wooden surfaces :-)

Ang See Chai <lynx@tm.net.my> contributed the textures in
ang_text.tgz (in the textures archive). They are not directly
useable (they are not tileable and don't have the correct size)
but they are interesting textures anyway and I think some nice things
can be made from them.

Jaison Lee <jaison@apk.net> gave me a new version of police.fnt
which doesn't give an error on the Borland compiler.

Phil Harvey <filrv@syroxdev.co.uk> suggested a statistics counter
so that you can see the number of polygons considered and drawn
each frame.

Phil Harvey <filrv@syroxdev.co.uk> helped with Nathaniel to get
the Windows 32-bit port working.

Phil Harvey <filrv@syroxdev.co.uk> patched find_rgb_slow to make
it slightly faster.

Tor Andersson <d97ta@efd.lth.se> gave me the texture TStone22.gif
which is a nice tileable texture created with PovRay.

Tor Andersson <d97ta@efd.lth.se> donated code for reading several
file formats and a virtual machine. This code has not been integrated
with Crystal Space yet but you can find his code in the
'contributions' directory.

Tor Andersson <d97ta@efd.lth.se> gave me a 'dj_joy.c' file (in
the 'contributions' directory) which is an example on how to use
the joystick from within DOS with DJGPP.

Tor Andersson <d97ta@efd.lth.se> added JPG support to Crystal Space.

Tor Andersson <d97ta@efd.lth.se> added support for the mouse in DJGPP.

Alessandro Russo <alessandro.russo@ntt.it> gave me a patch for the
X version of Crystal Space which allows simultanious keypresses
and disables autorepeat. This makes movement much more smoother.
The patch still needs to be applied to the other ports as well but
they should currently work unchanged (but not with the simultanious
keypresses of course).

Alessandro Russo presented me with a patch to fix the autorepeat
problem (in X Windows).

Gary Clark <GaryC@jeld-wen.com> designed the basic framework of the
Graphics3D class and I helped him start implement this (it is still
unfinished currently).

Gary Clark also made an extension so that Crystal Space can now use
accurate RGB light sourcing. Since this slows down the texture cache
a bit I have made it optional (using 'cryst.cfg').

Added patch from Gary Clark to fix the problem with the X version
of CS that CS would not immediatelly start drawing but only after
an expose event was generated.

Gary Clark gave me a 'lin_joy.cpp' file (in the 'contributions'
directory) which is an example on how to use the joystick from within
Linux.

Karlis Freivalds <karlisf@cclu.lv> found and fixed a few stupid
bugs in wcc/watcom.cpp. I wonder how this version could work before
he fixed it :-)

Darius Snapkauskas <snapkus@iname.com> was busy with 3D sprites.
He contributed some unfinished stubs for his work. Unfortunately
he seemed to have stopped supporting it. His code has now been moved to
the attic directory. The current 3D sprites in Crystal Space are
developed by me (Jorrit Tyberghein).

Dan Ogles <subsoft@mindspring.com> gave me a patch for 'printf' so that
'printf' also works with the Windows port.

Dan Ogles <subsoft@mindspring.com> made the Direct3D port for Windows!

Dan Ogles <subsoft@mindspring.com> greatly enhanced the Windows port and
also added 16-bit support for Windows..

Robert Blum <r.blum@advertainment.com> patched Dan Ogles 'printf' patch
so that there is no more buffer overrun and also found a bug in
'gifload.cpp'. He also ran a memory debugger on Crystal Space and
found/fixed many bugs related to that.

Anis Ahmad <anis@cyberus.ca> updated the makefiles for Watcom C++ for
both Crystal Space and csar.

Anis Ahmad <anis@cyberus.ca> made the Crystal Space editor for Windows
95.

Andrew Zabolotny <bit@freya.etu.ru> ported Crystal Space to OS/2.

Andrew Zabolotny <bit@freya.etu.ru> changed Crystal Space to read/write
ZIP files instead of the CSAR archive format.

Andrew Zabolotny <bit@freya.etu.ru> enhanced Crystal Space to read PNG
files.

Andrew Zabolotny <bit@freya.etu.ru> did a MAJOR MAJOR rewrite of the
system dependent stuff and made a lot of support classes for that.

Andrew Zabolotny <bit@freya.etu.ru> wrote the 2D sprites.

Andrew Zabolotny <bit@freya.etu.ru> wrote CSWS, the Crystal Space
Windowing System.

Andrew Zabolotny <bit@freya.etu.ru> is busy writing MazeD, a Crystal
Space level editor.

Andrew Zabolotny <bit@freya.etu.ru> for his work on DrawPolygon and
DrawTriangle.

John Lilley <jlilley@empathy.com> manages the Crystal Space Texture
Archive at http://www.empathy.com.

Jon Heiner <jonh@MIT.EDU> sent me a few patches and a makefile for
the SGI/IRIX port.

Andrew Apted <ajapted@netspace.net.au> ported Crystal Space to the
GGI library (more information at: http://www.ggi-project.org/).

Paul Garceau <pgarceau@teleport.com> gave me a makefile for Windows NT
with GCC.

Ralf Eisele <eiselera@pcpool1.informatik.uni-ulm.de> updated the Amiga
port to 0.09.

Maurice Vosmeijer <Maurice.Vosmeijer@ehv.sc.philips.com> is also helping
maintaining the Amiga version.

Ivan Avramovic <iavramov@ibm.net> for cleaning up all the matrix/vector
stuff.

Slavik Levtchenko <Smirnov@bbs.math.spbu.ru> for creating the last
Watcom port with 16-bit display support.

Many thanks to various other people whose suggestions and ideas helped
shape Crystal Space.

