aboutsummaryrefslogtreecommitdiff
path: root/README
blob: 6f4a386c7e5aab8e973a5f368ee92b2e7892f901 (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
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
ScummVM README
Last updated:    $Date$
------------------------------------------------------------------------

TODO: Resolve all the TODOs scattered through this file before release.

TODO: Document the mass-add feature of the launcher (shift+"Add Game...")

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/


Table of Contents:
------------------
1.0) About
2.0) Contact
 * 2.1 Reporting Bugs
3.0) Supported Games
 * 3.1 Copy Protection
 * 3.2 Commodore64 games notes
 * 3.3 Maniac Mansion NES notes
 * 3.4 Macintosh games notes
 * 3.5 Multi-CD games notes
 * 3.6 The Curse of Monkey Island notes
 * 3.7 Broken Sword notes
 * 3.8 Beneath a Steel Sky notes
 * 3.9 Flight of the Amazon Queen notes
 * 3.10 Gobliiins notes
 * 3.11 Inherit the Earth: Quest for the Orb notes
 * 3.12 Simon the Sorcerer notes
 * 3.13 The Feeble Files notes
 * 3.14 The Legend of Kyrandia notes
 * 3.15 Known Problems
4.0) Supported Platforms
5.0) Running ScummVM
 * 5.1 Command Line Options
 * 5.2 Language Options
 * 5.3 Graphics Filters
 * 5.4 Hotkeys
6.0) Savegames
 * 6.1 Autosaves
7.0) Music and Sound
 * 7.1 Adlib emulation
 * 7.2 FluidSynth MIDI emulation
 * 7.3 MT-32 emulation
 * 7.4 MIDI emulation
 * 7.5 Native MIDI support
 * 7.6 UNIX native and ALSA sequencer support
 * 7.7 Using compressed audio files (MP3, Ogg Vorbis, Flac)
 * 7.8 Output sample rate
8.0) Configuration Files
9.0) Compiling


1.0) About:
---- ------
ScummVM is a program which allows you to run certain classic graphical
point-and-click adventure games, provided you already have their data
files. The clever part about this: ScummVM just replaces the
executables shipped with the game, allowing you to play them on
systems for which they were never designed!

Some of the adventures ScummVM supports include Adventure Soft's Simon
the Sorcerer 1 and 2; Revolution's Beneath A Steel Sky, Broken Sword 1
and Broken Sword 2; Flight of the Amazon Queen; Wyrmkeep's Inherit the
Earth; Coktel Vision's Gobliiins; Westwood Studios' The Legend of
Kyrandia and games based on LucasArts' SCUMM (Script Creation Utility
for Maniac Mansion) system such as Monkey Island, Day of the Tentacle,
Sam and Max and more. You can find a thorough list with details on
which games are supported and how well on the compatibility
page. ScummVM is continually improving, so check back often.

Among the systems on which you can play those games are Windows,
Linux, Mac OS X, Dreamcast, PocketPC, PalmOS, AmigaOS, BeOS, OS/2,
PSP, PS2, SymbianOS/EPOC and many more.

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!


2.0) Contact:
---- --------
The easiest way to contact the ScummVM team is by submitting bug reports
(see section 2.1) or by using our forums at http://forums.scummvm.org .
You can also join and e-mail the scummvm-devel mailing list, or chat with
us on IRC (#scummvm on irc.freenode.net) Please do not ask us to support
an unsupported game -- read the FAQ on our web site first.


2.1) 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 SVN/Daily build version. Also check the known
problems list (below) and the compatibility list on our website for that
game, to ensure the issue is not already known:

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

Also do not report bugs on games that are not listed as being completable
in the 'Supported Games' section, or compatibility list. We -know- those
games have bugs.

Please include the following information:
        - ScummVM version (PLEASE test the latest SVN/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 savegame 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.


3.0) Supported Games:
---- ----------------
At the moment the following games have been reported to work, and should
be playable to the end:

SCUMM Games by LucasArts:
     Maniac Mansion                              [maniac]
     Zak McKracken and the Alien Mindbenders     [zak]
     Indiana Jones and the Last Crusade          [indy3]
     Loom                                        [loom]
     The Secret of Monkey Island                 [monkey]
     Monkey Island 2: LeChuck's Revenge          [monkey2]
     Indiana Jones and the Fate of Atlantis      [atlantis]
     Day of the Tentacle                         [tentacle]
     Sam & Max Hit the Road                      [samnmax]
     Full Throttle                               [ft]
     The Dig                                     [dig]
     The Curse of Monkey Island                  [comi]

Other Games:
     Beneath a Steel Sky                         [sky]
     Broken Sword 1: The Shadow of the Templars  [sword1]
     Broken Sword 2: The Smoking Mirror          [sword2]
     Flight of the Amazon Queen                  [queen]
     Future Wars                                 [fw]
     Gobliiins                                   [gob1]
     Gobliins 2                                  [gob2]
     Inherit the Earth: Quest for the Orb        [ite]
     Simon the Sorcerer 1                        [simon1]
     Simon the Sorcerer 2                        [simon2]
     Simon the Sorcerer's Puzzle Pack
         - Demon In My Pocket                    [dimp]
     Simon the Sorcerer's Puzzle Pack
         - Jumble                                [jumble]
     Simon the Sorcerer's Puzzle Pack
         - NoPatience                            [puzzle]
     Simon the Sorcerer's Puzzle Pack
         - Swampy Adventures                     [swampy]
     The Feeble Files                            [feeble]
     The Legend of Kyrandia                      [kyra1]
     Touche: The Adventures of the Fifth
         Musketeer                               [touche]

