-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
353 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
.Dd $Mdocdate: November 19 2020 $ | ||
.Dt FONTXY 1 | ||
.Os | ||
.Sh NAME | ||
.Nm FontXY | ||
.Nd adjust glyph dimensions inside SCUMM fonts | ||
.Sh SYNOPSIS | ||
.Nm FontXY | ||
.Cm i | ||
.Ar CHARFILE | ||
.Nm FontXY | ||
.Cm o | ||
.Ar CHARFILE | ||
.Sh DESCRIPTION | ||
The | ||
.Nm | ||
tool lets you adjust the relative size of each glyph inside a | ||
SCUMM character file. | ||
The mode of operation is chosen with one of the following options: | ||
.Bl -tag -width Ds | ||
.It Cm i | ||
Import glyph dimensions from a | ||
.Pa XY.txt | ||
file into the specified | ||
.Ar CHARFILE | ||
resource. | ||
.It Cm o | ||
Export glyph dimensions from the specified | ||
.Ar CHARFILE | ||
resource into a | ||
.Pa XY.txt | ||
file. | ||
.El | ||
.Pp | ||
.Ar CHARFILE | ||
must be a | ||
.Dq CHAR_* | ||
resource file, as extracted by | ||
.Xr scummrp 1 . | ||
.Pp | ||
Glyph dimensions are represented as a series of | ||
.Ql X;Y | ||
coordinates, relative to zero, each glyph being separated by a newline character. | ||
Empty glyphs are represented as empty lines. | ||
.Sh HISTORY | ||
The | ||
.Nm | ||
tool was written in 2006 by Thomas Combeleran for the ATP team, | ||
and was open-sourced in 2020 under an MIT license. | ||
.Sh CAVEATS | ||
Only Unix-type newline characters (LF) are currently supported. | ||
.Pp | ||
.Pa XY.txt | ||
pathname is hardcoded. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
.Dd $Mdocdate: November 19 2020 $ | ||
.Dt SCUMMFONT 1 | ||
.Os | ||
.Sh NAME | ||
.Nm scummfont | ||
.Nd transform SCUMM font files to bitmaps | ||
.Sh SYNOPSIS | ||
.Nm scummfont | ||
.Cm i | ||
.Ar FONTFILE | ||
.Ar image.bmp | ||
.Nm scummfont | ||
.Cm o | ||
.Ar FONTFILE | ||
.Ar image.bmp | ||
.Sh DESCRIPTION | ||
The | ||
.Nm | ||
tool transforms SCUMM font files between their internal format and a bitmap representation. | ||
The mode of operation is chosen with one of the following options: | ||
.Bl -tag -width Ds | ||
.It Cm i | ||
Import the content of an | ||
.Pa image.bmp | ||
bitmap file into the specified | ||
.Ar FONTFILE | ||
SCUMM resource, with a | ||
.Dq -new | ||
suffix added to it. | ||
.It Cm o | ||
Extract a font from a | ||
.Ar FONTFILE | ||
SCUMM resource into an | ||
.Pa image.bmp | ||
bitmap file. | ||
.El | ||
.Pp | ||
.Ar FONTFILE | ||
can either be a | ||
.Dq CHAR_* | ||
block extracted by | ||
.Xr scummrp 1 , | ||
or an LFL file. | ||
.Sh HISTORY | ||
The | ||
.Nm | ||
tool was written between 2003 and 2004 by Thomas Combeleran for the ATP team, | ||
and was open-sourced in 2020 under an MIT license. | ||
.Sh CAVEATS | ||
Only extremely simple bitmap files are supported. | ||
They're sometimes called BMP3 files or Windows 3.x bitmap files. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
.Dd $Mdocdate: November 19 2020 $ | ||
.Dt SCUMMRP 1 | ||
.Os | ||
.Sh NAME | ||
.Nm scummrp | ||
.Nd pack and unpack SCUMM game data resources | ||
.Sh SYNOPSIS | ||
.Nm scummrp | ||
.Fl i | ||
.Op Fl qvV | ||
.Op Fl t Ar tag | ||
.Fl g Ar gameid | ||
.Fl p Ar gamedir | ||
.Fl d Ar dumpdir | ||
.Nm scummrp | ||
.Fl o | ||
.Op Fl qvV | ||
.Op Fl t Ar tag | ||
.Fl g Ar gameid | ||
.Fl p Ar gamedir | ||
.Fl d Ar dumpdir | ||
.Nm scummrp | ||
.Fl L | ||
.Sh DESCRIPTION | ||
The | ||
.Nm | ||
tool imports and exports game data resources for SCUMM engine games. | ||
The mode of operation is chosen with one of the following options: | ||
.Bl -tag -width Ds | ||
.It Fl i | ||
Pack the content of a dump directory into game data files. | ||
.It Fl o | ||
Unpack resources from game data files to a dump directory. | ||
.It Fl L | ||
List all supported games with their respective | ||
.Ar gameid . | ||
If any other option is given, it will be ignored. | ||
.El | ||
.Pp | ||
The other options are as follows: | ||
.Bl -tag -width Dsgamedir | ||
.It Fl d Ar dumpdir | ||
The dump directory. | ||
Game content is represented as a hierarchy of multiple files and subdirectories. | ||
If it doesn't exist, the directory will be created. | ||
.It Fl g Ar gameid | ||
The ID of the game variant to pack or unpack, as returned | ||
by the output of | ||
.Fl L . | ||
.It Fl p Ar gamedir | ||
The path to the directory containing the resource files of the game. | ||
.It Fl q | ||
Quiet mode. | ||
Suppress informational output. | ||
.It Fl t Ar tag | ||
Only export/import game resources matching the specified | ||
.Ar tag . | ||
A tag is the internal name of a resource type inside SCUMM. | ||
It is usually a four-letter name, such as | ||
.Dq SCRP . | ||
.It Fl v | ||
Verbose mode. | ||
.It Fl V | ||
Same as | ||
.Fl v , | ||
but list resource names as they're being treated, too. | ||
.El | ||
.Sh EXAMPLES | ||
Dump all the resources of the original Monkey Island 2 game to the | ||
.Pa ./DUMP_MI2 | ||
directory: | ||
.Pp | ||
.Dl $ scummrp -o -g monkey2 -p /path/to/MI2 -d ./DUMP_MI2 | ||
.Pp | ||
Dump the script resources of the Talkie version of Loom: | ||
.Pp | ||
.Dl $ scummrp -o -g loomcd -p /path/to/LOOM -t SCRP -d ./DUMP_LOOM | ||
.Sh HISTORY | ||
The | ||
.Nm | ||
tool was written in 2003 by Thomas Combeleran for the ATP team, | ||
and was open-sourced in 2020 under an MIT license. | ||
.Sh CAVEATS | ||
On case-sensitive file systems, game data files must currently | ||
follow the DOS convention of being all-uppercase to be properly | ||
detected by | ||
.Nm . |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,161 @@ | ||
.Dd $Mdocdate: November 18 2020 $ | ||
.Dt SCUMMTR 1 | ||
.Os | ||
.Sh NAME | ||
.Nm scummtr | ||
.Nd import and export fan translations for SCUMM engine games | ||
.Sh SYNOPSIS | ||
.Nm scummtr | ||
.Fl i | ||
.Op Fl bcqvw | ||
.Op Fl l Ar language | ||
.Fl g Ar gameid | ||
.Fl p Ar gamedir | ||
.Fl f Ar input | ||
.Nm scummtr | ||
.Fl o | ||
.Op Fl bchHIqvw | ||
.Op Fl a Ar resource | ||
.Op Fl A Ar resource | ||
.Op Fl l Ar language | ||
.Fl g Ar gameid | ||
.Fl p Ar gamedir | ||
.Fl f Ar output | ||
.Nm scummtr | ||
.Fl L | ||
.Sh DESCRIPTION | ||
The | ||
.Nm | ||
tool imports and exports subtitles content for SCUMM engine games. | ||
The mode of operation is chosen with one of the following options: | ||
.Bl -tag -width Ds | ||
.It Fl i | ||
Import the content of a translation file to the game data files. | ||
.It Fl o | ||
Export the current subtitle content of a game to a translation file. | ||
.It Fl L | ||
List all supported games with their respective | ||
.Ar gameid . | ||
If any other option is given, it will be ignored. | ||
.El | ||
.Pp | ||
The other options are as follows: | ||
.Bl -tag -width Dslanguage | ||
.It Fl a Ar resource | ||
Protect the specified SCUMM resource types with extra padding, when | ||
exporting. | ||
.Pp | ||
Some game resources are created with a short name and use a longer | ||
name later in the game. | ||
By default, this must be handled with manual | ||
.Ql @ | ||
character padding, to prevent buffer errors when the rename happens | ||
during the game. | ||
The | ||
.Fl a | ||
option just applies extra padding to all specified resource types to | ||
make things easier, at the cost of increased memory usage. | ||
.Pp | ||
Valid resource types for the | ||
.Fl a | ||
option are: | ||
.Bl -tag -width Ds | ||
.It Ic a | ||
Pad all actor resources. | ||
.It Ic o | ||
Pad all object resources. | ||
.It Ic v | ||
Pad all verb resources. | ||
.El | ||
.It Fl A Ar resource | ||
Same as | ||
.Fl a , | ||
with variable IDs taken into account. | ||
.It Fl b | ||
Translation file will be handled in binary mode. | ||
.It Fl c | ||
Translation file will be handled as an ISO-8859-1 compatible file. | ||
Without | ||
.Fl c , | ||
non-ASCII characters will be handled as escape sequences. | ||
.Pp | ||
Note that each game variant only supported its own internal subset of | ||
the ISO-8859-1 (or Windows-1252) encoding. | ||
.It Fl f Ar file | ||
The translation file to be used for the import or export. | ||
.It Fl g Ar gameid | ||
The ID of the game variant to be translated, as returned | ||
by the output of | ||
.Fl L . | ||
.It Fl h | ||
Add line headers, when exporting. | ||
.It Fl H | ||
Use hexadecimal character codes, when exporting. | ||
.It Fl I | ||
Show instruction opcode, when exporting. | ||
.It Fl l Ar language | ||
V1 and V2 games only. | ||
The name of the language charset to be used for this translation. | ||
.Pp | ||
Possible values are: | ||
.Bl -tag -width Ds | ||
.It Ic de | ||
Original German charset. | ||
.It Ic en | ||
Original English charset. | ||
.It Ic fr | ||
Original French charset. | ||
.It Ic it | ||
Original Italian charset. | ||
.El | ||
.It Fl p Ar gamedir | ||
The path to the directory containing the resource files of the game. | ||
.It Fl q | ||
Quiet mode. | ||
Suppress informational output. | ||
.It Fl v | ||
Verbose mode. | ||
.It Fl w | ||
Translation files use Windows-type newline characters (CRLF). | ||
.Pp | ||
By default, | ||
.Nm | ||
only uses Unix-type newline characters (LF), which may be less | ||
compatible with older text editors. | ||
.El | ||
.Sh EXAMPLES | ||
Extract the subtitles of the original Monkey Island 2 game to an | ||
ISO-8859-1 file compatible with Notepad.exe: | ||
.Pp | ||
.Dl $ scummtr -o -c -w -g monkey2 -p /path/to/MI2 -f ./mi2_orig.txt | ||
.Pp | ||
Import a new French translation to the game files: | ||
.Pp | ||
.Dl $ scummtr -i -c -w -g monkey2 -p /path/to/MI2 -f ./mi2_fr.txt | ||
.Pp | ||
Export the subtitle content of a German Zak McKracken V1 game: | ||
.Pp | ||
.Dl $ scummtr -o -c -w -g zakv1 -l de -p /path/to/ZAKV1_DE -f ./zakv1_de.txt | ||
.Sh HISTORY | ||
The | ||
.Nm | ||
tool was written between 2003 and 2005 | ||
by Thomas Combeleran for the ATP team, | ||
and was open-sourced in 2020 under an MIT license. | ||
.Sh CAVEATS | ||
Your text editor must not remove trailing spaces or empty lines, | ||
otherwise you will have import errors. | ||
.Pp | ||
Since each game and each variant of each game had its own list of | ||
accepted characters, it is not possible to know if a character | ||
will be properly displayed without testing it in the game. | ||
See also | ||
.Xr scummfont 1 . | ||
.Pp | ||
Unicode files are not supported, and non-Roman languages need | ||
some extra work for convenient use. | ||
.Pp | ||
On case-sensitive file systems, game data files must currently | ||
follow the DOS convention of being all-uppercase to be properly | ||
detected by | ||
.Nm . |