aboutsummaryrefslogtreecommitdiff
path: root/README
blob: 79e3af7e4abdcea8d8652c571f3ee1177005543d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
ScummVM README
Last updated:    2003-08-02
Release version: 0.5.3-cvs
------------------------------------------------------------------------

For more information, compatibility lists, details on donating, the latest
release, progress reports and more, please visit the ScummVM home page
at: http://www.scummvm.org/


About:
------ 
ScummVM is a collection of interpreters, capable of emulating several
adventure game engines. ScummVM mainly supports engines created using 
SCUMM (Script Creation Utility for Maniac Mansion), used in various
LucasArts games such as Monkey Island, Day of the Tentacle, and others.
ScummVM also contains interpreters for several non-SCUMM games, currently
these are Simon the Sorcerer (1 & 2), and Beneath a Steel Sky.

At this time ScummVM should be considered beta software, and is still
under heavy development. Be aware that whilst we attempt to make sure
that many games can be completed with few major bugs, crashes can happen. 

If you enjoy ScummVM feel free to donate using the PayPal button on the
ScummVM homepage. This will help us buy utilities needed to develop ScummVM
easier and quicker. If you cannot donate, help and contribute a patch!


Contacting:
-----------
The easiest way to contact the ScummVM team is by submitting bug reports or
commenting in our forums. You can also join and e-mail the scummvm-devel
mailing list, or chat with us on irc (#scummvm, irc.freenode.net)


Supported Games:
----------------
At the moment the following games have been reported to work, and should
be playable to the end. However, this list generally applies to PC versions.
Mac versions should work after being "ReSCUMM'ed" (see later in this document),
and Amiga versions of games may work with the 'Amiga' flag turned on - but
this is not always true.

SCUMM Games:
     Maniac Mansion (Enhanced Version)               [Game: maniac]
     Zak McKracken (Enhanced Version)                [Game: zak]
     Indiana Jones & the Last Crusade (EGA)          [Game: indy3ega]
     Indiana Jones & the Last Crusade (256)          [Game: indy3]
     Indiana Jones & the Last Crusade (256 FM Towns) [Game: indy3towns]
     Loom (16 color floppy version)                  [Game: loom]
     Loom (256 color CD version)                     [Game: loomcd]
     Zak McKracken (256 FM Towns)                    [Game: zak256]
     Monkey Island 1 (EGA version)                   [Game: monkeyega]
     Monkey Island 1 (VGA version)                   [Game: monkeyvga]
     Monkey Island 1 (CD version)                    [Game: monkey/monkey1]
     Monkey Island 2                                 [Game: monkey2]
     Indiana Jones and the Fate of Atlantis          [Game: atlantis]
     Day of the Tentacle                             [Game: tentacle]
     Sam & Max                                       [Game: samnmax]
     The Dig                                         [Game: dig]
     Curse of Monkey Island                          [Game: comi]

Other Games:
     Beneath a Steel Sky                             [Game: sky]
     Simon the Sorcerer 1                            [Game: simon1dos/
                                                       simon1talkie/simon1win]
     Simon the Sorcerer 2                            [Game: simon2dos/simon2talkie
                                                          /simon2win/simon2mac]

The following games should be finishable, but have some criticial problems that
prevent them from being fully supported at this time. Please do not file bug
reports about them.
        
     Full Throttle                                 [Game: ft]
     Zak McKracken (256 color, Towns Kanji ver)    [Game: zak256]

The following games should load, but are not yet fully playable. Play these at
your own risk, and please do not file bug reports about them. If you want
the latest updates on game compatibility, visit our web site and view the
compatibility chart.

     Maniac Mansion (Original)                     [Game: maniac]
     Zak McKracken (Original)                      [Game: zak]
     Putt-Putt Goes To The Moon                    [Game: puttmoon]
     Putt-Putt's Fun Pack                          [Game: funpack]
     Fatty Bear's Birthday Surprise                [Game: fbear]
     Fatty Bear's Fun Pack                         [Game: fbpack]

The following games are SCUMM engine, but NOT supported by ScummVM (yet).

     Putt-Putt Joins the Parade
     Most other Humongous Entertainment titles

Please be aware that the engine may contain bugs and unimplemented features
that sometimes make it impossible to finish the game. Save often, and please
file a bug report (instructions on submitting bug reports are below) if you
encounter such a bug in a 'supported' game.


Supported Platforms:
-------------------
ScummVM has been ported to run on many platforms and operating systems.
Links to these ports can be found either on the ScummVM web page or by a
Google search. Many thanks to the effort of porters. If you have a port of
ScummVM and wish to commit it into the main CVS, feel free to contact us!

        Windows         - SDL
        Windows CE      - SDL           (iPaq and other handheld devices)
        Linux           - X11 & OSS audio (includes iPaqs running Linux)
        Mac OS X        - SDL
        AmigaOS         - SDL/AGA
        MorphOS         - custom backend
        BeOS            - SDL
        Acorn (RiscOS)  - ???
        Dreamcast       - custom backend 
        GP32            - custom backend
        PalmOS          - custom backend
        UNIX            - SDL           (Linux, Solaris, IRIX, *BSD)

Neither the Dreamcast nor Palm ports support Curse of Monkey Island or
either Simon the Sorcerer game. The Dig is also currently unsupported
on the Dreamcast port, and will only work on some Palm devices (those
with a large dynamic heap). The PalmOS port also lacks support for
Beneath a Steel Sky.

Copy Protection:
----------------
The ScummVM team does not condone piracy. However, there are cases when
LucasArts themselves bundled cracked interpreters with their own games --
the data files still contain the copy protection scripts, but the interpreter
bypasses them. There is no way for us to tell the difference between legitimate
and pirated data files, so for the games where we know the original interpreter
may have been cracked ScummVM will always have to bypass the copy protection.

At the time of writing, that includes the following games:

Indiana Jones & the Last Crusade (EGA)
Indiana Jones & the Last Crusade (256 color FM Towns version)
Loom (16 color floppy version)
Maniac Mansion
Monkey Island 1 (EGA version)
Monkey Island 1 (VGA version)
Monkey Island 2
Zak McKracken (256 color FM Towns version)

Beneath a Steel Sky (bypassed with permission from Revolution)

In most cases ScummVM will still show the copy protection screen. Try entering
any answer. Chances are that it will work.


Known Problems in ScummVM 0.5.3(CVS):
--------------------------------
This release has the following known problems. There is no need to report them,
although patches to fix them are welcome. If you discover a bug that is not
listed here, nor in the compatibility table on the web site, please see
the section on Reporting Bugs.

       Beneath a Steel Sky:
                - Floppy demo does not work at all
                - Amiga versions aren't supported and probably never will be
                - Not a bug: CD version is missing speech for some dialog

       Indiana Jones & the Last Crusade (EGA):
                - In some rooms Indy may be able to walk to odd places
                - There are some minor graphical glitches

       Indiana Jones & the Last Crusade (256):
                - No sound effects
                - In some rooms Indy may be able to walk to odd places
                - There are some minor graphical glitches

       FM Towns versions:
                - No support for Kanji versions
                - All the FM Towns versions of games are extremely rare,
                  And as the ScummVM team does not encourage piracy in any
                  way, we don't know where to buy or download a copy of these
                  games. Petition LucasArts to re-release them :)

       Monkey Island (EGA & VGA versions):
                - No sound effects

       Indiana Jones and the Fate of Atlantis:
                - Keyboard fighting does not work. ScummVM now defaults to
                  using mouse fighting.

       Sam and Max:
                - Highway subgame does not behave correctly.

       Simon the Sorcerer 1:
                - No inventory scrolling arrows shown in simon1dos and
                  simon1talkie, can still move around inventory though.
                - simon1dos freezes briefly after Swampling leaves his house and
                  when talking to demons in Sordid's Tower

       Simon the Sorcerer 2:
                - Text in copy protection screen of simon2dos is only shown for
                  a short time
                - simon2dos and simon2talkie (With subtitles enabled) freeze 
                  briefly when Pirate Captain is talking to Mate, when Simon
                  tries to escape
                - Only default language in data files is supported in simon2mac
                - F10 key animation in simon2mac is different compared to
                  original game

       Curse of Monkey Island
                - The "Pirate Song" scene does not play correctly
                - 
       All CD games:
               - If you are experiencing random crashes, and your game
                 plays music from CD, you have encountered a Windows bug.
                 Try copying the data files from CD to your hard disk, and
                 running them from there.