SCUMM Games by Humongous Entertainment:
     Backyard Football                           [football]
     Big Thinkers First Grade                    [thinker1]
     Big Thinkers Kindergarten                   [thinkerk]
     Fatty Bear's Birthday Surprise              [fbear]
     Fatty Bear's Fun Pack                       [fbpack]
     Freddi Fish 1: The Case of the Missing
         Kelp Seeds                              [freddi]
     Freddi Fish 2: The Case of the Haunted
         Schoolhouse                             [freddi2]
     Freddi Fish 3: The Case of the Stolen
         Conch Shell                             [freddi3]
     Freddi Fish 4: The Case of the Hogfish
         Rustlers of Briny Gulch                 [freddi4]
     Freddi Fish and Luther's Maze Madness       [maze]
     Freddi Fish and Luther's Water Worries      [water]
     Let's Explore the Airport with Buzzy        [airport]
     Let's Explore the Farm with Buzzy           [farm]
     Let's Explore the Jungle with Buzzy         [jungle]
     Pajama Sam 1: No Need to Hide When It's
         Dark Outside                            [pajama]
     Pajama Sam 2: Thunder and Lightning
         Aren't so Frightening                   [pajama2]
     Pajama Sam 3: You Are What You Eat
         From Your Head to Your Feet             [pajama3]
     Pajama Sam's Lost & Found                   [lost]
     Pajama Sam's Sock Works                     [socks]
     Putt-Putt Enters the Race                   [puttrace]
     Putt-Putt Goes to the Moon                  [puttmoon]
     Putt-Putt Joins the Circus                  [puttcircus]
     Putt-Putt Joins the Parade                  [puttputt]
     Putt-Putt Saves the Zoo                     [puttzoo]
     Putt-Putt Travels Through Time              [putttime]
     Putt-Putt and Pep's Balloon-O-Rama          [balloon]
     Putt-Putt and Pep's Dog on a Stick          [dog]
     Putt-Putt & Fatty Bear's Activity Pack      [activity]
     Putt-Putt's Fun Pack                        [funpack]
     SPY Fox 1: Dry Cereal                       [spyfox]
     SPY Fox 2: Some Assembly Required           [spyfox2]
     SPY Fox in Cheese Chase                     [chase]
     SPY Fox in Hold the Mustard                 [mustard]

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.

     Backyard Baseball                           [baseball]
     Backyard Soccer                             [soccer]
     Blue's ABC Time                             [BluesABCTime]
     Blue's Birthday Adventure                   [BluesBirthday]
     SPY Fox 3: Operation Ozone                  [spyozon]

The following games are based on the SCUMM engine, but NOT supported
by ScummVM (yet):

     Other Humongous Entertainment games

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 above) if you
encounter such a bug in a 'supported' game.


3.1) Copy Protection:
---- ----------------
The ScummVM team does not condone piracy. However, there are cases
where the game companies (such as LucasArts) themselves bundled
'cracked' executables with their games -- in these cases the data
files still contain the copy protection scripts, but the interpreter
bypasses them (similar to what an illegally cracked version might do,
only that here the producer of the game did it). There is no way for
us to tell the difference between legitimate and pirated data files,
so for the games where we know that a cracked version of the original
interpreter was sold at some point, ScummVM will always have to bypass
the copy protection.

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

ScummVM will skip copy protection in the following games:

  * Maniac Mansion
  * Zak McKracken and the Alien Mindbenders
  * Loom (EGA)
  * The Secret of Monkey Island (VGA)
  * Monkey Island 2: LeChuck's Revenge
  * Beneath a Steel Sky
      -- bypassed with kind permission from Revolution Software.
  * Inherit the Earth: Quest for the Orb (Floppy version)
      -- bypassed with kind permission from Wyrmkeep Entertainment,
         since it was bypassed in all CD releases of the game.
  * Simon the Sorcerer 1 (Floppy version)
  * Simon the Sorcerer 2 (Floppy version)
      -- bypassed with kind permission from Adventure Soft,
         since it was bypassed in all CD releases of the game.


3.2) Commodore64 games notes:
---- ------------------------
Both Maniac Mansion and Zak McKracken run but Maniac Mansion is not
yet playable. Simply name the D64 disks "maniac1.d64" and
"maniac2.d64" respectively "zak1.d64" and "zak2.d64", then ScummVM
should be able to automatically detect the game if you point it at the
right directory.

Alternatively, you can use extract_mm_c64 from the tools package to
extract the data files. But then the game will not be properly
autodetected by ScummVM, and you must make sure that the platform is
set to Commodore64. We recommend using the much simpler approach
described in the previous paragraph.


3.3) Maniac Mansion NES notes:
---- -------------------------
Supported versions are English GB (E), French (F), German (G), Swedish (SW)
and English US (U).
ScummVM requires just the PRG section to run and not the whole ROM.

In order to get the game working, you will have to strip out the first
16 bytes from the ROM you are trying to work with. Any hex editor will work
as long as you are able to copy/paste.  After you open the ROM with the
hex editor, copy everything from the second row (17th byte) to the end.
After you do this, paste it to a new hex file. Name the new file
"Maniac Mansion (XX).prg" while XX stands for the version you are working
with (E, F, G, SW, or U).  The final size should be exactly 262144 bytes.

If you add the game manually make sure that the platform is set to NES.

Most common mistakes which prevents the game from running:

  * Bad file
  * ROM extracted with the 0.7.0 tools
  * You try to feed ScummVM with the FULL ROM and not just the PRG section.

It is also possible to extract the separate LFL files from the PRG section.
To do so use the extract_mm_nes utility from the tools package.


3.4) Macintosh games notes:
---- ----------------------
All LucasArts SCUMM based adventures except COMI also exist in versions for the
Macintosh. ScummVM can use most (all?) of them, however, in some cases some
additional work is required. First off, if you are not using a Macintosh for
this, accessing the CD/floppy data might be tricky. The reason for this is
that the mac uses a special disk format called HFS which other systems usually
do not support. However, there are various free tools which allow reading such
HFS volumes. For example "HFVExplorer" for Windows and "hfsutils" for Linux and
other Unix-like operating systems.

Most of the newer games on the Macintosh shipped with only a single data file
(note that in some cases this data file was made invisible, so you may need
extra tools in order to copy it). ScummVM is able to directly use such a data file;
simply point ScummVM at the directory containing it, and it should work (just like
with every other supported game).

We also provide a tool called 'rescumm' in the tools package to extract the
data from these data files, but this is neither required nor recommended.

For further information on copying Macintosh game files to your hard disk see:

  http://wiki.scummvm.org/index.php/HOWTO-Mac_Games


3.5) Multi-CD games notes:
---- ---------------------
In general, ScummVM does not deal very well with Multi-CD games. This is
because ScummVM assumes everything about a game can be found in one directory.
Even if ScummVM does make some provisions for asking the user to change CD, the
original game executables usually installed a small number of files to the hard
disk. Unless these files can be found on all the CDs, ScummVM will be in trouble.

Fortunately, ScummVM has no problems running the games entirely from hard disk,
if you create a directory with the correct combination of files. Usually, when
a file appears on more than one CD you can pick either of them.

These instructions are written for the PC versions (which in some case is the
only version) of the games. Windows and DOS use case-insensitive file systems,
so if one CD has a file called MONKEY.DAT and another has a file called
monkey.dat, they are the same files. These instructions give file names in all
lower-case names, even if that's not always how they appear on the CDs. In
fact, on case-sensitive file systems you will have to make sure that all
filenames use either all upper- or all lower-case letters for ScummVM to be
able to find the files.


