Last updated 16 December 2001 by Alex Angas <wgd@internode.on.net>

ABOUT
-----

The Win32 version of freesci is now almost at the same level of
functionality as the UNIX version. The major bugs are currently:
 * fullscreen support causes gfx corruption
 * scaling > 3 causes gfx corruption
 * 'slow' sound problems (see below)


BUILDING
--------

You will need the following libraries and tools to build FreeSCI for Win32:
 * Visual C++ 6.0 with Service Pack 5 for Visual Studio installed.
 * The latest Win32 Platform SDK, both Core and DirectX components, from:
   http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
   (No need to download the 64-bit components.)
 * 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 into the src\win32 directory and load the freesci workspace (freesci.dsw) 
   into Visual C++ 6.

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.


CONFIG
------

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

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.


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.


SOUND PROBLEMS
--------------

There are currently timing problems when playing sound in games. This should
be fixed soon after the 0.3.3 release and will be available by CVS. These can
magically sort themselves out if you leave the game running for a while.

Until this is fixed, you can try changing the default sound server at the
command line by adding either the -Ssdl or -Swin32e switches. The SDL sound
server will probably give the same performance as the default (Win32 polled)
server. The Win32 event server will only give good performance on 1GHz+
machines but should have better timing on these fast machines.


CVS
---

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

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


How to set up WinCVS:

1. Download WinCVS from http://www.wincvs.org/ and install.
2. Run it, and under Admin / Preferences... enter this for CVSROOT:
   anonymous@square.a-eskwadraat.nl:/var/cvs/freesci
3. Go to Admin / Login... and leave the password blank.
4. Go to Create / Checkout module... and enter freesci as module name.
5. Once it's downloaded, go to Admin / Logout.


How to set up command-line CVS:

1. Download the command-line tool from http://www.cvshome.org/ or their FTP
   server ftp://ftp.cvshome.org/pub/win32/ .
2. Unzip it somewhere, go to the DOS prompt (or make a shortcut) and enter
   the command:
   cvs -d :pserver:anonymous@cs.alfred.edu:/home/cvs -z3 co freesci


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/