Simon the Sorcerer 1 and 2 games note
--------------------------------------
The Simon the Sorcerer 1 & 2 games were split into several targets to make 
coding easier and to make it more clear which target should be used:
       simon1dos    - Use for Simon the Sorcerer 1 for DOS (Disk)
       simon2dos    - Use for Simon the Sorcerer 2 for DOS (Disk)
       simon1talkie - Use for Simon the Sorcerer 1 Talkie for DOS (CD)
       simon2talkie - Use for Simon the Sorcerer 2 Talkie for DOS (CD)
       simon1win    - Use for Simon the Sorcerer 1 Talkie for Windows (CD)
       simon2win    - Use for Simon the Sorcerer 2 Talkie for Windows (CD)
       simon2mac    - Use for Simon the Sorcerer 2 Talkie for Amiga or Mac (CD)

If you have the dual version of Simon the Sorcerer 1 or 2 on CD,
then you will find the Windows version in the main directory of CD
and the DOS Talkie version in the DOS directory of the CD.


Reporting Bugs:
---------------
To report a bug, please create a SourceForge account and follow the bugs
link from our homepage. Please make sure the bug is reproducible, and
still occurs in the latest daily build/current CVS version. Also check
the existing bug list, and compatibility listing for that game, to
ensure the issue is not already known.