3.6) The Curse of Monkey Island notes:
---- ---------------------------------
For this game, you will need the comi.la0, comi.la1 and comi.la2 files. The
comi.la0 file can be found on either CD, but since they are identical it
doesn't matter which one of them you use.

In addition, you will need to create a "resource" subdirectory containing all
of the files from -both- "resource" subdirectories on the two CDs. Some of
the files appear on both CDs, but again they're identical.


3.7) Broken Sword notes:
---- -------------------
Broken Sword 1 and 2 both come with in-game cutscenes compressed using
RAD Game Tools legacy Smacker(tm) format. As RAD is unwilling to open
the older legacy versions of this format to us, and have requested we not
reverse engineer it, Revolution Software has kindly allowed us to provide
re-encoded Broken Sword cutscenes for download on our website:

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

These cutscenes are provided in MPEG2 format with OGG Vorbis audio.
Viewing these cutscenes thus requires a version of ScummVM compiled
with both libmpeg2 (preferably 0.4.0 or greater) and libVorbis support.

TODO
TODO: What about DXA??? Mention it here, too???
TODO

The cutscenes should be placed in the main game data directory. Note that
currently this requires either copying the game to hard disk or burning
customised versions of the game CDs.

The instructions for the Broken Sword games are for the Sold-Out Software
versions, which are the ones you are probably most likely to find in stores
now.


3.7.1) Broken Sword 1:
------ ---------------
For this game, you will need all of the files from the clusters directories on
both CDs. You will also need the speech.clu files from the speech directories,
but since they are not identical you will need to rename them speech1.clu and
speech2.clu for CD 1 and 2 respectively.

In addition, you will need a music subdirectory with all of the files from the
music subdirectories on both CDs. Some of these files appear on both CDs, but
in these cases they are either identical or, in one case, so nearly identical
that it makes little difference.

ScummVM does not support the original cutscene files, so there is no need to
copy them.


3.7.2) Broken Sword 2:
------ ---------------
For this game, you will need all of the files from the clusters directories on
both CDs. (Actually, a few of them may not be strictly necessary, but the ones
that I'm uncertain about are all fairly small.) You will need to rename the
speech.clu and music.clu files speech1.clu, speech2.clu, music1.clu and
music2.clu so that ScummVM can tell which ones are from CD 1 and which ones are
from CD 2. Any other files that appear in both cluster directories are
identical. Use whichever you like.

In addition, you will need the cd.inf and, optionally, the startup.inf
files from the sword2 directory on CD 1.

ScummVM does not support the original cutscene files, so there is no need to
copy them.


3.8) Beneath a Steel Sky notes:
---- --------------------------
Starting with ScummVM 0.8.0 you need the additional 'SKY.CPT' file to run
Beneath a Steel Sky.

This file is available on the 'Downloads' page of the ScummVM
website. You can place it in either the directory containing the other
game data files (SKY.DNR, SKY.DSK), in your extrapath, or in the directory
where your ScummVM executable resides.


3.9) Flight of the Amazon Queen notes:
---- ---------------------------------
In order to use a non-freeware version of Flight of the Amazon Queen (from
original CD), you will need to place the 'queen.tbl' file (available from the
'Downloads' page on our website) in either the directory containing the
'queen.1' game data file, in your extrapath, or in the directory where your
ScummVM executable resides.

Alternatively, you can use the 'compress_queen' tool from the tools package to
'rebuild' your FOTAQ data file to include the table for that specific version,
and thus removing the run-time dependency on the 'queen.tbl' file.
This tool also allows you to compress the speech and sound effects with MP3,
OGG or FLAC.


3.10) Gobliiins notes:
----- ----------------
The CD versions of the Gobliiins series contain one big audio track which you
need to rip (see the section on using compressed audio files) and copy into
the game directory if you want to have in-game music without the CD in the
drive all the time. The speech is also in that track and its volume is
therefore changed with the music volume control as well.


3.11) Inherit the Earth: Quest for the Orb notes:
----- -------------------------------------------
In order to run the Mac OS X Wyrmkeep re-release of the game you will need to
copy over data from the CD to your hard disk. If you're on a PC then consult:

  http://wiki.scummvm.org/index.php/HOWTO-Mac_Games

Although it primarily talks about SCUMM games, it mentions the "HFVExplorer"
utility which you need to extract the files.
Note that you have to put the speech data "Inherit the Earth Voices" in the
same directory as the game data which is stored in:

  Inherit the Earth.app/Contents/Resources

For the old Mac OS 9 release you need to copy the files in MacBinary format,
as they should include both resource and data forks. Copy all 'ITE *' files.


3.12) Simon the Sorcerer 1 and 2 notes:
----- ---------------------------------
If you have the dual version of Simon the Sorcerer 1 or 2 on CD, you will
find the Windows version in the main directory of the CD and the DOS version
in the DOS directory of the CD.


3.13) The Feeble Files notes:
----- -----------------------
If you have the Windows version of The Feeble Files, there are several things
to note.

Many of the files necessary for the game are stored in an InstallShield file
called data1.cab, which ScummVM is unable to unpack. You will need to use the
original installer or i5comp to unpack the contents of this file. The i5comp 
decompression tool, can be found via a search on the internet.

The game uses Smacker cutscenes extensively, which we can't support directly,
due to reasons described above. The cutscenes have to be re-encoded to DXA,
which is the format used by the cutscenes in the Amiga and Macintosh versions.
See the tools README for a brief guide on converting the cutscenes.

TODO
TODO: Maybe we should add a section dedicated to Smacker and DXA, and refer
TODO  to it from here, and also from section 3.7 (Broken Sword) ?
TODO

To use the speech files with ScummVM, they need to be renamed as follows:
Rename voices.wav on CD1 to voices1.wav
Rename voices.wav on CD2 to voices2.wav
Rename voices.wav on CD3 to voices3.wav
Rename voices.wav on CD4 to voices4.wav


3.14) The Legend of Kyrandia notes:
----- -----------------------------
To run The Legend of Kyrandia under ScummVM you need the 'kyra.dat' file,
which can be found on the 'Downloads' page of the ScummVM website.


