@iftex
@finalout
@end iftex
-@comment $Id: user.texinfo,v 1.48 1996/04/08 21:18:53 cph Exp $
+@comment $Id: user.texinfo,v 1.49 1996/04/10 20:03:38 adams Exp $
@comment %**start of header (This is for running Texinfo on a region.)
@setfilename user.info
@settitle MIT Scheme User's Manual
@node Windows Installation, , OS/2 Installation, Installation
@section Windows Installation
-This section describes how to install MIT Scheme on DOS, Windows 3.1, and
-Windows NT. We would prefer that the Windows version be used,
-rather than the DOS version, because we intend to maintain the DOS
-version only so long as it is convenient. For the most part the
-installation on any of these platforms uses the same files, and the
-procedure is similar. It is possible to install MIT Scheme so that it
-will run under all three operating systems on one computer, but this
-does require some care with the configuration of the system.
-
-Note that we have only tested the DOS version on Microsoft DOS 5.0.
+This section describes how to install MIT Scheme on Windows 3.1, Windows
+95 and Windows NT. Note that we have tested MIT Scheme only on Windows
+NT 3.10 and Windows 3.1 and Windows 95. It should run under Windows NT
+3.51. It was compiled using the Microsoft's MSTOOLS compiler that comes
+with Windows NT 3.10.
@menu
* System Requirements::
* Windows Installation Procedure::
@end menu
-@node System Requirements, Manifest, Windows Installation, Windows Installation
-@subsection System Requirements
-
-MIT Scheme requires at least a 386SX with 8Mb RAM.
-The bare minimum
-disk space required is 5.5Mb, which gives you a command-line interface
-for Scheme. We strongly recommend a more advanced environment. To
-build the Edwin editor band requires an additional 4.3Mb. The whole
-installation without source code occupies 36Mb of disk.
-
-@node Manifest, Windows Installation Procedure, System Requirements, Windows Installation
-@subsection Manifest
-
-The installation is split into several files according to functional
-units and the size constraints of a 1.4M high density 3.5" floppy disk.
-The following files are distributed:
-
-@example
-BIN.ZIP @r{Scheme binaries for Windows 3.1/Windows NT}
-DOSBIN.ZIP @r{Scheme binaries for DOS}
-LIB.ZIP @r{Smaller files from Scheme library}
-RUNTIME.ZIP @r{@file{runtime.com} band}
-RUNNOFLO.ZIP @r{@file{runtime.com} band for DOS machines with no FP hardware}
-EDDEL.ZIP @r{@file{eddel.com}: a kit to build @file{edwin.com} band}
-COMPDEL.ZIP @r{@file{compdel.com}: a kit to build @file{compiler.com} band}
-
-HELP.ZIP @r{WinHelp User and Reference Manuals}
-BCIRUN1.ZIP @r{Debugging information for runtime system}
-BCIRUN2.ZIP @r{ " " " " "}
-BCIRUN3.ZIP @r{ " " " " "}
-BCIED1.ZIP @r{Debugging information for Edwin}
-BCIED2.ZIP @r{ " " " "}
-BCIED3.ZIP @r{ " " " "}
-BCINOFLO.ZIP @r{Extra debugging information for machines with no FP hardware}
-
-SRCRUN.ZIP @r{Source code for the runtime system}
-SRCUC.ZIP @r{Source code for the microcode (C)}
-SRCED.ZIP @r{Source code for Edwin}
-SRCCOMP.ZIP @r{Source code for i386 compiler}
-
-WIN32S.ZIP @r{Win32s installation floppy from Microsoft}
-INSTALL.TXT @r{These instructions}
-UNZIP.EXE @r{Program to unpack the @file{.zip} files}
-@end example
-
-Minimal installation on Windows NT requires: @file{BIN.ZIP},
-@file{LIB.ZIP} and @file{RUNTIME.ZIP}.
+@node Prerequisites
+@subsection Prerequisites
-For the Edwin editor and the native code compiler add @file{EDDEL.ZIP}
-and @file{COMPDEL.ZIP} repectively.
+The Scheme files use about 20 megabytes of disk space when installed.
+An additional 5 megabytes of disk space is required during
+installation. After installation, you can reduce the amount of disk
+space required by deleting some files (see "Image Files" below).
-Any configuration for Windows 3.1 is the same as for Windows NT except
-that Win32S also needs to be installed.
+MIT Scheme requires a fair amount of RAM to run well. We haven't
+tried running this on any machine with less than 32 megabytes, so we
+don't have any hard data on what the smallest practical amount of RAM
+is. However, for running Scheme under Windows 3.1, 8 megabytes is
+probably the least you should consider, and 12 megabytes is probably
+comfortable. If you want to use the Scheme compiler or the Edwin text
+editor, you should have at least 16 megabytes of RAM.
-For DOS the minimal installation comprises @file{DOSBIN.ZIP},
-@file{LIB.ZIP} and one of @file{RUNTIME.ZIP} or @file{RUNNOFLO.ZIP}.
+MIT Scheme is a 32 bit program. To run it on Windows 3.1 you need to
+install the Win32S compatibility package from Microsoft. You might
+already have WIN32S on your machine if another 32 bit software package
+installed it. WIN32S is provided in the self-extracting ZIP file
+@file{PW1118.EXE}. Create a temporary directory. Copy
+@file{PW1118.EXE} into the directory, change into the directory and run
+@code{PW1118}. This will create three files. Follow the instructions
+in @file{README.TXT}.
-@node Windows Installation Procedure, , Manifest, Windows Installation
+@node Windows Installation Procedure
@subsection Windows Installation Procedure
-These installation instructions describe how to install MIT Scheme on
-one or more of DOS, Windows 3.1, and Windows NT. If you are
-installing for DOS and another operating system, you should do the
-bulk of the installation using the windowing environment.
-
-In each of the following steps the amount of disk space consumed is
-indicated in square brackets. These sizes do not include the
-@file{.zip} files which are required only during installation.
-
-@enumerate
-@item
-MIT Scheme under Windows 3.1 requires the Win32s system (version 1.1) to
-be installed. If you have not previously installed the Win32s system
-then you should create a floppy disk containing the contents of the
-@file{win32s.zip} file, e.g:
+Create a directory where you would like Scheme to be installed. We
+suggest @file{C:\SCHEME}.
+From now on we will call this directory the @emph{Scheme root directory}.
+Change to this directory and unpack @file{BIN.ZIP}:
@example
-@group
-a:
-unzip @var{wherever}\win32s.zip
-@end group
+ unzip bin.zip
@end example
-Run the @file{setup} command on the floppy disk.
+You will have the following files and directories:
-@noindent
-If you are not sure whether you have Win32s installed, or what version
-you have installed, try to install it anyway. If you have version 1.0
-then the Win32s installation disk will upgrade your Win32s system to
-version 1.1.
-
-@example
-a:setup
-@end example
-
-@item
-Decide on where to install MIT Scheme.
-We suggest the default: @file{C:\SCHEME}.
-Create the root directory which we from now on refer to as @var{scheme}.
-If for example, you choose the default:
-
-@example
-@group
-mkdir c:\scheme
-cd \scheme
-@end group
-@end example
-
-@noindent
-@var{scheme} is the string `@code{C:\scheme}'.
-
-@item
-In the @var{scheme} directory unzip the following essential files:
-@file{bin.zip}, @file{lib.zip} and@* @file{runtime.zip} [5.5Mb].
-
-@example
-@group
-unzip @var{wherever}\bin.zip
-unzip @var{wherever}\lib.zip
-unzip @var{wherever}\runtime.zip
-@end group
-@end example
+@table @file
+@item readme
+These installation instructions.
-This will create the directory structures @file{@var{scheme}\bin},
-@file{@var{scheme}\lib} and @file{@var{scheme}\etc}, and unpack the
-essential files.
-(@var{Wherever} stands for the place that you have put the @file{.zip}
-files, which might be another directory or a floppy disk.)
+@item bin\
+The executable programs, @file{scheme.exe} and @file{bchschem.exe} and
+libraries @file{scheme16.dll}, @file{scheme31.dll} and
+@file{scheme32.dll}.
-@noindent
-If you have a computer without floating-point hardware (e.g.@: a 386
-machine or a 486SX) and you wish to run the DOS version then you must
-install the runtime with special floating-point support instead of
-@file{runtime.zip}:
+@item doc\
+Documentation files.
+Three files, the MIT Scheme Users' Manual, the MIT Scheme Reference
+Manual, and the Revised$^4$ Report on the Algorithmic Language Scheme,
+are provided in Windows Help (@file{.hlp} format).
-@example
-unzip @var{wherever}\runnoflo.zip
-@end example
+@item etc\
+Installation command files.
+@item lib\
+A directory containing the data files needed by Scheme when it is running.
-@item
-To install the DOS binaries, unzip the @file{dosbin.zip} file.
+@end table
-@example
-unzip @var{wherever}\dosbin.zip
-@end example
+Perform the following steps to install Scheme:
-This creates a @file{@var{scheme}\dos-bin} directory containing the DOS
-versions of the @file{.exe} files. These files are different from the
-Windows versions, so they are placed in a different directory to allow
-both versions to co-exist on your computer. It is only the @file{.exe}
-files that differ between DOS and Windows. The other parts of the MIT
-Scheme system are shared. The DOS version will run under Windows 3.1
-but not under NT. Either running on DOS or Windows 3.1, the DOS version
-has @emph{no} graphics support
-@item
-If you are installing for Windows 3.1 only, do @emph{one} of the
-following:
+@enumerate
-@itemize @bullet
@item
-Put the following line in the @file{autoexec.bat} file to ensure that
-the @file{@var{scheme}\bin\win31} directory is on the path:
+@emph{Building bands.}
+Make sure that you are in the Scheme root directory (you should be there
+already). Run the following command files
@example
-path %PATH%;@var{scheme}\bin\win31
+@group
+ ETC\MK_COMP.BAT
+ ETC\MK_EDWIN.BAT
+ ETC\MK_ALL.BAT
+@end group
@end example
-@noindent
-This command must be in a @file{.bat} file to work
+This will create the image files @file{lib\compiler.com},
+@file{lib\edwin.com}, and @file{lib\all.com}. You may now delete the
+files @file{lib\compdel.com} and @file{lib\eddel.com}.
-@item
-Copy the files from @file{@var{scheme}\bin\win31} into
-@file{@var{scheme}\bin}.
-@end itemize
-
-@item
-If you are installing for Windows NT only, do @emph{one} of the
-following:
+If you are running Windows 3.1 you cannot run Scheme from the
+command-line. You need to make a folder containing icons to run Scheme,
+as described below, and then run the following icons in turn: "Build
+COMPILER.COM band", "Build EDWIN.COM band" and "Build ALL.COM band"
-@itemize @bullet
@item
-As system
-administrator add @file{@var{scheme}\bin\nt} to the @code{PATH} in the
-system environment (using the Registry Editor, @code{regedt32}
-@item
-As an individual place @code{PATH=}@var{scheme}@code{\bin\nt} in your
-environment (use the control panel's system option
+You may move the executable files @file{scheme.exe} and
+@file{bchschem.exe} and the three @file{scheme<nn>.dll} files from
+@file{BIN\} to any directory that appears in your PATH, though we
+suggest that you leave them put.
-@item
-Copy the files from @file{@var{scheme}\bin\nt} into
-@file{@var{scheme}\bin}.
-@end itemize
+Depending on your needs, you may want to keep only one of
+@file{scheme.exe} or @file{bchschem.exe} files; each of these files is
+about 550 kilobytes and chances are you'll only be using one of them.
+If you keep only @file{bchschem.exe} we recommend you rename it to
+@file{scheme.exe}. Of course, you can also keep both programs around if
+you think you might use them both.
-@item
-If you are installing for both Windows 3.1 and Windows NT then you must
-use use environment variables and the @code{PATH} rather than copying
-files, i.e.@: you must arrange for Windows 3.1 to be run with
-@file{@var{scheme}\bin\win31} on the path and for Windows NT to be run
-with @file{@var{scheme}\bin\nt} on the path.
-This can be done by putting
+The only difference between these two programs is how they handle arbage
+collection. @file{scheme.exe} allocates two memory heaps, and copies
+objects between the heaps to preserve them. This means that most of the
+time that other heap is occupying valuable memory but doesn't hold any
+interesting data. @file{bchschem.exe} allocates only one memory heap,
+creates a disk file during garbage collection, copies objects into the
+file, then copies them back into memory.
-@example
-path %PATH%;@var{scheme}\bin\win31
-@end example
-
-@noindent
-in the @file{autoexec.bat} file and adding @file{@var{scheme}\bin\nt} to
-the Windows NT system environment path.
-
-@item
-If you are installing for DOS there is no need to add things to the
-@code{PATH}.
-
-@item
-If you did not choose the default installation directory, make sure that
-the environment variable @code{MITSCHEME_LIBRARY_PATH} is defined:
+These programs provide you with some important performance trade-offs.
+If you have plenty of memory and want the best performance, use
+@file{scheme.exe}. If you don't have enough memory, or if you want to
+use less memory and will accept slower performance, use
+@file{bchschem.exe}. One way to tell that you don't have enough memory
+is to run @file{scheme.exe} for a while and see if your machine is
+paging during garbage collection.
-@example
-set MITSCHEME_LIBRARY_PATH=@var{scheme}\lib
-@end example
+You might consider trying to use @file{scheme.exe} and letting the
+operating system's paging handle the lack of RAM. But usually you will
+find that using @file{bchschem.exe} without paging is much faster than
+using @file{scheme.exe} with paging. Of course, if you are using
+@file{bchschem.exe} and you're still paging, there's nothing you can do
+to win.
@item
-Now test the installation so far.
-Under either Windows system,
-you should be able to get a Scheme system running in its terminal
-window by running the following from the Program Manager or the File
-Manager
-
-@example
-@var{scheme}\bin\scheme
-@end example
+You may move the @file{lib\} directory anywhere you like. You may rename
+it to anything you like. (Here at MIT, we use @file{c:\scheme\lib}.)
+After you have chosen where it will be located, set the
+@samp{MITSCHEME_LIBRARY_PATH} environment variable to be that location.
-From DOS you should be able to get Scheme running by typing the
-following at the DOS prompt:
+For example, if you decide to store the directory as @file{d:\schdata},
+you would add the following to @file{autoexec.bat}:
@example
-@var{scheme}\dos-bin\scheme
+ SET MITSCHEME_LIBRARY_PATH=D:\SCHDATA
@end example
@noindent
-If there are any problems at this stage, review the installation so far.
-Remember that you might have to restart your machine to get the effect
-of any changes that you made in @file{autoexec.bat} or the NT registry.
-
-@item
-Windows versions only.
-Now you should create a Program Manager group for MIT Scheme.
-This can be done by running a Scheme program from the Program Manager
-using the @code{File|Run} option:
+You can override the setting of this environment variable with the
+@samp{-library} command-line option to Scheme, for example:
@example
-@var{scheme}\bin\scheme -load @var{scheme}\etc\pmgrp
+ scheme -library d:\schdata
@end example
@noindent
-This program creates a program group called `MIT Scheme' which contains
-
-@itemize @bullet
-@item
-Icons for running scheme in several configurations
-
-@item
-Windows Help versions of the Scheme Reference Manual and the MIT Scheme
-User's Manual.
+If you always supply a @samp{-library} option, it is not necessary to
+have the environment variable defined. For example, instead of editing
+@file{autoexec.bat}, you might create a @file{.bat} file or a shortcut
+(icon) to invoke Scheme and pass it the @samp{-library} option
+automatically.
@item
-`Mincer' icons for building the rest of the system
-@end itemize
-
-@noindent
-At this point only the Scheme icon called `Runtime' will execute.
-Test it. The other Scheme icons (`Edwin', `Compiler' and `MIT Scheme'
-shield) should report that they cannot find their bands.
+@emph{Optional:} Move the DOC directory anywhere you like, or delete it
+if you do not want to keep the documentation.
@item
-Windows versions only.
-To install the help files, unpack @file{help.zip}:
-
-@example
-unzip @var{wherever}\help.zip
-@end example
-
-@noindent
-This installs two windows help files, @file{user.hlp} and
-@file{scheme.hlp}, in @file{@var{scheme}\bin}.
-
-@item
-To install the Edwin editor you need to build the @file{edwin.com} band.
-First unpack the delta file @file{eddel.com} [1.6Mb]:
-
-@example
-@group
-cd @var{scheme}
-unzip @var{wherever}\eddel.zip
-@end group
-@end example
+emph{Optional:} Creating a folder containing icons to invoke Scheme.
+Run Scheme and load the file @file{etc\pmgrp.scm}.
+On Windows 95 and windows NT you can run scheme from the command line.
-To build @file{edwin.com} start the `build EDWIN.COM band' icon, or run
-the following command:
+On windows 3.1 you have to use the @samp{File | Run..} menu option of the
+Program Manager or File Manager and enter the full paths:
@example
-@var{scheme}\bin\scheme -large -load @var{scheme}\etc\build -eval (edwin.com)
+ c:\scheme\bin\scheme -library c:\scheme\lib -load c:\scheme\etc\pmgrp.scm
@end example
@noindent
-This will load in @file{eddel.com} and create the new band [4.3Mb].
-After a successful build the program will exit.
-The @file{edwin.com} band can be used by both the DOS and Windows
-versions, so you only need to do this step once, even if you are
-installing for more than one of DOS, Windows 3.1, and Windows NT.
-
-If you are installing only for DOS you will have to build
-@file{edwin.com} from the command line. Be sure to run the DOS
-@file{scheme.exe} rather than the Windows version:
-@example
-@var{scheme}\dos-bin\scheme -large -load @var{scheme}\etc\build -eval (edwin.com)
-@end example
+This will create a folder called @samp{MIT Scheme 7.4.2} containing
+icons for running Scheme and for reading the help files. The icons
+called @samp{Scheme}, @samp{Edwin}, @samp{Liar}, and @samp{All},
+correspond to running SCheme with the image files @file{runtime.com},
+@file{edwin.com}, @file{compiler.com}, and @file{all.com}. If you
+decide to delete any of the image files, you can delete the
+corresponding icons as well.
@item
-To install the compiler you need to build the @file{compiler.com} band.
-First unpack the @file{compdel.com} delta file [2.5Mb]:
-
-@example
-@group
-cd @var{scheme}
-unzip @var{wherever}\compdel.zip
-@end group
-@end example
-
-To build @file{compiler.com} start the `build COMPILER.COM band' icon,
-or run the following command:
+@emph{Optional} Consider setting some of other environment variables
+described below.
-@example
-@var{scheme}\bin\scheme -large -load @var{scheme}\etc\build -eval (compiler.com)
-@end example
+@end enumerate
-@noindent
-This will load in @file{compdel.com} and create the new
-@file{compiler.com} band [4.8Mb]. After a successful build the program
-will exit.
-As for Edwin, this step needs to be done only once.
+@item
-If you choose to build this band using the DOS version be sure to
-run the DOS @file{scheme.exe} rather than the Windows version:
+The two files @file{w32rtbci.zip} and @file{w32edbci.zip} contain
+debugging information for the Scheme runtime and Edwin respectively.
+The total space required for all of the debugging information is about 8MB.
+The runtime debugging information is the more useful as it allows the
+debugger to give you source code level information on all of the
+standard procedures like @samp{map} and @samp{number->string}.
-@example
-@var{scheme}\dos-bin\scheme -large -load @var{scheme}\etc\build -eval (compiler.com)
-@end example
-@item
-If you want both Edwin and the compiler in one band you should build the
-@file{all.com} band. First unpack the delta files [4.1Mb unless already
-unpacked in previous steps]:
+Debugging information can be installed by uncompressing the
+@file{w32rtbci.zip} and @file{w32edbci.zip} files in the @file{SRC}
+subdirectory of the library directory.
@example
@group
-cd @var{scheme}
-unzip @var{wherever}\eddel.zip
-unzip @var{wherever}\compdel.zip
+cd c:\scheme\lib
+mkdir SRC
+cd SRC
+unzip w32rtbci
+unzip w32rtbci
@end group
@end example
-
-To build @file{all.com} start the `build ALL.COM band' icon, or run the
-following command:
-
-@example
-@var{scheme}\bin\scheme -large -load @var{scheme}\etc\build -eval (all.com)
-@end example
-
-@noindent
-This will load in both @file{eddel.com} and @file{compdel.com} into the
-runtime band and create the new band [6.7Mb]. After a successful build
-the program will exit.
-
-If you choose to build this band under DOS, be sure to run the DOS
-@file{scheme.exe} rather than the Windows version:
-
-@example
-@var{scheme}\dos-bin\scheme -large -load @var{scheme}\etc\build -eval (all.com)
-@end example
-
-@item
-Any combination of @file{edwin.com}, @file{compiler.com} and
-@file{all.com} may be used. They may be built in any order: it is not
-necessary to build either of @file{edwin.com} and @file{compiler.com}
-before building and using @file{all.com}.
-The bands are shared by all of the supported operating systems so you
-only have to build the bands once, even if you want to use them from,
-say, both DOS and Windows 3.1.
-
-After building the bands you may tidy the MIT Scheme group by removing
-the mincer icons and recover disk space by deleting the delta files
-[4.1Mb] and the @file{runtime.com} band [2.3Mb] if you do not need it.
-
-To create icons that use @code{bchscheme} instead of @code{scheme} copy
-the icons and edit the command lines to change `scheme' to `bchschem'
-(that is right: no tailing `e').
-
-@item
-Debugging information can be installed by uncompressing the
-@file{bci*.zip} files in the Scheme root directory @var{scheme}. The
-total space required for all of the debugging information is 7.5Mb.
-The most useful is the runtime debugging info which is in
-@file{bcirun1.zip} through @file{bcirun3.zip} [3.6Mb installed].
-
-If you have installed the DOS version for machines without hardware
-floating-point support then @file{bcinoflo.zip} should be uncompressed
-also. This must be done @emph{after} the @file{bcirun*.zip} files.
-
-Debugging information files can be installed in the Scheme root
-directory or in another directory. If another directory is chosen then
-set the @code{MITSCHEME_INF_DIRECTORY} environment variable to this
-directory. @file{bcied1.zip} through @file{bcied3.zip} [3.8Mb
-installed] hold the debugging information files for Edwin.
-@end enumerate
+Debugging information files can be installed in another place, in schch
+case the the @code{MITSCHEME_INF_DIRECTORY} environment variable shpould
+be set in @file{autoexec.bat}.
@node Running Scheme, Using Scheme, Installation, Top
@chapter Running Scheme