Do NOT report bugs on games that are not listed as being completable
above. We -know- those games have bugs.

Please include the following information:
        - ScummVM version (PLEASE test the latest CVS/Daily build)
        - Bug details, including instructions on reproducing
        - Language of game (English, German, ...)
        - Version of game (Talkie, Floppy, ...)
        - Platform and Compiler (Win32, Linux, FreeBSD, ...)
        - Attach a save game if possible
        - If this bug only occurred recently, please note the last
          version without the bug, and the first version including
          the bug. That way we can fix it quicker by looking at the
          changes made.


Compiling:
----------
You need SDL-1.2.2 or newer (older versions may work, but are unsupported), and
a supported compiler. Several compilers, including GCC, mingw and Microsoft
Visual C++ are supported. If you wish to use MP3-compressed CD tracks or
.SOU files, you will need to install the MAD library and define
USE_MAD. Tools for compressing .SOU files to .SO3 files can be
found in the 'tools' CVS module, or in the 'scummvm-tools' package.

You can also comment/uncomment appropriate lines in the build.rules file to
use sdl_gl.cpp instead of sdl.cpp. This allows hardware accelerated bilinear
filtering by using OpenGL textures.

On Win9x/NT/XP you can define USE_WINDBG and attach WinDbg to browse debug 
messages (see http://www.sysinternals.com/ntw2k/freeware/debugview.shtml).

    GCC:
        * Type make (or gmake if that's what GNU make is called on your
          system) and hopefully ScummVM will compile for you.

    Mingw:
        * Open Makefile.mingw, alter SDL paths and choose compiling options.
        * Type make -f Makefile.mingw,  hopefully ScummVM will compile for you.

    Microsoft Visual C++:
        * Open the workspace, scummwm.dsw
        * Enter the path to the SDL include files in Tools|Options|Directories
        * Now it should compile successfully.

    PocketPC - Windows CE:
        * Download the SDLAudio library:
          http://arisme.free.fr/PocketScumm/sources/SDLAudio-1.2.3-src.zip
        * Open and compile the SDLAudio WCEBuild/WCEBuild workspace in EVC++
        * Open the ScummVM wince/PocketScumm workspace
        * Enter the SDLAudio directory to your includes path
        * Enter the compiled SDLAudio.lib to your link libraries list
        * Now it should compile successfully

    Debian GNU/Linux:
        * Install the packages 'build-essential', 'fakeroot', 'debhelper',
          'libsdl1.2-dev', and 'libmad0-dev' on your system.
        * Optional: Install the 'libvorbis-dev' and/or the 'libasound2-dev'
          packages, and edit the Makefile to turn on support for Ogg Vorbis
          and/or the ALSA sequencer.
        * Run 'make deb'.
        * Finally run 'dpkg -i ../scummvm-cvs*deb', and you're done.
        
    Mac OS X:
        * Make sure you have the developer tools installed.
        * Edit backends/sdl/build.rules, and enable the Mac OS X specific 
          line(s).
        * Depending on where you have installed SDL, you have to add the
          location of its headers to the INCLUDES variables. For example if you
          installed SDL via Fink, you can add this at the end of build.rules:
          INCLUDES+= -I/sw/include
        * You can now 'make' to create a command line binary.
        * To get a version you can run from Finder, type 'make bundle' which
          will create ScummVM.app.


Running:
--------
Before you run the engine, you need to put the game's datafiles in a
directory. The filenames must not be in mixed case on *nix systems
(for example, these are valid names: "monkey2.000", "MONKEY2.000", while
this is a bad one: "Monkey2.000"). If you use a game with speech, the file
monster.sou must reside in the same directory as the datafiles.

For example, to run a copy of Monkey Island installed in C:\Games\LucasArts
under Windows, you would make a shortcut calling this command:

  C:\Games\LucasArts\scummvm.exe -f -pC:\Games\LucasArts\monkey\ monkey

Under Unix, the commandline would be:

  /path/to/scummvm -f -p/games/LucasArts/monkey/ monkey

Or, if you have, for example, Full Throttle on CD, and your CD drive is D:,
and you wish to disable subtitles and run in fullscreen:

  C:\Games\LucasArts\scummvm.exe -f -n -pD:\resource\ ft
  /path/to/scummvm -f -n -p/mnt/cdrom/resource/ ft

Note that if you run the game once this way, and specify the -w commandline
parameter (or edit the config file manually), ScummVM will remember the
path, and other settings for this game. Documentation on the configuration
file can be found near the end of this readme.

The short game name ('game target') you see at the end of the command
line is very important. A short list is contained at the top of this
file. You can also get the current list of games and game names at:

        http://www.scummvm.org/compatibility.php

For the adventurous, who like to live on the edge... you can download
daily builds of Win32 from the Download page of the main ScummVM homepage.


Command Line Options:
---------------------

        scummvm [OPTIONS] [GAME]

        [GAME]         - Short name of game to load. For example, 'monkey' for
                         Monkey Island.

        -p<path>       - Path to where the game is installed. Default is CWD.
        -x[<num>]      - Save game slot to load (default: autosave)
        -f             - Full-screen mode.
        -g<mode>       - Select graphics scaler. See below.
        -e<mode>       - Select sound engine. See below.
        -a             - Enable amiga pal conversion, for playing Amiga
                         versions
        -q<lang>       - Select language. See below.
        -c<num>        - Drive to play cd audio from.  E.g., 0 is first drive.
        -m<num>        - Set the music volume, 0-255.  Default is '192'
        -o<num>        - Set the master volume, 0-255. Default is '192'
        -s<num>        - Set the sfx volume, 0-255.    Default is '192'
        -t<num>        - Set music tempo. 50-200. Default is '100' (percent)
        -n             - Disable subtitles. Use with games that have voice.
        -y             - Set talk speed ('yak option'). Default is '60'
        -l<file>       - Load alternate configuration file
        -w[<file>]     - Write configuration file
        -v             - Show version information and exit
        -z             - Display list of games
        -b<num>        - Start in room <num>.
        -d[<num>]      - Set debug verbosity to <num>
        -u             - Dump scripts if a directory called 'dumps' exists in
                         current directory
        --multi-midi   - enable combination Adlib and native MIDI
        --native-mt32  - true Roland MT-32 (disable GM emulation)
        --aspect-ratio - enable aspect ratio correction
        --demo-mode    - Start demo mode of Maniac Mansion (Classic version)
        --floppy-intro - Use floppy version intro for Beneath a Steel Sky CD

The meaning of long options can be inversed by prefixing them with "no-", e.g.
--no-aspect-ratio. This is useful if you want to override a setting in the
configuration file.



Hot Keys:
---------
ScummVM supports various in game hotkeys. They differ between the scumm and
simon games.

    Common:
        Ctrl-z OR Alt-x        - quit
        Keyboard Arrow Keys    - simulate mouse movement
        Ctrl-f                 - runs in fast mode.
        Ctrl-Alt 0-9           - Switch between graphics filters
        Ctrl-Alt-a             - Toggle aspect-ratio correction on/off.
                                 Most of the games use a 320x200 pixel
                                 resolution, which may look squashed on
                                 modern monitors. Aspect-ratio correction
                                 stretches the image to use 320x240 pixels
                                 instead, or a multiple thereof.
        Ctrl-Alt-b             - Switch beetwen bilinear and non-linear
                                 filtering [OpenGL backend]
        Alt-Enter              - toggles full screen/windowed

    Scumm:
        Ctrl 0-9 and Alt 0-9   - load and save game state
        Ctrl-g                 - runs in really REALLY fast mode.
        Ctrl-d                 - starts the debugger.
        Tilde (~)              - Show/hide the debugging console
        Ctrl-s                 - shows memory consumption.
        [ and ]                - music volume, down/up
        - and +                - text speed, slower/faster
        F5                     - displays a save/load box.
        Space                  - pauses
        Period (.)             - skips current line of text in some games
        Enter                  - simulate left mouse button press
        Tab                    - simulate right mouse button press

    Simon:
        F1 - F3                - text speed, faster - slower
        F10                    - shows all characters and objects you can interact with
        - and +                - music volume, down/up
        m                      - music on/off
        s                      - sound effects on/off
        b                      - background sounds on/off

    Beneath a Steel Sky:
        Escape                 - skip the intro
        F5                     - display the save/load/options box
        Period (.)             - skip the current line of text

Note that using ctrl-f and ctrl-g are not recommended: Games can crash when
being ran faster than their normal speed, as scripts will lose synchronisation


Language options:
-----------------
ScummVM includes a language option for Maniac Mansion, Zak McKracken, The Dig,
Curse of Monkey Island, Beneath a Steel Sky, and Simon the Sorcerer 1 & 2.

    Maniac Mansion and Zak McKracken:
        en  - English (default)
        de  - German
        fr  - French
        it  - Italian
        es  - Spanish

    The Dig:
        jp  - Japanese
        zh  - Chinese
        kr  - Korean

    Curse of Monkey Island:
        en  - English (default)
        de  - German
        fr  - French
        it  - Italian
        pt  - Portuguese
        es  - Spanish
        jp  - Japanese
        zh  - Chinese
        kr  - Korean

    Beneath a Steel Sky:
        gb  - English (Great Britain) (default)
        en  - English USA
        de  - German
        fr  - French
        it  - Italian
        pt  - Portuguese
        es  - Spanish
        se  - Swedish

    Simon the Sorcerer 1 & 2:
        en  - English (default)
        de  - German
        fr  - French
        it  - Italian
        es  - Spanish
        hb  - Hebrew


Graphics filters:
-----------------
ScummVM offers several anti-aliasing filters to attempt to improve visual
quality. These are the same filters used in many other emulators, such as
MAME. 
Note: the resolutions listed assume the game was originally 320x200

They are:
        normal     - No filtering, original 320x200 resolution. Fastest.
        2x         - No filtering, double screen/window size to 640x400 
                     (default)
        3x         - No filtering, triple screen/window size to 960x600
        2xsai      - 2xsai filtering, double screen/window size to 640x400
        super2xsai - Enhanced 2xsai filtering. 640x400 screen/window size
        supereagle - Less blurry than 2xsai, but slower. Also 640x400
        advmame2x  - 640x400 scaling. Doesn't rely on blurring like 2xSAI.
        advmame3x  - 960x600 scaling. Doesn't rely on blurring like 2xSAI.
        tv2x       - 640x400 scaling. Horizontal scanlines.
        dotmatrix  - 640x400 scaling. Dot matrix effect.
        opengl     - OpenGL with bilinear filtering [Unsupported]

To select a graphics filter, pass its name via the '-g' option to scummvm,
for example:

    scummvm -g advmame2x monkey2

Note #1: Not all backends support all or any filters. The ones listed above
are for the default SDL backend.

Note #2: Filters can be very slow when ScummVM is compiled in a debug
configuration without optimizations. And there is always a speed impact when
using any form of anti-aliasing/linear filtering.

Note #3: The FmTowns version of Zak (zak256 target) uses an original resolution
of 320x240 - hence for this game scalers will scale to 640x480 or 960x720.

Note #4: The OpenGL filter is included as a curiosity only. It's use is
unsupported, and unrecommended. The only benefit is hardware accelerated
scaling, but any machine with an OpenGL card should be fast enough to use
the software scalers (see above).

Autosaves:
----------
Because ScummVM is still a beta product, it -can- crash and/or hang
occasionally. As such, every five minutes it will save a game in Slot 0. This
game can be loaded via Ctrl-0, or the F5 menu. This autosaving does not, however,
occur with Simon the Sorcerer.


Savegames:
----------
Savegames are by default put in the current directory. You can specify the save
in the config file by setting the savepath parameter. See the example config
file later in this readme.

You can also use the environment variable SCUMMVM_SAVEPATH to specify where to
put save games. Don't forget the trailing directory separator. Also be aware
that saved games may break between ScummVM releases.

Bash (Unix) Example:
        export SCUMMVM_SAVEPATH=/tmp/scummvm_savegames/

Windows example:
        set SCUMMVM_SAVEPATH=C:\saved_games\


Music and Sound: 
----------------
By default, on most operating systems, ScummVM will automatically use Adlib
emulation. MIDI may not be available on all operating systems or may need
manual configuration. If you ARE using MIDI, you have several different
choices of output, depending on your operating system and configuration.
        
        adlib     - Uses internal Adlib Emulation (default) 
        windows   - Windows MIDI. Uses built-in sequencer, for Windows users
        seq       - Uses /dev/sequencer for MIDI, *nix users. See below.
        qt        - Quicktime sound, for Macintosh users.
        core      - CoreAudio sound, for MacOS X users.
        amidi     - Uses the MorphOS MIDI system, for MorphOS users
        alsa      - Output using ALSA sequencer device. See below.
        null      - Null output. Don't play any music.

To select a sound driver, pass its name via the '-e' option to scummvm,
for example:

    scummvm -e adlib monkey2


Playing sound with Adlib emulation:
-----------------------------------
By default an Adlib card will be emulated and ScummVM will output the music
as sampled waves. This is the default mode for most games, and offers the
best compatibility between machines and games.


Playing sound with MIDI emulation:
----------------------------------
Until recently, some games (particularly Sam and Max) were only able to run
in MIDI mode. This prevented music for these games from working on platforms
that do not support MIDI, or soundcards that do not provide MIDI drivers (e.g.,
many soundcards will not play MIDI under Linux). ScummVM can now emulate MIDI
mode using sampled waves and Adlib emulation using the -eadlib option.
However, if you are capable of using native MIDI, we recommend using one of
the MIDI modes below for best sound.


Playing sound with Native MIDI:
-------------------------------
Use the appropriate -e<mode> command line option from the list above to
select your preferred MIDI device. For example, if you wish to use the
Windows MIDI driver, use the -ewindows option.


Playing sound with Sequencer MIDI:              [UNIX ONLY]
----------------------------------
If your soundcard driver supports a sequencer, you may set the environment
variable "SCUMMVM_MIDI" to your sequencer device - e.g., /dev/sequencer

If you have problems with not hearing audio in this configuration, it is
possible you will need to set the "SCUMMVM_MIDIPORT" variable to 1 or 2. This
selects the port on the selected sequencer to use. Then start scummvm with the
-eseq parameter. This should work on several cards, and may offer better
performance and quality than Adlib emulation. However, for those systems where
sequencer support does not work, you can always fall back on Adlib emulation.


Playing sound with ALSA sequencer:              [UNIX ONLY]
----------------------------------
If you have installed the ALSA driver with the sequencer support, then
set the environment variable "SCUMMVM_PORT" to your sequencer port - e.g. 65:0

Here is a little howto on how to use the ALSA sequencer with your soundcard.
In all cases, to have a list of all the sequencer ports you have, try the
command "aconnect -o -l". This should give output similar to:
client 64: 'External MIDI 0' [type=kernel]
    0 'MIDI 0-0        '
client 65: 'Emu10k1 WaveTable' [type=kernel]
    0 'Emu10k1 Port 0  '
    1 'Emu10k1 Port 1  '
    2 'Emu10k1 Port 2  '
    3 'Emu10k1 Port 3  '
client 128: 'Client-128' [type=user]
    0 'TiMidity port 0 '
    1 'TiMidity port 1 '

This means the external MIDI output of the sound card is located on the
port 64:0, four WaveTable MIDI outputs in 65:0, 65:1, 65:2
and 65:3, and two TiMidity ports, located at 128:0 and 128:1.

If you have a FM-chip on your card, like the SB16, then you have to load
the soundfonts using the sbiload software. Example:
  sbiload -p 65:0 /etc/std.o3 /etc/drums.o3

If you have a WaveTable capable sound card, you have to load a sbk or sf2
soundfont using the sfxload software. Example:
  sfxload /path/to/8mbgmsfx.sf2

If you don't have a MIDI capable soundcard, or if you want to take advantage of
your TiMidity samples, then you can ask TiMidity to become an ALSA sequencer
output. Here is a quick way to do so:
  timidity -iAqqq -B2,8 -Os1S -s 44100 &
If you get distorted output with this setting try dropping the -B2,8 or
changing the value.

Then the TiMidity port will be visible from the 'aconnect -o -l' list. You
should launch it as root, since it will try to set up some real time
priority.


Using MP3 files for CD audio:
-----------------------------
Use LAME or some other mp3 encoder to rip the cd audio tracks to files. Name
the files track1.mp3 track2.mp3 etc. ScummVM must be compiled with MAD support
to use this option. You'll need to rip the file from the CD as a WAV file,
then encode the MP3 files in Constant Bit Rate sampled at 22 kHz. This can
be done with the following LAME command line:

  lame -t -q 0 -b 96 --resample 22.05 track1.wav track1.mp3


Using Ogg Vorbis files for CD audio:
------------------------------------
Use oggenc or some other vorbis encoder to encode the audio tracks to files.
Name the files track1.ogg track2.ogg etc. ScummVM must be compiled with vorbis
support to use this option. You'll need to rip the files from the CD as a WAV
file, then encode the vorbis files to be sampled at 22 kHz. This can be done
with the following oggenc command line with the value after q specifying 
the desired quality from 0 to 10:

  oggenc -q 5 --resample 22050 track1.wav


Compressing MONSTER.SOU with MP3:
---------------------------------
You need LAME, and our extract util from the scummvm-tools package to perform
this task, and ScummVM must be compiled with MAD support.

Make a backup file of your MONSTER.SOU before attempting this. Copy your
MONSTER.SOU file to a temporary folder. Then run:

  extract monster.sou

In about 30 minutes or so, you will have a much smaller monster.so3 file,
copy this file to your game dir. You can safely remove the monster.sou file.


Compressing MONSTER.SOU with Ogg Vorbis:
----------------------------------------
As above but run:

  extract --vorbis monster.sou

This should produce a smaller monster.sog file, which you should copy to your
game dir.


Compressing sound effects and speech files in Simon the Sorcerer 1 and 2
-----------------------------------------------------------------------
You need LAME, and our simon2mp3 util from the scummvm-tools package to perform
this task, and ScummVM must be compiled with MAD support.

Make a backup of the file before attempting this. Copy the file to a
temporary folder. Then run:

  simon2mp3 effects.voc (For simon1talkie)
  simon2mp3 simon.voc   (For simon1talkie)
  simon2mp3 simon.wav   (For simon1win)
  simon2mp3 simon2.voc  (For simon2talkie)
  simon2mp3 simon2.wav  (For simon2win) 


In about 30 minutes or so, you will have a much smaller *.mp3 file, copy this
file to your game dir. You can safely remove the old file.

Using data files from Macintosh game versions:
----------------------------------------------
All LucasArts Scumm based adventures except CMI also exist in versions for the
Macintosh. ScummVM can use most (all?) of them, however, in some case some
additional work is required. First off, if you are not using a Macintoh for
this, accessing the CD/floppy data might be tricky. There are various tools on
the net for this, though.

Secondly, most of the newer games shipped only with a  single data file on the
Macintosh. You first have to run the 'rescumm' tool from the scummvm-tools
package to extract the data files ScummVM excpects. You invoke rescumm like
this (where DATAFILE is the path to the single big data file):

   rescumm DATAFILE

It will extract the data into the current directory, so make sure to run it from
a writable directory.


Configuration file:
-------------------
By default, the configuration file is saved in, and loaded from:

        Windows:  <windir>\scummvm.ini,
        Unix:     ~/.scummvmrc
        Mac OS X: ~/Library/Preferences/ScummVM Preferences
        Others:   scummvm.ini in the current directory

An example config file looks as follows:

        [scummvm]
        gfx_mode=supereagle
        fullscreen=true
        savepath=C:\saves\

        [germandott]
        gameid=tentacle
        path=C:\german\tentacle\
        description=German version of DOTT

        [tentacle]
        path=C:\tentacle\
        nosubtitles=true
        master_volume=98
        music_volume=40
        sfx_volume=255

        [loomcd]
        cdrom=1
        path=C:\loom\
        talkspeed=55
        
        [monkey2]
        path=C:\amiga_mi2\
        music_driver=windows
        amiga=true

The following keywords are recognized:

        amiga           bool     Tells ScummVM whether or not a game is the
                                 Amiga version
        basename        string
        path            string   The path to where a game's data files are
        read_only       bool     If true, ScummVM will never try to overwrite
                                 the configuration file.
        save_slot
        savepath                 The path to where a game will store its
                                 savegames.
        versioninfo     string   The version of the ScummVM that created the
                                 configuration file.

        gameid          string   The real id of a game. Useful if you have
                                 several versions of the same game, and want
                                 different aliases for them. See the example.
        description     string   The description of the game as it will appear
                                 in the launcher.

        language        string   Specify language (en, de, fr, it, pt, es, jp,
                                 zh, kr, hb)
        nosubtitles     bool     Set to true to suppress subtitles.
        talkspeed       number   Text speed (default: 60)

        fullscreen      bool     Fullscreen mode
        aspect_ratio    bool     Enable aspect ratio correction
        gfx_mode        string   Graphics mode (normal, 2x, 3x, 2xsai,
                                 super2xsai, supereagle, advmame2x, advmame3x,
                                 tv2x, dotmatrix)

        cdrom           int      Number of CD-ROM unit to use for audio. If
                                 negative, don't even try to access the CD-ROM.
        master_volume   int      The master volume setting (0-255)
        music_driver    string   The music engine to use.
        music_volume    int      The music volume setting (0-255)
        multi_midi      bool     If true, enable combination Adlib and native
                                 MIDI.
        native_mt32     bool     If true, disable GM emulation and assume that
                                 there is a true Roland MT-32 available.
        sfx_volume      int      The sfx volume setting (0-255)
        tempo           int      The music tempo (50-200) (default: 100)

        demo_mode       bool     Start demo in Maniac Mansion (Classic version)
        floppy_intro    bool     Use floppy version of introduction in Beneath a 
                                 Steel Sky (CD version)

        debuglevel      int      Enable debug output. The higher number, the
                                 more verbose output.


Credits:
--------
 The ScummVM team:
        James Brown          - Lead Developer
        Max Horn             - Lead Developer
        Robert Goeffringmann - Engine: Beneath a Steel Sky
        Jonathan Gray        - Engine: SCUMM
        Oliver Kiehl         - Engine: Beneath a Steel Sky, Simon
        Pawel Kolodziejski   - Engine: SCUMM (Codecs, iMUSE, Smush, etc.)
        Joost Peters         - Engine: Beneath a Steel Sky
        Chris Apers          - Port: PalmOS
        Nicolas Bacca        - Port: PocketPC/WinCE port
        Marcus Comstedt      - Port: DreamCast
        Ruediger Hanke       - Port: MorphOS
        Travis Howell        - Port: Win32, Engine: Simon
        Peter Moraliyski     - Port: GP32
        Lionel Ulmer         - Port: X11
        Torbjorn Andersson   - Generic Bugfixer and Patch Submitter
        Jamieson Christian   - iMUSE, MIDI, all things musical.
        Jochen Hoenicke      - Speaker & PCjr sound support, Adlib work
        Jeremy Newman        - Webmaster

 Retired Team Members:
        Ralph Brorsen        - Help with GUI Implementation
        Vincent Hamm         - Co-Founder
        Felix Jakschitsch    - Zak256 reverse engineering
        Mutwin Kraus         - Original MacOS Porter
        Ludvig Strigeus      - Original ScummVM and SimonVM Author

 Contributors:
        Stuart Caie          - Decoders for Simon 1 Amiga data files
        Janne Huttunen       - V3 actor mask support, Dig/FT SMUSH audio
        Kovacs Endre Janos   - Several fixes for Simon1
        Jeroen Janssen       - Numerous readability and bugfix patches
        Claudio Matsuoka     - Daily Linux/BeOS builds 
        Gregory Montoir      - AdvanceMAME Scale-2X, TV 2x and Dot Matrix
                               implementation
        Mikesch Nepomuk      - MI1 VGA Floppy patches.
        Nicolas Noble        - Config file and ALSA support
        Edward Rudd          - Fixes for playing MP3 versions of MI1/Loom Audio
        Daniel Schepler      - Final MI1 CD music support/ 
                               Initial Ogg Vorbis support
        Andre Souza          - SDL-based OpenGL renderer
        Tim 'realmz'         - Initial MI1 CD music support

        And to all the contributors, users, and beta testers we've missed.
        Thanks!

 Special thanks to:
        Sander Buskens  - For his work on the initial reversing of Monkey2
        Kevin Carnes    - For Scumm16, the basis of ScummVM older gfx codec
        Jim Leiterman   - Various info on his FmTowns/Marty SCUMM ports
        Jimmi Thogersen - For ScummRev, and much obscure code/documentation

        Tony Warriner and everyone at Revolution Sofware Ltd. for sharing
        with us the source of some of their brilliant games, and being
        supportive above and beyond the call of duty.

        Aric Wilmunder, Ron Gilbert, David Fox, Vince Lee, and all those at
        LucasFilm/LucasArts who made SCUMM the insane mess to reimplement
        that it is today. Feel free to drop us a line and tell us what you
        think, guys!



------------------------------------------------------------------------
Good Luck and Happy Adventuring!
The ScummVM team.
http://www.scummvm.org/
------------------------------------------------------------------------