3.15) Known Problems:
----- ---------------
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 list on the web site, please see
the section on reporting bugs.

     CD Audio Games:
          - When playing games that use CD Audio (FM-TOWNS games, Loom CD, etc)
            users of Microsoft Windows 2000/XP may experience random crashes.
            This is due to a long-standing Windows bug, resulting in corrupt
            game files being read from the CD. Please copy the game data to
            your hard disk to avoid this.

     FM-TOWNS versions:
          - The Kanji versions require the FM-TOWNS Font ROM
          - ScummVM will crash randomly when using the FM-TOWNS Font ROM for
            the Kanji versions of the following games:
            The Secret of Monkey Island, Monkey Island 2: LeChuck's Revenge
            and Indiana Jones and the Fate of Atlantis

     Loom:
          - Turning off the subtitles via the config file does not work reliably
            as the Loom scripts automatically turn them on again
          - MIDI support in the EGA version requires the Roland update from
            LucasArts

     The Secret of Monkey Island:
          - MIDI support in the EGA version requires the Roland update from
            LucasArts

     Beneath a Steel Sky:
          - Amiga versions aren't supported
          - Floppy demos aren't supported
          - Not a bug: CD version is missing speech for some dialogs, this is
            normal.

     Broken Sword 1:
          - PlayStation 1 version isn't supported

     Broken Sword 2:
          - PlayStation 1 version isn't supported

     Inherit the Earth: Quest for the Orb
          - Amiga versions aren't supported

     Simon the Sorcerer 1:
          - Subtitles aren't available in the English and German CD versions
            as they are missing the majority of subtitles.

     Simon the Sorcerer 2:
          - Combined speech and subtitles will often cause speech to be
            cut off early, this is a limitation of the original game.
          - Only default language (English) of data files is supported
            in Amiga and Macintosh versions.

     Simon the Sorcerer's Puzzle Pack:
          - No support for displaying, entering, loading or saving high scores.
          - No support for displaying explanation, when clicking on items in
            Swampy Adventures.

     The Feeble Files:
          - Subtitles are often incomplete, they were always disabled in the
            original game.

     The Legend of Kyrandia:
          - Amiga versions aren't supported
          - FM-Towns version isn't supported

     Humongous Entertainment games:
          - No support for printing images


4.0) 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 SVN, feel free to contact us!

Supported platforms include (but are not limited to):

        UNIX            (Linux, Solaris, IRIX, *BSD)
        Windows
        Windows Mobile  (iPAQ and other handheld devices)
        Mac OS X
        AmigaOS
        BeOS
        Dreamcast
        Nintendo DS
        PalmOS
        PlayStation 2
        PlayStation Portable
        RISC OS
        Symbian

The Dreamcast port does not support The Curse of Monkey Island, nor The Dig.
The PalmOS port does not support The Curse of Monkey Island, Beneath a Steel
Sky, nor either Simon the Sorcerer 1 or 2. The Dig will only work on some
Palm devices (those with a large dynamic heap).

In the Macintosh port, the right mouse button is emulated via Cmd-Click (that
is, you click the mouse button while holding the Command/Apple/Propeller key).

For the following platforms, custom backends were supported at one point
but currently are not being maintained (usually due to lack of a qualified
maintainer). In some cases (e.g. Linux), the standard SDL support works
instead.

        Linux           (includes iPAQs running Linux)
        MorphOS
        GP32

We have reports about unofficial ports to the following platforms. Please
note that these are not made by us, so we neither endorse nor support them.
Use at your own risk!

        PlayStation 3
        Xbox
        Xbox 360


5.0) Running ScummVM:
---- ----------------
Before you run the engine, you need to put the game's data files 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 data files.

Please note that by default, ScummVM will save games in the directory
it is executed from, so you should refrain from running it from more than
one location. Further information, including how to specify a specific save
directory to avoid this issue, are in section 6.0.

ScummVM can be launched directly by running the executable. In this case,
the built-in launcher will activate. From this, you can add games (click
'Add Game'), or launch games which have already been configured.

ScummVM can also be launched into a game directly using Command Line
arguments -- see the next section.


5.1) Command Line Options:
---- ---------------------

  Usage: scummvm [OPTIONS]... [GAME]

  [GAME]                   Short name of game to load. For example, 'monkey'
                           for Monkey Island. This can be either a built-in
                           gameid, or a user configured target.

  -v, --version            Display ScummVM version information and exit
  -h, --help               Display a brief help text and exit
  -z, --list-games         Display list of supported games and exit
  -t, --list-targets       Display list of configured targets and exit

  -c, --config=CONFIG      Use alternate configuration file
  -p, --path=PATH          Path to where the game is installed
  -x, --save-slot[=NUM]    Savegame slot to load (default: autosave)
  -f, --fullscreen         Force full-screen mode
  -F, --no-fullscreen      Force windowed mode
  -g, --gfx-mode=MODE      Select graphics scaler (see also section 5.3)
  --gui-theme=THEME        Select GUI theme (default, modern, classic)
  --themepath=PATH         Path to where GUI themes are stored
  -e, --music-driver=MODE  Select music driver (see also section 7.0)
  -q, --language=LANG      Select language (see also section 5.2)
  -m, --music-volume=NUM   Set the music volume, 0-255 (default: 192)
  -s, --sfx-volume=NUM     Set the sfx volume, 0-255 (default: 192)
  -r, --speech-volume=NUM  Set the voice volume, 0-255 (default: 192)
  --midi-gain=NUM          Set the gain for MIDI playback, 0-1000 (default: 100)
                           (only supported by some MIDI drivers)
  -n, --subtitles          Enable subtitles (use with games that have voice)
  -b, --boot-param=NUM     Pass number to the boot script (boot param)
  -d, --debuglevel=NUM     Set debug verbosity level
  -u, --dump-scripts       Enable script dumping if a directory called 'dumps'
                           exists in the current directory

  --cdrom=NUM              CD drive to play CD audio from (default: 0 = first
                           drive)
  --joystick[=NUM]         Enable joystick input (default: 0 = first joystick)
  --platform=WORD          Specify version of game (allowed values: 2gs, 3do,
                           acorn, amiga, atari, c64, fmtowns, mac, nes, pc,
                           pce, segacd, windows)
  --savepath=PATH          Path to where savegames are stored
  --soundfont=FILE         Select the SoundFont for MIDI playback (Only
                           supported by some MIDI drivers)
  --multi-midi             Enable combination of Adlib and native MIDI
  --native-mt32            True Roland MT-32 (disable GM emulation)
  --enable-gs              Enable Roland GS mode for MIDI playback
  --output-rate=RATE       Select output sample rate in Hz (e.g. 22050)
  --aspect-ratio           Enable aspect ratio correction
  --render-mode=MODE       Enable additional render modes (cga, ega, hercGreen,
                           hercAmber, amiga)

  --alt-intro              Use alternative intro for CD versions of Beneath a
                           Steel Sky and Flight of the Amazon Queen
  --copy-protection        Enable copy protection in games, when
                           ScummVM disables it by default.
  --demo-mode              Start demo mode of Maniac Mansion (Classic version)
  --tempo=NUM              Set music tempo (in percent, 50-200) for SCUMM games
                           (default: 100)
  --talkspeed=NUM          Set talk speed for games


