ABOUT
-----

The Win32 version of FreeSCI is virtually at the same level of
functionality as the UNIX version. The major bugs are currently:
 * sound timing problems (see below)
 * SDL fullscreen support causes gfx corruption
 * SDL scaling > 3 causes gfx corruption


BUILDING
--------

You will need the following libraries and tools to build FreeSCI for Win32:
 * Visual C++ or Studio 6.0 with Service Pack 6 or Visual C++ or Studio 2003.
 * The latest Win32 Platform SDK, both Core 32-bit and DirectX components from:
   http://msdn.microsoft.com/platformsdk
 * The SDL library from http://www.libsdl.org/ . You need to download the
   development library for Win32 (e.g. SDL-devel-x.y.z-VC6.zip).

The project files assume the following directory structure:

  \src
    \freesci
      \bin
      \src
        \win32
    \SDL
      \include
      \lib


1. Go to the src\win32 directory. For Visual C++ or Studio 6, load freesci.dsw.
   For Visual C++ or Studio 2003, load freesci.sln.

2. Set the active project to "freesci - Win32 Release". Rebuild all.

3. The fsci.dll and freesci.exe binaries should be in freesci\bin. 
   NOTE: sdl.dll MUST be in your path or in the same directory as fsci.dll.

4. You should be good to go! Go buy a Sierra collector's pack at your favorite
   software store for $15-20 and copy the game directory on the CD to the
   FreeSCI bin directory, or use the -d command line option (see README).


IMPORTANT NOTE: With this release, you may discover what appears to be a bug
in Visual C++ 6.0. If you find that the linking of sciv produces LNK2001
errors the first time you build, just build again (don't rebuild or clean
first) and it should link OK.


CONFIG
------

The configuration options described below should be put into your config file,
located at %USERPROFILE%\.freesci\config .


GRAPHICS:

You'll probably be thinking that it doesn't look much prettier than the 
original SCI. Try putting these options into your config file:

pic0_dither_mode = dither256
pic0_dither_pattern = unscaled
pic_buffer_size = 2
view_filter = trilinear
pic_filter = trilinear
cursor_filter = trilinear
text_filter = trilinear
animation_delay = 5

NOTE: When scaling beyond 3 times (-x3 or -y3), cursor redraws no longer 
work properly. Also, fullscreen mode in SDL is currently not supported/working 
on Win32. Hopefully, both of these bugs will be fixed in an upcoming release.


SOUND:

To change the MIDI out device, add this line to your FreeSCI config file:

midiout.win32mci.device = x

where x is the number of the device you wish to use.


GRAPHICS:

The DirectX driver will run with the -gdirectx command line switch on versions
of DirectX 8.0a (for Win95) and higher. While the driver is only rendering 2D
images, significant performance gains may be achieved by using a 3D graphics
card with the driver.


To change the adapter, add this line to your FreeSCI config file:

gfx.directx.adapterid = x

where x is the number associated with the adapter you want (these are listed
on the console screen when you first start FreeSCI).


KNOWN PROBLEMS
--------------

SOUND:

There are currently timing problems when playing sound in games. While FreeSCI
(Glutton) will solve these, at the moment we are stuck with it.

To use the polled Win32 sound server, use the -Swin32p command line switch.
To use the threaded SDL sound server, use the -Ssdl command line switch.


SUBVERSION
----------

This is the best way to make sure you have the latest snapshot of FreeSCI. Info
on Subversion can be obtained from http://www.subversion.org .

Once you have a copy, we suggest copying it somewhere else to play with and
work on, and then use a diff command to submit diffs. :-)

Instructions on how to connect to our Subversion repository are available on
the Web site.


DEBUGGING
---------

Have a read of 'How Do I... Topics: Debugging' in the MSDN docs. Don't have
the MSDN library? Either use http://msdn.microsoft.com/ , or subscribe to the
MSDN Library (see the MS Web site), or buy a cheap copy of Visual Basic
Learning Edition which comes with the MSDN CDs. :-)

There are two configurations set up for FreeSCI debugging - 'Win32 - Debug'
and 'Win32 - Purify'. The former is to allow you to use the VC++ debugger with
all its features. The latter is for use with products such as Purify and
Quantify, and provides these programs with the information they need to best
run checks on FreeSCI.


GET INVOLVED
------------

We'd love people to help out. You don't have to have much (or any) experience
with C. Check out the Development page at the FreeSCI Web site for more
details.

Enjoy!

The FreeSCI Team.
http://freesci.linuxgames.com/