The meaning of most long options (that is, those options starting with a
double-dash) can be inverted by prefixing them with "no-". For example,
--no-aspect-ratio will turn aspect ratio correction off. This is useful
if you want to override a setting in the configuration file.

The short game name ('game target') you see at the end of the command
line specifies which game is started. It either corresponds to an arbitrary
user defined target (from the configuration file), or to a built-in gameid.
A brief list of the latter can be found in section 3.0.

Examples:
 * Win32:
  Running Monkey Island, fullscreen, from a hard disk:
   C:\Games\LucasArts\scummvm.exe -f -pC:\Games\LucasArts\monkey\ monkey
  Running Full Throttle from CD, fullscreen and with subtitles enabled:
   C:\Games\LucasArts\scummvm.exe -f -n -pD:\resource\ ft

 * Unix:
  Running Monkey Island, fullscreen, from a hard disk:
   /path/to/scummvm -f -p/games/LucasArts/monkey/ monkey
  Running Full Throttle from CD, fullscreen and with subtitles enabled:
   /path/to/scummvm -f -n -p/cdrom/resource/ ft


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

Note that with the exception of Beneath a Steel Sky, Broken Sword 1, TODO,
using this option does *not* change the language of the game (which usually
is hardcoded), but rather is only used to select the appropriate font (e.g.
for a German version of a game, one containing umlauts).

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

The Dig
        jp  - Japanese
        zh  - Chinese
        kr  - Korean

The 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

Broken Sword 1
        en  - English (default)
        de  - German
        fr  - French
        it  - Italian
        es  - Spanish
        pt  - Portuguese
        cz  - Czech

Simon the Sorcerer 1 and 2
        en  - English (default)
        de  - German
        fr  - French
        it  - Italian
        es  - Spanish
        hb  - Hebrew
        pl  - Polish
        ru  - Russian


5.3) 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. These filters take the original game graphics, and scale it by a
certain fixed factor (usually 2x or 3x) before displaying them to you.
So for example, if the game originally run at a resolution of 320x200
(typical for most of the SCUMM games), then using a filter with scale
factor 2x will effectively yield 640x400 graphics. Likewise with a
3x filter you will get 960x600.

They are:
        1x         - No filtering, no scaling. Fastest.
        2x         - No filtering, factor 2x (default for non 640x480 games).
        3x         - No filtering, factor 3x.
        2xsai      - 2xSAI filter, factor 2x.
        super2xsai - Enhanced 2xSAI filtering, factor 2x.
        supereagle - Less blurry than 2xSAI, but slower. Factor 2x.
        advmame2x  - Doesn't rely on blurring like 2xSAI, fast. Factor 2x.
        advmame3x  - Doesn't rely on blurring like 2xSAI, fast. Factor 3x.
        hq2x       - Very nice high quality filter but slow. Factor 2x.
        hq3x       - Very nice high quality filter but slow. Factor 3x.
        tv2x       - Interlace filter, tries to emulate a TV. Factor 2x.
        dotmatrix  - Dot matrix effect. Factor 2x.

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

    scummvm -gadvmame2x monkey2

Note #1: Not all backends support all (or even any) of the filters listed above;
some may support additional ones. The filters listed above are those supported
by 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 FM-TOWNS version of Zak McKracken uses an original resolution
of 320x240, hence for this game scalers will scale to 640x480 or 960x720.
Likewise, games that originally were using 640x480 (such as COMI or Broken Sword)
will be scaled to 1280x960 and 1920x1440.


5.4) Hot Keys:
---- ---------
TODO
TODO: Rework this section to clearly state which hotkeys are implemented in *all*
TODO  game (and for which backends).
TODO: It would also be nice to add information about control on devices w/o a keyboard;
TODO  I.e. document how input on DC, DS, PSP, PS2, PalmOS, WinCE, ... works for each game
TODO  Or at the very least give points as to were one can read up on these.
TODO

ScummVM supports various in-game hotkeys. They differ between SCUMM games and
other games.

    Common:
        Cmd-q                  - Quit (Mac OS X)
        Ctrl-q                 - Quit (other unices including Linux)
        Ctrl-z OR Alt-x        - Quit (other platforms)
        Keyboard Arrow Keys    - Simulate mouse movement
        Ctrl-f                 - Toggle fast mode
        Ctrl-m                 - Toggle mouse capture
        Ctrl-Alt 1-8           - Switch between graphics filters
        Ctrl-Alt + and -       - Increase/Decrease the scale factor
        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
        Alt-Enter              - Toggles full screen/windowed

    SCUMM:
        Ctrl 0-9 and Alt 0-9   - Load and save game state
        Ctrl-d                 - Starts the debugger
        Ctrl-g                 - Runs in really REALLY fast mode
        Ctrl-t                 - Switch been 'Speech only',
                                 'Speech and Subtitles' and 'Subtitles only'
        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
        Alt-F5                 - Displays the original save/load box, if the
                                 game has one. This is not intended for saving
                                 or loading a game, and may even crash ScummVM
                                 in some games, but it is currently the only
                                 way to see your IQ points in Indiana Jones and
                                 the Last Crusade without dying.
        Space                  - Pauses
        Period (.)             - Skips current line of text in some games
        Enter                  - Simulate left mouse button press
        Tab                    - Simulate right mouse button press

    Beneath a Steel Sky:
        Ctrl-d                 - Starts the debugger
        Ctrl-g                 - Runs in really REALLY fast mode
        F5                     - Displays a save/load box
        Escape                 - Skips the game intro
        Period (.)             - Skips current line of text

    Broken Sword 1:
        F5 or ESC              - Displays save/load box

    Broken Sword 2:
        Ctrl-d                 - Starts the debugger
        Ctrl-f                 - Toggle fast mode
        c                      - Display the credits
        p                      - Pauses

    Flight of the Amazon Queen:
        Ctrl-d                 - Starts the debugger
        F1                     - Use Journal (saving/loading)
        F11                    - Quicksave
        F12                    - Quickload
        Escape                 - Skips cutscenes
        Space                  - Skips current line of text

    Simon the Sorcerer 1 and 2:
        Ctrl 0-9 and Alt 0-9   - Load and save game state
        Ctrl-d                 - Starts the debugger
        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
        p                      - Pauses
        t                      - Switch between speech and subtitles
        v                      - Switch between subtitles only and
                                 combined speech and subtitles
                                 [Simon the Sorcerer 2 only]

    The Feeble Files
        Ctrl-d                 - Starts the debugger
        F7                     - Switch characters
        F9                     - Hitbox names on/off
        s                      - Sound effects on/off
        b                      - Background sounds on/off
        p                      - Pauses
        t                      - Switch between speech and subtitles
        v                      - Switch between subtitles only and
                                 combined speech and subtitles

    The Legend of Kyrandia:
        Ctrl 0-9 and Alt 0-9   - Load and save game state
        Ctrl-d                 - Starts the debugger

Note that using ctrl-f or ctrl-g is not recommended: games can crash when
being run faster than their normal speed, as scripts will lose synchronisation.

Ctrl-f is not supported by the Broken Sword games.


6.0) Savegames:
---- ----------
Savegames are by default put in the current directory on some platforms and
preset directories on others.  You can specify the save in the config file by
setting the savepath parameter. See the example config file later in this
readme.

The platforms that currently have a different default directory are:
        Mac OS X:     $HOME/Documents/ScummVM Savegames/
        Other unices: $HOME/.scummvm/


6.1) Autosaves:
---- ----------
For some games (namely "Beneath a Steel Sky", "Flight of the Amazon
Queen" and all SCUMM games), ScummVM will by default automatically
save the current state every five minutes (adjustable via the
"autosave_period" config setting). For the SCUMM engine, it will save
in Slot 0. This savestate can then be loaded again via Ctrl-0, or the
F5 menu.


7.0) Music and Sound:
---- ----------------

On most operating systems and for most games, ScummVM will by default
use Adlib emulation for music playback. MIDI may not be available on
all operating systems or may need manual configuration. If you want to
use  MIDI, you have several different choices of output, depending on
your operating system and configuration.

        null       - Null output. Don't play any music.

        adlib      - Internal Adlib emulation (default)
        fluidsynth - FluidSynth MIDI emulation
        mt32       - Internal MT-32 emulation
        pcjr       - Internal PCjr emulation (only usable in SCUMM games)
        pcspk      - Internal PC Speaker emulation
        towns      - Internal FM-TOWNS YM2612 emulation
                     (only usable in SCUMM FM-TOWNS games)

        alsa       - Output using ALSA sequencer device. See below.
        core       - CoreAudio sound, for Mac OS X users.
        coremidi   - CoreMIDI sound, for Mac OS X users. Use only if you have
                     a hardware MIDI synthesizer.
        qt         - Quicktime sound, for Macintosh users.
        seq        - Use /dev/sequencer for MIDI, *nix users. See below.
        windows    - Windows MIDI. Uses built-in sequencer, for Windows users

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

    scummvm -eadlib monkey2


7.1) 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.


7.2) Playing sound with FluidSynth MIDI emulation:
---- ----------------------------------------------
If ScummVM was build with libfluidsynth support it will be able to play MIDI
music through the FluidSynth driver. You will have to specify a SoundFont to
use, however.

Since the default output volume from FluidSynth can be fairly low, ScummVM will
set the gain by default to get a stronger signal. This can be further adjusted
using the --midi-gain command-line option, or the "midi_gain" config file
setting.

The setting can take any value from 0 through 1000, with the default being 100.
(This corresponds to FluidSynth's gain settings of 0.0 through 10.0, which are
presumably measured in decibel.)

NOTE: The processor requirements for FluidSynth can be fairly high in some
cases. A fast CPU is recommended.


7.3) Playing sound with MT-32 emulation:
---- -----------------------------------
Some games which contain MIDI music data also have improved tracks designed
for the MT-32 sound module. ScummVM can now emulate this device, however you
must provide original MT-32 ROMs to make it work:

MT32_PCM.ROM     - IC21 (512KB)
MT32_CONTROL.ROM - IC26 (32KB) and IC27 (32KB), interleaved byte-wise

Place these ROMs in the game directory, in your extrapath, or in the directory
where your ScummVM executable resides.

You don't need to specify --native-mt32 with this driver, as it automatically
gets turned on.

NOTE: The processor requirements for the emulator are quite high; a fast CPU is
strongly recommended.


7.4) Playing sound with MIDI emulation:
---- ----------------------------------
Some games (such as Sam & Max) only contain MIDI music data.  This once
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, FluidSynth MIDI emulation or MT-32 emulation using the
-eadlib, -efluidsynth or -emt32 options respectively.  However, if you are
capable of using native MIDI, we recommend using one of the MIDI modes below
for best sound.


7.5) 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.


7.5.1) Using MIDI options to customize Native MIDI output:
------ ---------------------------------------------------
ScummVM supports a variety of MIDI modes, depending on the capabilities
of your MIDI device.

If --native-mt32 is specified, ScummVM will treat your device as a real
MT-32. Because the instrument mappings and system exclusive commands of
the MT-32 vary from those of General MIDI devices, you should only
enable this option if you are using an actual Roland MT-32, LAPC-I, CM-64,
CM-32L, CM-500, or GS device with an MT-32 map.

If --enable-gs is specified, ScummVM will initialize your GS-compatible
device with settings that mimic the MT-32's reverb, (lack of) chorus,
pitch bend sensitivity, etc. If it is specified in conjunction with
--native-mt32, ScummVM will select the MT-32-compatible map and drumset on
your GS device. This setting works better than default GM or GS emulation
with games that do not have custom instrument mappings (Loom and Monkey1).
You should only specify both settings if you are using a GS device that
has an MT-32 map, such as an SC-55, SC-88, SC-88 Pro, SC-8820, SC-8850, etc.
Please note that --enable-gs is automatically disabled in both DOTT and
Samnmax, since they use General MIDI natively.

If neither of the above settings is enabled, ScummVM will initialize your
device in General MIDI mode and use GM emulation in games with MT-32
soundtracks.

Some games contain sound effects that are exclusive to the Adlib soundtrack.
For these games, you may wish to specify --multi-midi in order to combine
MIDI music with Adlib sound effects.


7.6.0) 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 -- for example, to
/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.


7.6.1) 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 or the config file parameter
alsa_port to your sequencer port. The default is "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, there are two options: FluidSynth
and TiMidity. We recommend FluidSynth, as on many systems TiMidity will 'lag'
behind music. This is very noticeable in iMUSE-enabled games, which use fast
and dynamic music transitions. Running TiMidity as root will allow it to
setup real time priority, which may reduce music lag.

Asking TiMidity to become an ALSA sequencer:
  timidity -iAqqq -B2,8 -Os1S -s 44100 &
(If you get distorted output with this setting, you can try dropping the
-B2,8 or changing the value.)

Asking FluidSynth to become an ALSA sequencer (using SoundFonts):
  fluidsynth -m alsa_seq /path/to/8mbgmsfx.sf2

Once either TiMidity or FluidSynth are running, use the 'aconnect -o -l'
command as described earlier in this section.


7.7.0) 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 will need to rip the file from the CD as a WAV file,
then encode the MP3 files in constant bit rate. This can be done with the
following LAME command line:

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


7.7.1) 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 will need to rip the files from the CD as a WAV
file, then encode the vorbis files. 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 track1.wav


7.7.2) Using Flac files for CD audio:
------ ------------------------------------
Use flac or some other flac encoder to encode the audio tracks to files.
Name the files track1.flac track2.flac etc. In your filesystem only allows
three letter extensions, name the files track1.fla track2.fla etc.
ScummVM must be compiled with flac support to use this option. You will need to
rip the files from the CD as a WAV file, then encode the flac files. This can
be done with the following flac command line:

  flac --best track1.wav

Remember that the quality is always the same, varying encoder options will only
affect the encoding time and resulting filesize.


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

  compress_scumm_sou monster.sou

Eventually you will have a much smaller monster.so3 file, copy this file
to your game directory. You can safely remove the monster.sou file.


7.7.4) Compressing MONSTER.SOU with Ogg Vorbis:
------ ----------------------------------------
As above, but ScummVM must be compiled with OGG support. Run:

  compress_scumm_sou --vorbis monster.sou

This should produce a smaller monster.sog file, which you should copy to your
game directory. Ogg encoding may take a considerable longer amount of time
than MP3, so have a good book handy.


7.7.5) Compressing MONSTER.SOU with Flac:
------ ----------------------------------------
As above, but ScummVM must be compiled with Flac support. Run:

  compress_scumm_sou --flac --best -b 1152 monster.sou

This should produce a smaller monster.sof file, which you should copy to your
game directory. Remember that the quality is always the same, varying encoder
options will only affect the encoding time and resulting  filesize. Playing
with the blocksize (-b <value>), has the biggest impact on the resulting
filesize -- 1152 seems to be a good value for those kind of soundfiles. Be sure
to read the encoder documentation before you use other values.


7.7.6) Compressing sfx/speech in Simon the Sorcerer and The Feeble Files
------ -----------------------------------------------------------------
Use our compress_agos utility from the scummvm-tools package to perform this
task. You can choose between multiple target formats, but note that you can
only use each if ScummVM was compiled with the respective decoder support
enabled.

  compress_agos effects     (For Acorn CD version of Simon 1)
  compress_agos simon       (For Acorn CD version of Simon 1)
  compress_agos effects.voc (For DOS CD version of Simon 1)
  compress_agos simon.voc   (For DOS CD version of Simon 1)
  compress_agos simon.wav   (For Windows CD version of Simon 1)
  compress_agos simon2.voc  (For DOS CD version of Simon 2)
  compress_agos simon2.wav  (For Windows CD version of Simon 2)
  compress_agos mac         (For Macintosh version of Simon 2)

  compress_agos voices1.wav (For Windows 2CD/4CD version of Feeble)
  compress_agos voices2.wav (For Windows 2CD/4CD version of Feeble)
  compress_agos voices3.wav (For Windows 4CD version of Feeble)
  compress_agos voices4.wav (For Windows 4CD version of Feeble)

For Ogg Vorbis add --vorbis to the options, i.e.

  compress_agos --vorbis

For Flac add --flac and optional parameters, i.e.

  compress_agos --flac --best -b 1152

Eventually you will have a much smaller *.mp3, *.ogg or *.fla file, copy this
file to your game directory. You can safely remove the old file.


7.7.7) Compressing speech/music in Broken Sword 1
------ ------------------------------------------
The compress_sword1 tool from the scummvm-tools package can encode music and
speech to MP3 as well as Ogg Vorbis.
The easiest way to encode the files is simply copying the executable into your
BS1 directory (together with the lame encoder) and run it from there.
This way, it will automatically encode everything to MP3.
Afterwards, you can manually remove the SPEECH?.CLU files and the wave music
files.

Running "compress_sword1 --vorbis" will compress the files using Ogg Vorbis
instead of MP3.

Use "compress_sword1 --help" to get a full list of the options.


7.7.8) Compressing speech/music in Broken Sword 2
------ ------------------------------------------
Use our compress_sword2 utility from the scummvm-tools package to perform this
task. You can choose between multiple target formats, but note  that you can
only use each if ScummVM was compiled with the respective decoder support
enabled.

  compress_sword2 speech1.clu
  compress_sword2 music1.clu

For Ogg Vorbis add --vorbis to the options, i.e.

  compress_sword2 --vorbis

Eventually you will have a much smaller *.cl3 or *.clg file, copy this file to
your game directory. You can safely remove the old file.

It is possible to use Flac compression by adding the --flac option. However,
the resulting *.clf file will actually be larger than the original.

Please note that compress_sword2 will only work with the four speech/music
files in Broken Sword 2. It will not work with any of the other *.clu files,
nor will it work with the speech files from Broken Sword 1.


7.8) Output sample rate:
---- -------------------
The output sample rate tells ScummVM how many sound samples to play per channel
per second. There is much that could be said on this subject, but most of it
would be irrelevant here. The short version is that for most games 22050 Hz is
fine, but in some cases 44100 Hz is preferable. On extremely low-end systems
you may want to use 11025 Hz, but it's unlikely that you have to worry about
that.

To elaborate, most of the sounds ScummVM has to play were sampled at either
22050 Hz or 11025 Hz. Using a higher sample rate will not magically improve the
quality of these sounds. Hence, 22050 Hz is fine.

Some games use CD audio. If you use compressed files for this, they are
probably sampled at 44100 Hz, so for these games that may be a better choice of
sample rate.

When using the Adlib, FM Towns, PC Speaker or IBM PCjr music drivers, ScummVM
is responsible for generating the samples. Usually 22050 Hz will be plenty for
these, but there is at least one piece of Adlib music in Beneath a Steel Sky
that will sound a lot better at 44100 Hz.

Using frequencies in between is not recommended. For one thing, your sound card
may not support it. In theory, ScummVM should fall back on a sensible frequency
in that case, but don't count on it. More importantly, ScummVM has to resample
all sounds to its output frequency. This is much easier to do well if the
output frequency is a multiple of the original frequency.


8.0) 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\

        [sky]
        path=C:\games\SteelSky\

        [germansky]
        gameid=sky
        language=de
        path=C:\games\SteelSky\
        description=Beneath a Steel Sky w/ German subtitles

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

        [tentacle]
        path=C:\tentacle\
        subtitles=true
        music_volume=40
        sfx_volume=255

        [loomcd]
        cdrom=1
        path=C:\loom\
        talkspeed=5
        savepath=C:\loom\saves\

        [monkey2]
        path=C:\amiga_mi2\
        music_driver=windows

The following keywords are recognized:

        path            string   The path to where a game's data files are
        autosave_period number   The seconds between autosaving (default: 300)
        save_slot       number   The savegame number to load on startup.
        savepath        string   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, us, de, fr, it, pt, es,
                                 jp, zh, kr, se, gb, hb, cz, ru)
        speech_mute     bool     If true, speech is muted
        subtitles       bool     Set to true to enable subtitles.
        talkspeed       number   Text speed

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

        cdrom           number   Number of CD-ROM unit to use for audio. If
                                 negative, don't even try to access the CD-ROM.
        joystick_num    number   Number of joystick device to use for input
        music_driver    string   The music engine to use.
        output_rate     number   The output sample rate to use, in Hz. Sensible
                                 values are 11025, 22050 and 44100.
        alsa_port       string   Port to use for output when using the
                                 ALSA music driver.
        music_volume    number   The music volume setting (0-255)
        multi_midi      bool     If true, enable combination Adlib and native
                                 MIDI.
        soundfont       string   The SoundFont to use for MIDI playback. (Only
                                 supported by some MIDI drivers.)
        native_mt32     bool     If true, disable GM emulation and assume that
                                 there is a true Roland MT-32 available.
        enable_gs       bool     If true, enable Roland GS-specific features to
                                 enhance GM emulation. If native_mt32 is also
                                 true, the GS device will select an MT-32 map
                                 to play the correct instruments.
        sfx_volume      number   The sfx volume setting (0-255)
        tempo           number   The music tempo (50-200) (default: 100)
        speech_volume   number   The speech volume setting (0-255)
        midi_gain       number   The MIDI gain (0-1000) (default: 100) (Only
                                 supported by some MIDI drivers.)

        copy_protection bool     Enable copy protection in SCUMM games, when
                                 ScummVM disables it by default.
        demo_mode       bool     Start demo in Maniac Mansion
        alt_intro       bool     Use alternative intro for CD versions of
                                 Beneath a Steel Sky and Flight of the Amazon
                                 Queen

        boot_param      number   Pass this number to the boot script

Broken Sword 2 adds the following non-standard keywords:

        gfx_details     number   Graphics details setting (0-3)
        music_mute      bool     If true, music is muted
        object_labels   bool     If true, object labels are enabled
        reverse_stereo  bool     If true, stereo channels are reversed
        sfx_mute        bool     If true, sound effects are muted

Flight of the Amazon Queen adds the following non-standard keywords:

        music_mute      bool     If true, music is muted
        sfx_mute        bool     If true, sound effects are muted

Simon the Sorcerer 1 and 2 add the following non-standard keywords:

        music_mute      bool     If true, music is muted
        sfx_mute        bool     If true, sound effects are muted

The Legend of Kyrandia adds the following non-standard keyword:

        walkspeed       int      The walk speed (0-4)


9.0) 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 recent versions of 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; likewise you will need the
appropriate libraries for Ogg Vorbis and FLAC compressed sound. For
MPEG2 support, libmpeg2 is required. For compressed save states, zlib is required.

Some parts of ScummVM, particularly scalers, have highly optimized versions
written in assembler. If you wish to use this option, you will need to install
nasm assembler (see http://nasm.sf.net). Note, that currently we have only x86
MMX optimized versions, and they will not compile on other processors.

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).

TODO
TODO: The following lists is partially outdated, and incomplete.
TODO  We could either try to update it, and/or refer to the relevant
TODO  Wiki pages...
TODO

    GCC:
        * Type ./configure
        * Type make (or gmake, or gnumake, depending on what GNU make is
          called on your system) and hopefully ScummVM will compile for you.

    Microsoft Visual C++ 6.0:
        * Open the workspace, scummwm.dsw
        * Enter the path to the needed libraries and includes in
          Tools|Options|Directories
        * Now it should compile successfully.

    Microsoft Visual C++ 7.0:
        * Open the solution file scummwm.sln
        * Enter the path to the needed libraries and includes in
          Tools|Options|Projects|VC++ Directories
        * Now it should compile successfully.

    Windows Mobile with Microsoft eMbedded Visual C++ 3 or 4 :
        * Download SDL with additional Windows Mobile tweaks:
          http://arisme.free.fr/ports/SDL.php
        * Download additional third party libraries:
          http://arisme.free.fr/ports
        * Modify your include and library paths accordingly in EVC3/EVC4.
        * Open the ScummVM project dists\msevc4\PocketSCUMM.vcw
        * Modify the libraries and config parameters if necessary.
        * Now it should compile successfully.

    Debian GNU/Linux:
        * Install the packages 'build-essential', 'fakeroot', 'debhelper',
          and 'libsdl1.2-dev' on your system.
        * Install any of these packages (optional): 'libvorbis-dev' (for Ogg
          Vorbis support), 'libasound2-dev' (for ALSA sequencer support),
          'libmad0-dev' (for MAD MP3 support), 'zlib1g-dev' (for compressed
          saves support).
        * 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.
        * The SDL developer package for OS X available on the SDL web site is
          _not_ suitable. Rather, you require a unix-style build of SDL. One
          way to get that is to install SDL via Fink (http://fink.sf.net).
          Alternatively you could compile SDL manually from source using its
          unix build system (configure && make).
        * Type ./configure in the ScummVM directory
        * You can now type 'make' to create a command line binary.
        * To get a version you can run from Finder, type 'make bundle' which
          will create ScummVM.app (this only works out of the box if you
          installed SDL into /sw (as happens if you are using Fink). If you
          have installed SDL in another way, you will have to edit the Makefile).

    AmigaOS 4 (Cross-compiling with Cygwin):
        * Make sure that you have SDL installed, you may also need
          libogg, libvorbis, libvorbisfile, zlib, libmad.
        * Type ./configure --host=ppc-amigaos
        * If you got an error about sdl-config, use --with-sdl-prefix
          parameter to set the path.
        * Check 'config.mk' file and if everything seems to be fine:
        * Run 'make'.
        * Cross-compiling with Linux may be as easy.


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