mirror of
https://git.zap.org.au/git/trader.git
synced 2025-02-02 15:08:13 -05:00
Convert all text files to reStructuredText (ReST) format
The reStructuredText (ReST) format is still quite readable as raw text, and is much more capable than the myriad all-slightly-incompatible variants of Markdown.
This commit is contained in:
parent
34eadca382
commit
9414aa7ad6
580
COPYING
580
COPYING
@ -1,32 +1,39 @@
|
||||
**************************************************************************
|
||||
* *
|
||||
* Star Traders: A Game of Interstellar Trading *
|
||||
* Copyright (C) 1990-2019, John Zaitseff *
|
||||
* *
|
||||
**************************************************************************
|
||||
.. -*- mode: rst; coding: utf-8 -*-
|
||||
|
||||
The Star Traders game is free software that is distributed under the terms
|
||||
of the GNU General Public License. The actual copyright on this program
|
||||
("the Program", in the language of the License) belongs to John Zaitseff,
|
||||
although the text of the License itself belongs to the Free Software
|
||||
Foundation.
|
||||
============================================
|
||||
Star Traders: A Game of Interstellar Trading
|
||||
============================================
|
||||
|
||||
Even though the GNU General Public License does NOT require you to send
|
||||
your modifications back to the author, it is considered "good form" to do
|
||||
**Copyright © 1990–2019, John Zaitseff.**
|
||||
|
||||
The Star Traders game is free software that is distributed under the
|
||||
terms of the GNU General Public License. The actual copyright on this
|
||||
program (“the Program”, in the language of the License) belongs to John
|
||||
Zaitseff, although the text of the License itself belongs to the Free
|
||||
Software Foundation.
|
||||
|
||||
Even though the GNU General Public License does *not* require you to send
|
||||
your modifications back to the author, it is considered “good form” to do
|
||||
so, as this allows your modifications to be incorporated into future
|
||||
versions of the program, allowing others to benefit from them.
|
||||
|
||||
--------------------------------------------------------------------------
|
||||
|
||||
==========================
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
==========================
|
||||
--------------------------
|
||||
Version 3, 29 June 2007
|
||||
--------------------------
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
|
||||
| Copyright © 2007 Free Software Foundation, Inc.
|
||||
| https://fsf.org/
|
||||
|
||||
*Everyone is permitted to copy and distribute verbatim copies of this
|
||||
license document, but changing it is not allowed.*
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
========
|
||||
|
||||
The GNU General Public License is a free, copyleft license for software
|
||||
and other kinds of works.
|
||||
@ -34,43 +41,43 @@ and other kinds of works.
|
||||
The licenses for most software and other practical works are designed to
|
||||
take away your freedom to share and change the works. By contrast, the
|
||||
GNU General Public License is intended to guarantee your freedom to share
|
||||
and change all versions of a program--to make sure it remains free
|
||||
software for all its users. We, the Free Software Foundation, use the GNU
|
||||
General Public License for most of our software; it applies also to any
|
||||
other work released this way by its authors. You can apply it to your
|
||||
programs, too.
|
||||
and change all versions of a program—to make sure it remains free
|
||||
software for all its users. We, the Free Software Foundation, use the
|
||||
GNU General Public License for most of our software; it applies also to
|
||||
any other work released this way by its authors. You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not price.
|
||||
Our General Public Licenses are designed to make sure that you have the
|
||||
freedom to distribute copies of free software (and charge for them if you
|
||||
wish), that you receive source code or can get it if you want it, that you
|
||||
can change the software or use pieces of it in new free programs, and that
|
||||
you know you can do these things.
|
||||
wish), that you receive source code or can get it if you want it, that
|
||||
you can change the software or use pieces of it in new free programs, and
|
||||
that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to prevent others from denying you these
|
||||
rights or asking you to surrender the rights. Therefore, you have certain
|
||||
responsibilities if you distribute copies of the software, or if you
|
||||
modify it: responsibilities to respect the freedom of others.
|
||||
rights or asking you to surrender the rights. Therefore, you have
|
||||
certain responsibilities if you distribute copies of the software, or if
|
||||
you modify it: responsibilities to respect the freedom of others.
|
||||
|
||||
For example, if you distribute copies of such a program, whether gratis or
|
||||
for a fee, you must pass on to the recipients the same freedoms that you
|
||||
received. You must make sure that they, too, receive or can get the
|
||||
For example, if you distribute copies of such a program, whether gratis
|
||||
or for a fee, you must pass on to the recipients the same freedoms that
|
||||
you received. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
Developers that use the GNU GPL protect your rights with two steps: (1)
|
||||
assert copyright on the software, and (2) offer you this License giving
|
||||
you legal permission to copy, distribute and/or modify it.
|
||||
Developers that use the GNU GPL protect your rights with two steps:
|
||||
(1) assert copyright on the software, and (2) offer you this License
|
||||
giving you legal permission to copy, distribute and/or modify it.
|
||||
|
||||
For the developers' and authors' protection, the GPL clearly explains that
|
||||
there is no warranty for this free software. For both users' and authors'
|
||||
sake, the GPL requires that modified versions be marked as changed, so
|
||||
that their problems will not be attributed erroneously to authors of
|
||||
previous versions.
|
||||
For the developers’ and authors’ protection, the GPL clearly explains
|
||||
that there is no warranty for this free software. For both users’ and
|
||||
authors’ sake, the GPL requires that modified versions be marked as
|
||||
changed, so that their problems will not be attributed erroneously to
|
||||
authors of previous versions.
|
||||
|
||||
Some devices are designed to deny users access to install or run modified
|
||||
versions of the software inside them, although the manufacturer can do so.
|
||||
This is fundamentally incompatible with the aim of protecting users'
|
||||
versions of the software inside them, although the manufacturer can do
|
||||
so. This is fundamentally incompatible with the aim of protecting users’
|
||||
freedom to change the software. The systematic pattern of such abuse
|
||||
occurs in the area of products for individuals to use, which is precisely
|
||||
where it is most unacceptable. Therefore, we have designed this version
|
||||
@ -82,94 +89,103 @@ protect the freedom of users.
|
||||
Finally, every program is threatened constantly by software patents.
|
||||
States should not allow patents to restrict development and use of
|
||||
software on general-purpose computers, but in those that do, we wish to
|
||||
avoid the special danger that patents applied to a free program could make
|
||||
it effectively proprietary. To prevent this, the GPL assures that patents
|
||||
cannot be used to render the program non-free.
|
||||
avoid the special danger that patents applied to a free program could
|
||||
make it effectively proprietary. To prevent this, the GPL assures that
|
||||
patents cannot be used to render the program non-free.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
|
||||
TERMS AND CONDITIONS
|
||||
====================
|
||||
|
||||
0. Definitions.
|
||||
---------------
|
||||
|
||||
"This License" refers to version 3 of the GNU General Public License.
|
||||
“This License” refers to version 3 of the GNU General Public License.
|
||||
|
||||
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||
“Copyright” also means copyright-like laws that apply to other kinds of
|
||||
works, such as semiconductor masks.
|
||||
|
||||
"The Program" refers to any copyrightable work licensed under this
|
||||
License. Each licensee is addressed as "you". "Licensees" and
|
||||
"recipients" may be individuals or organizations.
|
||||
“The Program” refers to any copyrightable work licensed under this
|
||||
License. Each licensee is addressed as “you”. “Licensees” and
|
||||
“recipients” may be individuals or organizations.
|
||||
|
||||
To "modify" a work means to copy from or adapt all or part of the work in
|
||||
To “modify” a work means to copy from or adapt all or part of the work in
|
||||
a fashion requiring copyright permission, other than the making of an
|
||||
exact copy. The resulting work is called a "modified version" of the
|
||||
earlier work or a work "based on" the earlier work.
|
||||
exact copy. The resulting work is called a “modified version” of the
|
||||
earlier work or a work “based on” the earlier work.
|
||||
|
||||
A "covered work" means either the unmodified Program or a work based on
|
||||
A “covered work” means either the unmodified Program or a work based on
|
||||
the Program.
|
||||
|
||||
To "propagate" a work means to do anything with it that, without
|
||||
permission, would make you directly or secondarily liable for infringement
|
||||
under applicable copyright law, except executing it on a computer or
|
||||
modifying a private copy. Propagation includes copying, distribution
|
||||
(with or without modification), making available to the public, and in
|
||||
some countries other activities as well.
|
||||
To “propagate” a work means to do anything with it that, without
|
||||
permission, would make you directly or secondarily liable for
|
||||
infringement under applicable copyright law, except executing it on a
|
||||
computer or modifying a private copy. Propagation includes copying,
|
||||
distribution (with or without modification), making available to the
|
||||
public, and in some countries other activities as well.
|
||||
|
||||
To "convey" a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through a
|
||||
computer network, with no transfer of a copy, is not conveying.
|
||||
To “convey” a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through
|
||||
a computer network, with no transfer of a copy, is not conveying.
|
||||
|
||||
An interactive user interface displays "Appropriate Legal Notices" to the
|
||||
An interactive user interface displays “Appropriate Legal Notices” to the
|
||||
extent that it includes a convenient and prominently visible feature that
|
||||
(1) displays an appropriate copyright notice, and (2) tells the user that
|
||||
(1) displays an appropriate copyright notice, and (2) tells the user that
|
||||
there is no warranty for the work (except to the extent that warranties
|
||||
are provided), that licensees may convey the work under this License, and
|
||||
how to view a copy of this License. If the interface presents a list of
|
||||
user commands or options, such as a menu, a prominent item in the list
|
||||
meets this criterion.
|
||||
|
||||
1. Source Code.
|
||||
|
||||
The "source code" for a work means the preferred form of the work for
|
||||
making modifications to it. "Object code" means any non-source form of a
|
||||
1. Source Code.
|
||||
---------------
|
||||
|
||||
The “source code” for a work means the preferred form of the work for
|
||||
making modifications to it. “Object code” means any non-source form of a
|
||||
work.
|
||||
|
||||
A "Standard Interface" means an interface that either is an official
|
||||
A “Standard Interface” means an interface that either is an official
|
||||
standard defined by a recognized standards body, or, in the case of
|
||||
interfaces specified for a particular programming language, one that is
|
||||
widely used among developers working in that language.
|
||||
|
||||
The "System Libraries" of an executable work include anything, other than
|
||||
the work as a whole, that (a) is included in the normal form of packaging
|
||||
a Major Component, but which is not part of that Major Component, and (b)
|
||||
serves only to enable use of the work with that Major Component, or to
|
||||
implement a Standard Interface for which an implementation is available to
|
||||
the public in source code form. A "Major Component", in this context,
|
||||
means a major essential component (kernel, window system, and so on) of
|
||||
the specific operating system (if any) on which the executable work runs,
|
||||
or a compiler used to produce the work, or an object code interpreter used
|
||||
to run it.
|
||||
The “System Libraries” of an executable work include anything, other than
|
||||
the work as a whole, that (a) is included in the normal form of packaging
|
||||
a Major Component, but which is not part of that Major Component, and
|
||||
(b) serves only to enable use of the work with that Major Component, or
|
||||
to implement a Standard Interface for which an implementation is
|
||||
available to the public in source code form. A “Major Component”, in
|
||||
this context, means a major essential component (kernel, window system,
|
||||
and so on) of the specific operating system (if any) on which the
|
||||
executable work runs, or a compiler used to produce the work, or an
|
||||
object code interpreter used to run it.
|
||||
|
||||
The "Corresponding Source" for a work in object code form means all the
|
||||
The “Corresponding Source” for a work in object code form means all the
|
||||
source code needed to generate, install, and (for an executable work) run
|
||||
the object code and to modify the work, including scripts to control those
|
||||
activities. However, it does not include the work's System Libraries, or
|
||||
general-purpose tools or generally available free programs which are used
|
||||
unmodified in performing those activities but which are not part of the
|
||||
work. For example, Corresponding Source includes interface definition
|
||||
files associated with source files for the work, and the source code for
|
||||
shared libraries and dynamically linked subprograms that the work is
|
||||
specifically designed to require, such as by intimate data communication
|
||||
or control flow between those subprograms and other parts of the work.
|
||||
the object code and to modify the work, including scripts to control
|
||||
those activities. However, it does not include the work’s System
|
||||
Libraries, or general-purpose tools or generally available free programs
|
||||
which are used unmodified in performing those activities but which are
|
||||
not part of the work. For example, Corresponding Source includes
|
||||
interface definition files associated with source files for the work, and
|
||||
the source code for shared libraries and dynamically linked subprograms
|
||||
that the work is specifically designed to require, such as by intimate
|
||||
data communication or control flow between those subprograms and other
|
||||
parts of the work.
|
||||
|
||||
The Corresponding Source need not include anything that users can
|
||||
regenerate automatically from other parts of the Corresponding Source.
|
||||
|
||||
The Corresponding Source for a work in source code form is that same work.
|
||||
The Corresponding Source for a work in source code form is that same
|
||||
work.
|
||||
|
||||
|
||||
2. Basic Permissions.
|
||||
---------------------
|
||||
|
||||
All rights granted under this License are granted for the term of
|
||||
copyright on the Program, and are irrevocable provided the stated
|
||||
@ -181,67 +197,73 @@ rights of fair use or other equivalent, as provided by copyright law.
|
||||
|
||||
You may make, run and propagate covered works that you do not convey,
|
||||
without conditions so long as your license otherwise remains in force.
|
||||
You may convey covered works to others for the sole purpose of having them
|
||||
make modifications exclusively for you, or provide you with facilities for
|
||||
running those works, provided that you comply with the terms of this
|
||||
License in conveying all material for which you do not control copyright.
|
||||
Those thus making or running the covered works for you must do so
|
||||
exclusively on your behalf, under your direction and control, on terms
|
||||
that prohibit them from making any copies of your copyrighted material
|
||||
outside their relationship with you.
|
||||
You may convey covered works to others for the sole purpose of having
|
||||
them make modifications exclusively for you, or provide you with
|
||||
facilities for running those works, provided that you comply with the
|
||||
terms of this License in conveying all material for which you do not
|
||||
control copyright. Those thus making or running the covered works for
|
||||
you must do so exclusively on your behalf, under your direction and
|
||||
control, on terms that prohibit them from making any copies of your
|
||||
copyrighted material outside their relationship with you.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under the
|
||||
conditions stated below. Sublicensing is not allowed; section 10 makes it
|
||||
unnecessary.
|
||||
conditions stated below. Sublicensing is not allowed; section 10 makes
|
||||
it unnecessary.
|
||||
|
||||
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||
|
||||
No covered work shall be deemed part of an effective technological measure
|
||||
under any applicable law fulfilling obligations under article 11 of the
|
||||
WIPO copyright treaty adopted on 20 December 1996, or similar laws
|
||||
3. Protecting Users’ Legal Rights From Anti-Circumvention Law.
|
||||
--------------------------------------------------------------
|
||||
|
||||
No covered work shall be deemed part of an effective technological
|
||||
measure under any applicable law fulfilling obligations under article 11
|
||||
of the WIPO copyright treaty adopted on 20 December 1996, or similar laws
|
||||
prohibiting or restricting circumvention of such measures.
|
||||
|
||||
When you convey a covered work, you waive any legal power to forbid
|
||||
circumvention of technological measures to the extent such circumvention
|
||||
is effected by exercising rights under this License with respect to the
|
||||
covered work, and you disclaim any intention to limit operation or
|
||||
modification of the work as a means of enforcing, against the work's
|
||||
users, your or third parties' legal rights to forbid circumvention of
|
||||
modification of the work as a means of enforcing, against the work’s
|
||||
users, your or third parties’ legal rights to forbid circumvention of
|
||||
technological measures.
|
||||
|
||||
4. Conveying Verbatim Copies.
|
||||
|
||||
You may convey verbatim copies of the Program's source code as you receive
|
||||
it, in any medium, provided that you conspicuously and appropriately
|
||||
publish on each copy an appropriate copyright notice; keep intact all
|
||||
notices stating that this License and any non-permissive terms added in
|
||||
accord with section 7 apply to the code; keep intact all notices of the
|
||||
absence of any warranty; and give all recipients a copy of this License
|
||||
along with the Program.
|
||||
4. Conveying Verbatim Copies.
|
||||
-----------------------------
|
||||
|
||||
You may convey verbatim copies of the Program’s source code as you
|
||||
receive it, in any medium, provided that you conspicuously and
|
||||
appropriately publish on each copy an appropriate copyright notice; keep
|
||||
intact all notices stating that this License and any non-permissive terms
|
||||
added in accord with section 7 apply to the code; keep intact all notices
|
||||
of the absence of any warranty; and give all recipients a copy of this
|
||||
License along with the Program.
|
||||
|
||||
You may charge any price or no price for each copy that you convey, and
|
||||
you may offer support or warranty protection for a fee.
|
||||
|
||||
|
||||
5. Conveying Modified Source Versions.
|
||||
--------------------------------------
|
||||
|
||||
You may convey a work based on the Program, or the modifications to
|
||||
produce it from the Program, in the form of source code under the terms of
|
||||
section 4, provided that you also meet all of these conditions:
|
||||
produce it from the Program, in the form of source code under the terms
|
||||
of section 4, provided that you also meet all of these conditions:
|
||||
|
||||
a) The work must carry prominent notices stating that you modified it, and
|
||||
giving a relevant date.
|
||||
a) The work must carry prominent notices stating that you modified it,
|
||||
and giving a relevant date.
|
||||
|
||||
b) The work must carry prominent notices stating that it is released under
|
||||
this License and any conditions added under section 7. This
|
||||
requirement modifies the requirement in section 4 to "keep intact all
|
||||
notices".
|
||||
b) The work must carry prominent notices stating that it is released
|
||||
under this License and any conditions added under section 7. This
|
||||
requirement modifies the requirement in section 4 to “keep intact all
|
||||
notices”.
|
||||
|
||||
c) You must license the entire work, as a whole, under this License to
|
||||
anyone who comes into possession of a copy. This License will
|
||||
therefore apply, along with any applicable section 7 additional terms,
|
||||
to the whole of the work, and all its parts, regardless of how they are
|
||||
packaged. This License gives no permission to license the work in any
|
||||
other way, but it does not invalidate such permission if you have
|
||||
to the whole of the work, and all its parts, regardless of how they
|
||||
are packaged. This License gives no permission to license the work in
|
||||
any other way, but it does not invalidate such permission if you have
|
||||
separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
@ -249,16 +271,18 @@ d) If the work has interactive user interfaces, each must display
|
||||
interfaces that do not display Appropriate Legal Notices, your work
|
||||
need not make them do so.
|
||||
|
||||
A compilation of a covered work with other separate and independent works,
|
||||
which are not by their nature extensions of the covered work, and which
|
||||
are not combined with it such as to form a larger program, in or on a
|
||||
volume of a storage or distribution medium, is called an "aggregate" if
|
||||
A compilation of a covered work with other separate and independent
|
||||
works, which are not by their nature extensions of the covered work, and
|
||||
which are not combined with it such as to form a larger program, in or on
|
||||
a volume of a storage or distribution medium, is called an “aggregate” if
|
||||
the compilation and its resulting copyright are not used to limit the
|
||||
access or legal rights of the compilation's users beyond what the
|
||||
individual works permit. Inclusion of a covered work in an aggregate does
|
||||
not cause this License to apply to the other parts of the aggregate.
|
||||
access or legal rights of the compilation’s users beyond what the
|
||||
individual works permit. Inclusion of a covered work in an aggregate
|
||||
does not cause this License to apply to the other parts of the aggregate.
|
||||
|
||||
|
||||
6. Conveying Non-Source Forms.
|
||||
------------------------------
|
||||
|
||||
You may convey a covered work in object code form under the terms of
|
||||
sections 4 and 5, provided that you also convey the machine-readable
|
||||
@ -274,25 +298,26 @@ b) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by a written
|
||||
offer, valid for at least three years and valid for as long as you
|
||||
offer spare parts or customer support for that product model, to give
|
||||
anyone who possesses the object code either (1) a copy of the
|
||||
anyone who possesses the object code either (1) a copy of the
|
||||
Corresponding Source for all the software in the product that is
|
||||
covered by this License, on a durable physical medium customarily used
|
||||
for software interchange, for a price no more than your reasonable cost
|
||||
of physically performing this conveying of source, or (2) access to
|
||||
copy the Corresponding Source from a network server at no charge.
|
||||
for software interchange, for a price no more than your reasonable
|
||||
cost of physically performing this conveying of source, or (2) access
|
||||
to copy the Corresponding Source from a network server at no charge.
|
||||
|
||||
c) Convey individual copies of the object code with a copy of the written
|
||||
offer to provide the Corresponding Source. This alternative is allowed
|
||||
only occasionally and noncommercially, and only if you received the
|
||||
object code with such an offer, in accord with subsection 6b.
|
||||
offer to provide the Corresponding Source. This alternative is
|
||||
allowed only occasionally and noncommercially, and only if you
|
||||
received the object code with such an offer, in accord with subsection
|
||||
6b.
|
||||
|
||||
d) Convey the object code by offering access from a designated place
|
||||
(gratis or for a charge), and offer equivalent access to the
|
||||
Corresponding Source in the same way through the same place at no
|
||||
further charge. You need not require recipients to copy the
|
||||
Corresponding Source along with the object code. If the place to copy
|
||||
the object code is a network server, the Corresponding Source may be on
|
||||
a different server (operated by you or a third party) that supports
|
||||
the object code is a network server, the Corresponding Source may be
|
||||
on a different server (operated by you or a third party) that supports
|
||||
equivalent copying facilities, provided you maintain clear directions
|
||||
next to the object code saying where to find the Corresponding Source.
|
||||
Regardless of what server hosts the Corresponding Source, you remain
|
||||
@ -304,24 +329,24 @@ e) Convey the object code using peer-to-peer transmission, provided you
|
||||
the work are being offered to the general public at no charge under
|
||||
subsection 6d.
|
||||
|
||||
A separable portion of the object code, whose source code is excluded from
|
||||
the Corresponding Source as a System Library, need not be included in
|
||||
conveying the object code work.
|
||||
A separable portion of the object code, whose source code is excluded
|
||||
from the Corresponding Source as a System Library, need not be included
|
||||
in conveying the object code work.
|
||||
|
||||
A "User Product" is either (1) a "consumer product", which means any
|
||||
tangible personal property which is normally used for personal, family, or
|
||||
household purposes, or (2) anything designed or sold for incorporation
|
||||
A “User Product” is either (1) a “consumer product”, which means any
|
||||
tangible personal property which is normally used for personal, family,
|
||||
or household purposes, or (2) anything designed or sold for incorporation
|
||||
into a dwelling. In determining whether a product is a consumer product,
|
||||
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||
product received by a particular user, "normally used" refers to a typical
|
||||
or common use of that class of product, regardless of the status of the
|
||||
particular user or of the way in which the particular user actually uses,
|
||||
or expects or is expected to use, the product. A product is a consumer
|
||||
product regardless of whether the product has substantial commercial,
|
||||
industrial or non-consumer uses, unless such uses represent the only
|
||||
significant mode of use of the product.
|
||||
product received by a particular user, “normally used” refers to a
|
||||
typical or common use of that class of product, regardless of the status
|
||||
of the particular user or of the way in which the particular user
|
||||
actually uses, or expects or is expected to use, the product. A product
|
||||
is a consumer product regardless of whether the product has substantial
|
||||
commercial, industrial or non-consumer uses, unless such uses represent
|
||||
the only significant mode of use of the product.
|
||||
|
||||
"Installation Information" for a User Product means any methods,
|
||||
“Installation Information” for a User Product means any methods,
|
||||
procedures, authorization keys, or other information required to install
|
||||
and execute modified versions of a covered work in that User Product from
|
||||
a modified version of its Corresponding Source. The information must
|
||||
@ -334,10 +359,11 @@ specifically for use in, a User Product, and the conveying occurs as part
|
||||
of a transaction in which the right of possession and use of the User
|
||||
Product is transferred to the recipient in perpetuity or for a fixed term
|
||||
(regardless of how the transaction is characterized), the Corresponding
|
||||
Source conveyed under this section must be accompanied by the Installation
|
||||
Information. But this requirement does not apply if neither you nor any
|
||||
third party retains the ability to install modified object code on the
|
||||
User Product (for example, the work has been installed in ROM).
|
||||
Source conveyed under this section must be accompanied by the
|
||||
Installation Information. But this requirement does not apply if neither
|
||||
you nor any third party retains the ability to install modified object
|
||||
code on the User Product (for example, the work has been installed in
|
||||
ROM).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
@ -353,14 +379,16 @@ accord with this section must be in a format that is publicly documented
|
||||
and must require no special password or key for unpacking, reading or
|
||||
copying.
|
||||
|
||||
7. Additional Terms.
|
||||
|
||||
"Additional permissions" are terms that supplement the terms of this
|
||||
7. Additional Terms.
|
||||
--------------------
|
||||
|
||||
“Additional permissions” are terms that supplement the terms of this
|
||||
License by making exceptions from one or more of its conditions.
|
||||
Additional permissions that are applicable to the entire Program shall be
|
||||
treated as though they were included in this License, to the extent that
|
||||
they are valid under applicable law. If additional permissions apply only
|
||||
to part of the Program, that part may be used separately under those
|
||||
they are valid under applicable law. If additional permissions apply
|
||||
only to part of the Program, that part may be used separately under those
|
||||
permissions, but the entire Program remains governed by this License
|
||||
without regard to the additional permissions.
|
||||
|
||||
@ -372,8 +400,8 @@ permissions on material, added by you to a covered work, for which you
|
||||
have or can give appropriate copyright permission.
|
||||
|
||||
Notwithstanding any other provision of this License, for material you add
|
||||
to a covered work, you may (if authorized by the copyright holders of that
|
||||
material) supplement the terms of this License with terms:
|
||||
to a covered work, you may (if authorized by the copyright holders of
|
||||
that material) supplement the terms of this License with terms:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the terms
|
||||
of sections 15 and 16 of this License; or
|
||||
@ -398,8 +426,8 @@ f) Requiring indemnification of licensors and authors of that material by
|
||||
liability that these contractual assumptions directly impose on those
|
||||
licensors and authors.
|
||||
|
||||
All other non-permissive additional terms are considered "further
|
||||
restrictions" within the meaning of section 10. If the Program as you
|
||||
All other non-permissive additional terms are considered “further
|
||||
restrictions” within the meaning of section 10. If the Program as you
|
||||
received it, or any part of it, contains a notice stating that it is
|
||||
governed by this License along with a term that is a further restriction,
|
||||
you may remove that term. If a license document contains a further
|
||||
@ -417,20 +445,22 @@ Additional terms, permissive or non-permissive, may be stated in the form
|
||||
of a separately written license, or stated as exceptions; the above
|
||||
requirements apply either way.
|
||||
|
||||
|
||||
8. Termination.
|
||||
---------------
|
||||
|
||||
You may not propagate or modify a covered work except as expressly
|
||||
provided under this License. Any attempt otherwise to propagate or modify
|
||||
it is void, and will automatically terminate your rights under this
|
||||
License (including any patent licenses granted under the third paragraph
|
||||
of section 11).
|
||||
provided under this License. Any attempt otherwise to propagate or
|
||||
modify it is void, and will automatically terminate your rights under
|
||||
this License (including any patent licenses granted under the third
|
||||
paragraph of section 11).
|
||||
|
||||
However, if you cease all violation of this License, then your license
|
||||
from a particular copyright holder is reinstated (a) provisionally, unless
|
||||
and until the copyright holder explicitly and finally terminates your
|
||||
license, and (b) permanently, if the copyright holder fails to notify you
|
||||
of the violation by some reasonable means prior to 60 days after the
|
||||
cessation.
|
||||
from a particular copyright holder is reinstated (a) provisionally,
|
||||
unless and until the copyright holder explicitly and finally terminates
|
||||
your license, and (b) permanently, if the copyright holder fails to
|
||||
notify you of the violation by some reasonable means prior to 60 days
|
||||
after the cessation.
|
||||
|
||||
Moreover, your license from a particular copyright holder is reinstated
|
||||
permanently if the copyright holder notifies you of the violation by some
|
||||
@ -439,126 +469,139 @@ violation of this License (for any work) from that copyright holder, and
|
||||
you cure the violation prior to 30 days after your receipt of the notice.
|
||||
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under this
|
||||
License. If your rights have been terminated and not permanently
|
||||
licenses of parties who have received copies or rights from you under
|
||||
this License. If your rights have been terminated and not permanently
|
||||
reinstated, you do not qualify to receive new licenses for the same
|
||||
material under section 10.
|
||||
|
||||
|
||||
9. Acceptance Not Required for Having Copies.
|
||||
---------------------------------------------
|
||||
|
||||
You are not required to accept this License in order to receive or run a
|
||||
copy of the Program. Ancillary propagation of a covered work occurring
|
||||
solely as a consequence of using peer-to-peer transmission to receive a
|
||||
copy likewise does not require acceptance. However, nothing other than
|
||||
this License grants you permission to propagate or modify any covered
|
||||
work. These actions infringe copyright if you do not accept this License.
|
||||
Therefore, by modifying or propagating a covered work, you indicate your
|
||||
acceptance of this License to do so.
|
||||
work. These actions infringe copyright if you do not accept this
|
||||
License. Therefore, by modifying or propagating a covered work, you
|
||||
indicate your acceptance of this License to do so.
|
||||
|
||||
|
||||
10. Automatic Licensing of Downstream Recipients.
|
||||
-------------------------------------------------
|
||||
|
||||
Each time you convey a covered work, the recipient automatically receives
|
||||
a license from the original licensors, to run, modify and propagate that
|
||||
work, subject to this License. You are not responsible for enforcing
|
||||
compliance by third parties with this License.
|
||||
|
||||
An "entity transaction" is a transaction transferring control of an
|
||||
An “entity transaction” is a transaction transferring control of an
|
||||
organization, or substantially all assets of one, or subdividing an
|
||||
organization, or merging organizations. If propagation of a covered work
|
||||
results from an entity transaction, each party to that transaction who
|
||||
receives a copy of the work also receives whatever licenses to the work
|
||||
the party's predecessor in interest had or could give under the previous
|
||||
the party’s predecessor in interest had or could give under the previous
|
||||
paragraph, plus a right to possession of the Corresponding Source of the
|
||||
work from the predecessor in interest, if the predecessor has it or can
|
||||
get it with reasonable efforts.
|
||||
|
||||
You may not impose any further restrictions on the exercise of the rights
|
||||
granted or affirmed under this License. For example, you may not impose a
|
||||
license fee, royalty, or other charge for exercise of rights granted under
|
||||
this License, and you may not initiate litigation (including a cross-claim
|
||||
or counterclaim in a lawsuit) alleging that any patent claim is infringed
|
||||
by making, using, selling, offering for sale, or importing the Program or
|
||||
any portion of it.
|
||||
granted or affirmed under this License. For example, you may not impose
|
||||
a license fee, royalty, or other charge for exercise of rights granted
|
||||
under this License, and you may not initiate litigation (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that any patent claim
|
||||
is infringed by making, using, selling, offering for sale, or importing
|
||||
the Program or any portion of it.
|
||||
|
||||
|
||||
11. Patents.
|
||||
------------
|
||||
|
||||
A "contributor" is a copyright holder who authorizes use under this
|
||||
A “contributor” is a copyright holder who authorizes use under this
|
||||
License of the Program or a work on which the Program is based. The work
|
||||
thus licensed is called the contributor's "contributor version".
|
||||
thus licensed is called the contributor’s “contributor version”.
|
||||
|
||||
A contributor's "essential patent claims" are all patent claims owned or
|
||||
A contributor’s “essential patent claims” are all patent claims owned or
|
||||
controlled by the contributor, whether already acquired or hereafter
|
||||
acquired, that would be infringed by some manner, permitted by this
|
||||
License, of making, using, or selling its contributor version, but do not
|
||||
include claims that would be infringed only as a consequence of further
|
||||
modification of the contributor version. For purposes of this definition,
|
||||
"control" includes the right to grant patent sublicenses in a manner
|
||||
consistent with the requirements of this License.
|
||||
modification of the contributor version. For purposes of this
|
||||
definition, “control” includes the right to grant patent sublicenses in a
|
||||
manner consistent with the requirements of this License.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
patent license under the contributor's essential patent claims, to make,
|
||||
patent license under the contributor’s essential patent claims, to make,
|
||||
use, sell, offer for sale, import and otherwise run, modify and propagate
|
||||
the contents of its contributor version.
|
||||
|
||||
In the following three paragraphs, a "patent license" is any express
|
||||
In the following three paragraphs, a “patent license” is any express
|
||||
agreement or commitment, however denominated, not to enforce a patent
|
||||
(such as an express permission to practice a patent or covenant not to sue
|
||||
for patent infringement). To "grant" such a patent license to a party
|
||||
means to make such an agreement or commitment not to enforce a patent
|
||||
against the party.
|
||||
(such as an express permission to practice a patent or covenant not to
|
||||
sue for patent infringement). To “grant” such a patent license to a
|
||||
party means to make such an agreement or commitment not to enforce a
|
||||
patent against the party.
|
||||
|
||||
If you convey a covered work, knowingly relying on a patent license, and
|
||||
the Corresponding Source of the work is not available for anyone to copy,
|
||||
free of charge and under the terms of this License, through a publicly
|
||||
available network server or other readily accessible means, then you must
|
||||
either (1) cause the Corresponding Source to be so available, or (2)
|
||||
arrange to deprive yourself of the benefit of the patent license for this
|
||||
particular work, or (3) arrange, in a manner consistent with the
|
||||
either (1) cause the Corresponding Source to be so available, or
|
||||
(2) arrange to deprive yourself of the benefit of the patent license for
|
||||
this particular work, or (3) arrange, in a manner consistent with the
|
||||
requirements of this License, to extend the patent license to downstream
|
||||
recipients. "Knowingly relying" means you have actual knowledge that, but
|
||||
for the patent license, your conveying the covered work in a country, or
|
||||
your recipient's use of the covered work in a country, would infringe one
|
||||
or more identifiable patents in that country that you have reason to
|
||||
recipients. “Knowingly relying” means you have actual knowledge that,
|
||||
but for the patent license, your conveying the covered work in a country,
|
||||
or your recipient’s use of the covered work in a country, would infringe
|
||||
one or more identifiable patents in that country that you have reason to
|
||||
believe are valid.
|
||||
|
||||
If, pursuant to or in connection with a single transaction or arrangement,
|
||||
you convey, or propagate by procuring conveyance of, a covered work, and
|
||||
grant a patent license to some of the parties receiving the covered work
|
||||
authorizing them to use, propagate, modify or convey a specific copy of
|
||||
the covered work, then the patent license you grant is automatically
|
||||
extended to all recipients of the covered work and works based on it.
|
||||
If, pursuant to or in connection with a single transaction or
|
||||
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||
covered work, and grant a patent license to some of the parties receiving
|
||||
the covered work authorizing them to use, propagate, modify or convey a
|
||||
specific copy of the covered work, then the patent license you grant is
|
||||
automatically extended to all recipients of the covered work and works
|
||||
based on it.
|
||||
|
||||
A patent license is "discriminatory" if it does not include within the
|
||||
scope of its coverage, prohibits the exercise of, or is conditioned on the
|
||||
non-exercise of one or more of the rights that are specifically granted
|
||||
under this License. You may not convey a covered work if you are a party
|
||||
to an arrangement with a third party that is in the business of
|
||||
A patent license is “discriminatory” if it does not include within the
|
||||
scope of its coverage, prohibits the exercise of, or is conditioned on
|
||||
the non-exercise of one or more of the rights that are specifically
|
||||
granted under this License. You may not convey a covered work if you are
|
||||
a party to an arrangement with a third party that is in the business of
|
||||
distributing software, under which you make payment to the third party
|
||||
based on the extent of your activity of conveying the work, and under
|
||||
which the third party grants, to any of the parties who would receive the
|
||||
covered work from you, a discriminatory patent license (a) in connection
|
||||
with copies of the covered work conveyed by you (or copies made from those
|
||||
copies), or (b) primarily for and in connection with specific products or
|
||||
compilations that contain the covered work, unless you entered into that
|
||||
arrangement, or that patent license was granted, prior to 28 March 2007.
|
||||
covered work from you, a discriminatory patent license (a) in connection
|
||||
with copies of the covered work conveyed by you (or copies made from
|
||||
those copies), or (b) primarily for and in connection with specific
|
||||
products or compilations that contain the covered work, unless you
|
||||
entered into that arrangement, or that patent license was granted, prior
|
||||
to 28 March 2007.
|
||||
|
||||
Nothing in this License shall be construed as excluding or limiting any
|
||||
implied license or other defenses to infringement that may otherwise be
|
||||
available to you under applicable patent law.
|
||||
|
||||
12. No Surrender of Others' Freedom.
|
||||
|
||||
12. No Surrender of Others’ Freedom.
|
||||
------------------------------------
|
||||
|
||||
If conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot convey a
|
||||
covered work so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you may
|
||||
not convey it at all. For example, if you agree to terms that obligate
|
||||
you to collect a royalty for further conveying from those to whom you
|
||||
convey the Program, the only way you could satisfy both those terms and
|
||||
this License would be to refrain entirely from conveying the Program.
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not convey it at all. For example, if you agree to terms that
|
||||
obligate you to collect a royalty for further conveying from those to
|
||||
whom you convey the Program, the only way you could satisfy both those
|
||||
terms and this License would be to refrain entirely from conveying the
|
||||
Program.
|
||||
|
||||
|
||||
13. Use with the GNU Affero General Public License.
|
||||
---------------------------------------------------
|
||||
|
||||
Notwithstanding any other provision of this License, you have permission
|
||||
to link or combine any covered work with a work licensed under version 3
|
||||
@ -568,7 +611,9 @@ apply to the part which is the covered work, but the special requirements
|
||||
of the GNU Affero General Public License, section 13, concerning
|
||||
interaction through a network will apply to the combination as such.
|
||||
|
||||
|
||||
14. Revised Versions of this License.
|
||||
-------------------------------------
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions of
|
||||
the GNU General Public License from time to time. Such new versions will
|
||||
@ -577,7 +622,7 @@ address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies that a certain numbered version of the GNU General Public
|
||||
License "or any later version" applies to it, you have the option of
|
||||
License “or any later version” applies to it, you have the option of
|
||||
following the terms and conditions either of that numbered version or of
|
||||
any later version published by the Free Software Foundation. If the
|
||||
Program does not specify a version number of the GNU General Public
|
||||
@ -585,7 +630,7 @@ License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
If the Program specifies that a proxy can decide which future versions of
|
||||
the GNU General Public License can be used, that proxy's public statement
|
||||
the GNU General Public License can be used, that proxy’s public statement
|
||||
of acceptance of a version permanently authorizes you to choose that
|
||||
version for the Program.
|
||||
|
||||
@ -593,30 +638,36 @@ Later license versions may give you additional or different permissions.
|
||||
However, no additional obligations are imposed on any author or copyright
|
||||
holder as a result of your choosing to follow a later version.
|
||||
|
||||
|
||||
15. Disclaimer of Warranty.
|
||||
---------------------------
|
||||
|
||||
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
||||
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
||||
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
|
||||
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY
|
||||
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
|
||||
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
|
||||
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
|
||||
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
|
||||
PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE
|
||||
COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
|
||||
16. Limitation of Liability.
|
||||
----------------------------
|
||||
|
||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING
|
||||
ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF
|
||||
THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO
|
||||
LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU
|
||||
OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL
|
||||
ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE
|
||||
PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
|
||||
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
|
||||
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
|
||||
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
|
||||
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
|
||||
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGES.
|
||||
|
||||
17. Interpretation of Sections 15 and 16.
|
||||
-----------------------------------------
|
||||
|
||||
If the disclaimer of warranty and limitation of liability provided above
|
||||
cannot be given local legal effect according to their terms, reviewing
|
||||
@ -625,9 +676,12 @@ waiver of all civil liability in connection with the Program, unless a
|
||||
warranty or assumption of liability accompanies a copy of the Program in
|
||||
return for a fee.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
**END OF TERMS AND CONDITIONS**
|
||||
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
=============================================
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
@ -635,12 +689,14 @@ free software which everyone can redistribute and change under these
|
||||
terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest to
|
||||
attach them to the start of each source file to most effectively state the
|
||||
exclusion of warranty; and each file should have at least the "copyright"
|
||||
line and a pointer to where the full notice is found.
|
||||
attach them to the start of each source file to most effectively state
|
||||
the exclusion of warranty; and each file should have at least the
|
||||
“copyright” line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year>, <name of author>
|
||||
.. parsed-literal::
|
||||
|
||||
*one line to give the program's name and a brief idea of what it does.*
|
||||
Copyright (C) *year* *name of author*
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
@ -660,24 +716,26 @@ Also add information on how to contact you by electronic and paper mail.
|
||||
If the program does terminal interaction, make it output a short notice
|
||||
like this when it starts in an interactive mode:
|
||||
|
||||
<program> Copyright (C) <year>, <name of author>
|
||||
This program comes with ABSOLUTELY NO WARRANTY; for details type 'show w'.
|
||||
.. parsed-literal::
|
||||
|
||||
*program* Copyright (C) *year* *name of author*
|
||||
This program comes with ABSOLUTELY NO WARRANTY; for details type \`show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type 'show c' for details.
|
||||
under certain conditions; type \`show c' for details.
|
||||
|
||||
The hypothetical commands 'show w' and 'show c' should show the
|
||||
The hypothetical commands ``show w`` and ``show c`` should show the
|
||||
appropriate parts of the General Public License. Of course, your
|
||||
program's commands might be different; for a GUI interface, you would use
|
||||
an "about box".
|
||||
program’s commands might be different; for a GUI interface, you would use
|
||||
an “about box”.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or school,
|
||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||
For more information on this, and how to apply and follow the GNU GPL, see
|
||||
<https://www.gnu.org/licenses/>.
|
||||
You should also get your employer (if you work as a programmer) or
|
||||
school, if any, to sign a “copyright disclaimer” for the program, if
|
||||
necessary. For more information on this, and how to apply and follow the
|
||||
GNU GPL, see https://www.gnu.org/licenses/.
|
||||
|
||||
The GNU General Public License does not permit incorporating your program
|
||||
into proprietary programs. If your program is a subroutine library, you
|
||||
may consider it more useful to permit linking proprietary applications
|
||||
with the library. If this is what you want to do, use the GNU Lesser
|
||||
General Public License instead of this License. But first, please read
|
||||
<https://www.gnu.org/licenses/why-not-lgpl.html>.
|
||||
https://www.gnu.org/licenses/why-not-lgpl.html.
|
||||
|
388
INSTALL
388
INSTALL
@ -1,14 +1,13 @@
|
||||
**************************************************************************
|
||||
* *
|
||||
* Star Traders: A Game of Interstellar Trading *
|
||||
* Copyright (C) 1990-2019, John Zaitseff *
|
||||
* *
|
||||
**************************************************************************
|
||||
.. -*- mode: rst; coding: utf-8 -*-
|
||||
|
||||
============================================
|
||||
Star Traders: A Game of Interstellar Trading
|
||||
============================================
|
||||
|
||||
Star Traders is written in the C99 programming language and uses Autoconf
|
||||
and Automake to handle compilation and installation. Assuming you have
|
||||
the needed tools, all you should need to do is run the following commands
|
||||
from the source directory:
|
||||
from the source directory::
|
||||
|
||||
./configure
|
||||
make
|
||||
@ -18,6 +17,9 @@ The first two commands may be run as an ordinary user; the last may need
|
||||
to be done as the system administrator (root).
|
||||
|
||||
|
||||
.. contents::
|
||||
|
||||
|
||||
Prerequisites
|
||||
=============
|
||||
|
||||
@ -29,132 +31,131 @@ and installation:
|
||||
Clang LLVM Compiler is more than adequate.
|
||||
|
||||
2. An operating system ideally conforming to ISO/IEC 9945-1:2008 (POSIX)
|
||||
or to the Open Group Single UNIX Specification version 4 or later. In
|
||||
short, any modern Unix or Unix-like system like Linux almost certainly
|
||||
qualifies.
|
||||
or to the Open Group Single UNIX Specification version 4 or later.
|
||||
In short, any modern Unix or Unix-like system like Linux almost
|
||||
certainly qualifies.
|
||||
|
||||
In actual fact, Star Traders uses the GNU Portability Library, so many
|
||||
older systems may also work without modification.
|
||||
In actual fact, Star Traders uses the GNU Portability Library, so
|
||||
many older systems may also work without modification.
|
||||
|
||||
3. A working X/Open Curses-compatible library, such as Ncurses. Ncurses
|
||||
is preferred over system-native libraries, if present. Locales with
|
||||
multibyte character sequences (such as UTF-8) require a wide-character
|
||||
version of Curses, such as NcursesW, to work correctly.
|
||||
multibyte character sequences (such as UTF-8) require a
|
||||
wide-character version of Curses, such as NcursesW, to work
|
||||
correctly.
|
||||
|
||||
4. The GNU Gettext library, version 0.19.8 or later, to allow the game to
|
||||
use languages other than English; this is also called Native Language
|
||||
Support. If you do not have this library (and do not wish to install
|
||||
it), you may pass "--disable-nls" to the configure script.
|
||||
4. The GNU Gettext library, version 0.19.8 or later, to allow the game
|
||||
to use languages other than English; this is also called Native
|
||||
Language Support. If you do not have this library (and do not wish
|
||||
to install it), you may pass ``--disable-nls`` to the configure
|
||||
script.
|
||||
|
||||
5. The GNU libiconv library for supporting multiple character encodings,
|
||||
if required by the GNU Gettext library. This is not needed on systems
|
||||
with the GNU C Library (glibc) version 2.2 or later, or on Mac OS X
|
||||
(now called macOS) 10.3 or newer.
|
||||
5. The GNU ``libiconv`` library for supporting multiple character
|
||||
encodings, if required by the GNU Gettext library. This is not
|
||||
needed on systems with the GNU C Library (``glibc``) version 2.2 or
|
||||
later, or on Mac OS X (now called macOS) 10.3 or newer.
|
||||
|
||||
6. Development libraries and header files for all of the above. On many
|
||||
systems, these files are part of XXX-dev or XXX-devel packages.
|
||||
systems, these files are part of ``XXX-dev`` or ``XXX-devel``
|
||||
packages.
|
||||
|
||||
7. The GNU Perfect Hash Function Generator, gperf. This utility program
|
||||
may be required for parts of the GNU Portability Library.
|
||||
7. The GNU Perfect Hash Function Generator, ``gperf``. This utility
|
||||
program may be required for parts of the GNU Portability Library.
|
||||
|
||||
|
||||
Installation
|
||||
============
|
||||
|
||||
The installation of Star Traders can be broken down into three main steps:
|
||||
configuration, compilation and the installation proper.
|
||||
The installation of Star Traders can be broken down into three main
|
||||
steps: configuration, compilation and the installation proper.
|
||||
|
||||
The first step is configuring the package for your compiler and operating
|
||||
system environment. As Star Traders uses Autoconf and Automake, all you
|
||||
need to do in most cases is run "./configure" from the top-level directory
|
||||
of the Star Traders source tree. The configure script understands all of
|
||||
the usual Autoconf options; these are explained in detail in the Autoconf
|
||||
manual:
|
||||
need to do in most cases is run ``./configure`` from the top-level
|
||||
directory of the Star Traders source tree. The configure script
|
||||
understands all of the usual Autoconf options; these are explained in
|
||||
detail in the `Autoconf manual`__.
|
||||
|
||||
https://www.gnu.org/software/autoconf/manual/autoconf.html#Running-configure-Scripts
|
||||
__ https://www.gnu.org/software/autoconf/manual/autoconf.html#Running-configure-Scripts
|
||||
|
||||
This version of the configure script understands the following additional
|
||||
command line options:
|
||||
|
||||
--disable-nls
|
||||
Don't use Native Language Support. Star Traders will only
|
||||
Don’t use Native Language Support. Star Traders will only
|
||||
show untranslated US English text and only accept US ASCII
|
||||
keyboard input.
|
||||
|
||||
--with-libintl-prefix=DIR
|
||||
Find the GNU Gettext library installed in the DIR/lib and
|
||||
DIR/include directories. This option is needed if your
|
||||
library is not installed in /usr/lib and /usr/include (or,
|
||||
more precisely, if the C compiler cannot find the library
|
||||
".so" or ".a" archive file using the standard "-l" command
|
||||
line parameter or the relevant header files using standard
|
||||
"#include" directives).
|
||||
|
||||
Find the GNU Gettext library installed in the *DIR*\ `/lib`
|
||||
and *DIR*\ `/include` directories. This option is needed if
|
||||
your library is not installed in `/usr/lib` and
|
||||
`/usr/include` (or, more precisely, if the C compiler cannot
|
||||
find the library “``.so``” or “``.a``” archive file using the
|
||||
standard “``-l``” command line parameter or the relevant
|
||||
header files using standard :code:`#include` directives).
|
||||
--with-libiconv-prefix=DIR
|
||||
Find the GNU libiconv library installed in the DIR/lib and
|
||||
DIR/include directories. This option is needed if the GNU
|
||||
Gettext library requires libiconv on your system, and that
|
||||
library is not installed in /usr/lib and /usr/include.
|
||||
|
||||
Find the GNU ``libiconv`` library installed in the *DIR*\
|
||||
`/lib` and *DIR*\ `/include` directories. This option is
|
||||
needed if the GNU Gettext library requires ``libiconv`` on
|
||||
your system, and that library is not installed in `/usr/lib`
|
||||
and `/usr/include`.
|
||||
--with-ncurses
|
||||
Force the use of Ncurses over the system's Curses library.
|
||||
In other words, do not search for a native Curses library
|
||||
at all.
|
||||
|
||||
Force the use of Ncurses over the system’s Curses library.
|
||||
In other words, do not search for a native Curses library at
|
||||
all.
|
||||
--with-ncursesw
|
||||
Force the use of the NcursesW library with wide-character
|
||||
support. If NcursesW cannot be found, abort the configure
|
||||
script.
|
||||
|
||||
support. If NcursesW cannot be found, abort the
|
||||
``configure`` script.
|
||||
--without-ncursesw
|
||||
Don't use the NcursesW library. This will prevent non-8-
|
||||
bit character encodings like UTF-8 from working correctly
|
||||
and is thus not recommended.
|
||||
|
||||
Don’t use the NcursesW library. This will prevent non-8-bit
|
||||
character encodings like UTF-8 from working correctly and is
|
||||
thus not recommended.
|
||||
--without-ncurses
|
||||
Don't use the Ncurses library: use either NcursesW (unless
|
||||
"--without-ncursesw" is also specified) or the system's
|
||||
Don’t use the Ncurses library: use either NcursesW (unless
|
||||
``--without-ncursesw`` is also specified) or the system’s
|
||||
normal Curses library. This option is not recommended.
|
||||
|
||||
--disable-assert
|
||||
Turn off all debugging assert() statements.
|
||||
Turn off all debugging :code:`assert()` statements.
|
||||
|
||||
By default, configure uses "/usr/local" as the top-level (prefix) install
|
||||
directory. You can change this by specifying "--prefix=DIR" to use DIR
|
||||
instead. For example, you can use a directory in your own home directory
|
||||
by specifying something like:
|
||||
By default, ``configure`` uses `/usr/local` as the top-level (prefix)
|
||||
install directory. You can change this by specifying ``--prefix=``\
|
||||
*DIR* to use *DIR* instead. For example, you can use a directory in your
|
||||
own home directory by specifying something like::
|
||||
|
||||
./configure --prefix=$HOME/opt/trader
|
||||
|
||||
You may also specify certain configuration and/or compilation variables on
|
||||
the command line to override choices made by configure. For example, you
|
||||
can specify the compiler flags to use by passing the CFLAGS variable:
|
||||
You may also specify certain configuration and/or compilation variables
|
||||
on the command line to override choices made by ``configure``. For
|
||||
example, you can specify the compiler flags to use by passing the
|
||||
``CFLAGS`` variable::
|
||||
|
||||
./configure CFLAGS="-g -O2 -Wall"
|
||||
|
||||
The configure script has many other options. You may obtain a list of
|
||||
these by running:
|
||||
The ``configure`` script has many other options. You may obtain a list
|
||||
of these by running::
|
||||
|
||||
./configure --help
|
||||
|
||||
You can also run configure in a separate build-only directory tree. This
|
||||
feature requires GNU Make and allows you to keep the source code tree from
|
||||
being modified by the compilation process. To use this option, create a
|
||||
separate build directory, then run configure. For example, if you placed
|
||||
the Star Traders source code tree in $HOME/src/trader-7.13, you could run
|
||||
something like:
|
||||
You can also run ``configure`` in a separate build-only directory tree.
|
||||
This feature requires GNU Make and allows you to keep the source code
|
||||
tree from being modified by the compilation process. To use this option,
|
||||
create a separate `build` directory, then run ``configure``. For
|
||||
example, if you placed the Star Traders source code tree in
|
||||
`$HOME/src/trader-7.13`, you could run something like::
|
||||
|
||||
mkdir $HOME/build/trader-build-7.13
|
||||
cd $HOME/build/trader-build-7.13
|
||||
$HOME/src/trader-7.13/configure
|
||||
|
||||
Once again, the Autoconf manual describes these options (and many others):
|
||||
Once again, the `Autoconf manual`__ describes these options (and many
|
||||
others).
|
||||
|
||||
https://www.gnu.org/software/autoconf/manual/autoconf.html#Running-configure-Scripts
|
||||
__ https://www.gnu.org/software/autoconf/manual/autoconf.html#Running-configure-Scripts
|
||||
|
||||
Once the package has been configured, you can type "make" to compile it,
|
||||
then "make install" to install it. You can specify the following command
|
||||
lines, amongst others:
|
||||
Once the package has been configured, you can type ``make`` to compile
|
||||
it, then ``make install`` to install it. You can specify the following
|
||||
command lines, amongst others::
|
||||
|
||||
make all
|
||||
make install
|
||||
@ -162,84 +163,88 @@ lines, amongst others:
|
||||
make distclean
|
||||
make uninstall
|
||||
|
||||
The command "make all" does the same thing as running "make" by itself:
|
||||
compile the package source code into an executable.
|
||||
The command ``make all`` does the same thing as running ``make`` by
|
||||
itself: compile the package source code into an executable.
|
||||
|
||||
Running "make install" copies the executable program and all associated
|
||||
Running ``make install`` copies the executable program and all associated
|
||||
data and documentation files to those directories specified during
|
||||
configuration. If any of these directories require system administrator
|
||||
access privileges for writing, you will need to run "make install" as
|
||||
access privileges for writing, you will need to run ``make install`` as
|
||||
system administrator (root).
|
||||
|
||||
If you like, you can specify the DESTDIR variable to copy all installation
|
||||
files to a temporary location before installing them later. For example,
|
||||
if the prefix directory is "/usr/local", typing:
|
||||
.. compound::
|
||||
|
||||
If you like, you can specify the ``DESTDIR`` variable to copy all
|
||||
installation files to a temporary location before installing them
|
||||
later. For example, if the prefix directory is `/usr/local`, typing::
|
||||
|
||||
make install DESTDIR=/tmp/trader-install
|
||||
|
||||
will copy the final program "trader" to /tmp/trader-install/usr/local/bin,
|
||||
the manual page to /tmp/trader-install/usr/local/share/man/man6 and so on.
|
||||
will copy the final program ``trader`` to
|
||||
`/tmp/trader-install/usr/local/bin`, the manual page to
|
||||
`/tmp/trader-install/usr/local/share/man/man6` and so on.
|
||||
|
||||
The "make clean" command will remove most build-generated files, such as
|
||||
object files generated by the compiler, from the source code or build
|
||||
directory. Running "make distclean" will do the same, but will remove the
|
||||
Makefiles generated by configure as well. In other words, if you run
|
||||
"make distclean", you will need to rerun "configure" if you would like to
|
||||
recompile Star Traders at a later date.
|
||||
The ``make clean`` command will remove most build-generated files, such
|
||||
as object files generated by the compiler, from the source code or build
|
||||
directory. Running ``make distclean`` will do the same, but will remove
|
||||
the Makefiles generated by ``configure`` as well. In other words, if you
|
||||
run ``make distclean``, you will need to rerun ``configure`` if you would
|
||||
like to recompile Star Traders at a later date.
|
||||
|
||||
Finally, "make uninstall" will remove the executable program "trader" and
|
||||
associated data and documentation files from their final installation
|
||||
location. This assumes, of course, that you have NOT run "make distclean"
|
||||
to remove the Makefiles that know the path to which those files were
|
||||
installed!
|
||||
Finally, ``make uninstall`` will remove the executable program ``trader``
|
||||
and associated data and documentation files from their final installation
|
||||
location. This assumes, of course, that you have *not* run ``make
|
||||
distclean`` to remove the Makefiles that know the path to which those
|
||||
files were installed!
|
||||
|
||||
|
||||
Tested Systems
|
||||
==============
|
||||
|
||||
The following operating systems and compilers have been successfully test-
|
||||
ed with this version of Star Traders:
|
||||
The following operating systems and compilers have been successfully
|
||||
tested with this version of Star Traders:
|
||||
|
||||
+-------------------------+--------+-------+-------------------------+---+
|
||||
| Linux distribution | Arch | Glibc | Compiler | N |
|
||||
+-------------------------+--------+-------+-------------------------+---+
|
||||
| Debian GNU/Linux Sid | x86_64 | 2.27 | GNU C Compiler 8.2.0 | |
|
||||
| Debian GNU/Linux Sid | i686 | 2.27 | GNU C Compiler 8.2.0 | |
|
||||
| Debian GNU/Linux 9.5 | x86_64 | 2.24 | GNU C Compiler 6.3.0 | |
|
||||
| Ubuntu 18.04 | x86_64 | 2.27 | GNU C Compiler 7.3.0 | |
|
||||
| Ubuntu 18.04 | x86_64 | 2.27 | Clang (LLVM) 6.0.0 | |
|
||||
| Ubuntu 18.04 | x86_64 | 2.27 | Portland PGI C/C++ 18.5 | |
|
||||
| Fedora 28 | x86_64 | 2.27 | GNU C Compiler 8.1.1 | |
|
||||
| CentOS 7.5 | x86_64 | 2.17 | GNU C Compiler 4.8.5 | |
|
||||
| CentOS 6.10 | x86_64 | 2.12 | GNU C Compiler 4.4.7 | |
|
||||
| CentOS 6.10 | x86_64 | 2.12 | Portland PGI C/C++ 18.3 | |
|
||||
| CentOS 6.9 | x86_64 | 2.12 | Intel C/C++ 18.0.3 | |
|
||||
| OpenSUSE Leap 15.0 | x86_64 | 2.26 | GNU C Compiler 7.3.1 | |
|
||||
+-------------------------+--------+-------+-------------------------+---+
|
||||
==================== ====== ===== ======================= =====
|
||||
Linux distribution Arch Glibc Compiler Notes
|
||||
==================== ====== ===== ======================= =====
|
||||
Debian GNU/Linux Sid x86_64 2.27 GNU C Compiler 8.2.0
|
||||
Debian GNU/Linux Sid i686 2.27 GNU C Compiler 8.2.0
|
||||
Debian GNU/Linux 9.5 x86_64 2.24 GNU C Compiler 6.3.0
|
||||
Ubuntu 18.04 x86_64 2.27 GNU C Compiler 7.3.0
|
||||
Ubuntu 18.04 x86_64 2.27 Clang (LLVM) 6.0.0
|
||||
Ubuntu 18.04 x86_64 2.27 Portland PGI C/C++ 18.5
|
||||
Fedora 28 x86_64 2.27 GNU C Compiler 8.1.1
|
||||
CentOS 7.5 x86_64 2.17 GNU C Compiler 4.8.5
|
||||
CentOS 6.10 x86_64 2.12 GNU C Compiler 4.4.7
|
||||
CentOS 6.10 x86_64 2.12 Portland PGI C/C++ 18.3
|
||||
CentOS 6.9 x86_64 2.12 Intel C/C++ 18.0.3
|
||||
OpenSUSE Leap 15.0 x86_64 2.26 GNU C Compiler 7.3.1
|
||||
==================== ====== ===== ======================= =====
|
||||
|
||||
+-------------------------+--------+---------------------------------+---+
|
||||
| Operating system | Arch | Compiler | N |
|
||||
+-------------------------+--------+---------------------------------+---+
|
||||
| FreeBSD 11.2 | x86_64 | Clang (LLVM) 6.0.0 | 1 |
|
||||
| NetBSD 8.0 | x86_64 | GNU C Compiler 5.5.0 | 2 |
|
||||
| macOS 10.13 | x86_64 | Apple Clang (LLVM) 9.1.0 | 3 |
|
||||
| Solaris 11.3 (x86_64) | i386 | GNU C Compiler 4.8.2 | |
|
||||
| Solaris 11.3 (x86_64) | x86_64 | GNU C Compiler 4.8.2 | 4 |
|
||||
| Solaris 11.3 (x86_64) | i386 | Oracle Developer Studio 12.6 | 5 |
|
||||
| Solaris 11.3 (x86_64) | x86_64 | Oracle Developer Studio 12.6 | 6 |
|
||||
| Cygwin 2.10.0 (Win7SP1) | i686 | GNU C Compiler 7.3.0 | |
|
||||
+-------------------------+--------+---------------------------------+---+
|
||||
======================= ====== ============================ ============
|
||||
Operating system Arch Compiler Notes
|
||||
======================= ====== ============================ ============
|
||||
FreeBSD 11.2 x86_64 Clang (LLVM) 6.0.0 [#freebsd1]_
|
||||
NetBSD 8.0 x86_64 GNU C Compiler 5.5.0 [#netbsd1]_
|
||||
macOS 10.13 x86_64 Apple Clang (LLVM) 9.1.0 [#macos1]_
|
||||
Solaris 11.3 (x86_64) i386 GNU C Compiler 4.8.2
|
||||
Solaris 11.3 (x86_64) x86_64 GNU C Compiler 4.8.2 [#solaris1]_
|
||||
Solaris 11.3 (x86_64) i386 Oracle Developer Studio 12.6 [#solaris2]_
|
||||
Solaris 11.3 (x86_64) x86_64 Oracle Developer Studio 12.6 [#solaris3]_
|
||||
Cygwin 2.10.0 (Win7SP1) i686 GNU C Compiler 7.3.0
|
||||
======================= ====== ============================ ============
|
||||
|
||||
Notes:
|
||||
|
||||
1. FreeBSD with the gettext, gettext-runtime, gettext-tools and libiconv
|
||||
binary packages installed with "pkg", using:
|
||||
.. [#freebsd1] FreeBSD with the ``gettext``, ``gettext-runtime``,
|
||||
``gettext-tools`` and ``libiconv`` binary packages installed with
|
||||
``pkg``\(1), using::
|
||||
|
||||
./configure --with-libiconv-prefix=/usr/local \
|
||||
--with-libintl-prefix=/usr/local
|
||||
|
||||
2. NetBSD with the gettext, libiconv and ncursesw packages installed with
|
||||
"pkg_add", using:
|
||||
.. [#netbsd1] NetBSD with the ``gettext``, ``libiconv`` and ``ncursesw``
|
||||
packages installed with ``pkg_add``\(1), using::
|
||||
|
||||
./configure --with-libiconv-prefix=/usr/pkg \
|
||||
--with-libintl-prefix=/usr/pkg \
|
||||
@ -247,61 +252,72 @@ Notes:
|
||||
CURSES_CFLAGS=-I/usr/pkg/include \
|
||||
LDFLAGS=-L/usr/pkg/lib
|
||||
|
||||
3. macOS with the gettext package installed with Homebrew, using:
|
||||
.. [#macos1] macOS with the ``gettext`` package installed with Homebrew,
|
||||
using::
|
||||
|
||||
./configure --with-libintl-prefix=/usr/local/opt/gettext
|
||||
|
||||
4. Using "./configure CC='gcc -m64'" for 64-bit user-space.
|
||||
5. Using "./configure CC='/opt/developerstudio12.6/bin/cc'".
|
||||
6. Using "./configure CC='/opt/developerstudio12.6/bin/cc -m64'".
|
||||
.. [#solaris1] Using ``./configure CC='gcc -m64'`` for 64-bit user-space.
|
||||
|
||||
The following systems are known not to work at the current time; this list
|
||||
is almost certainly not exhaustive:
|
||||
.. [#solaris2] Using ``./configure CC='/opt/developerstudio12.6/bin/cc'``.
|
||||
|
||||
+-------------------------+--------+---------------------------------+---+
|
||||
| Operating system | Arch | Compiler | N |
|
||||
+-------------------------+--------+---------------------------------+---+
|
||||
| OpenBSD 6.3 | x86_64 | GNU C Compiler 4.2.1 | 1 |
|
||||
| OpenBSD 6.3 | x86_64 | Clang (LLVM) 5.0.1 | 1 |
|
||||
+-------------------------+--------+---------------------------------+---+
|
||||
.. [#solaris3] Using ``./configure CC='/opt/developerstudio12.6/bin/cc
|
||||
-m64'``.
|
||||
|
||||
The following systems are known *not* to work at the current time; this
|
||||
list is almost certainly not exhaustive:
|
||||
|
||||
================ ====== ==================== ============
|
||||
Operating system Arch Compiler Notes
|
||||
================ ====== ==================== ============
|
||||
OpenBSD 6.3 x86_64 GNU C Compiler 4.2.1 [#openbsd1]_
|
||||
OpenBSD 6.3 x86_64 Clang (LLVM) 5.0.1 [#openbsd1]_
|
||||
================ ====== ==================== ============
|
||||
|
||||
Notes:
|
||||
|
||||
1. The OpenBSD C library does not include <monetary.h> nor its associated
|
||||
functions, particularly strfmon().
|
||||
.. [#openbsd1] The OpenBSD C library does not include
|
||||
:code:`<monetary.h>` nor its associated functions, particularly
|
||||
:code:`strfmon()`.
|
||||
|
||||
|
||||
Git Repository
|
||||
==============
|
||||
|
||||
You can always download the latest version of Star Traders directly from
|
||||
the Git repository on the ZAP Group server:
|
||||
the Git repository on the ZAP Group server::
|
||||
|
||||
git clone git://git.zap.org.au/data/git/trader.git
|
||||
|
||||
Released versions of Star Traders include all scripts and files needed for
|
||||
installation. If you are cloning the source code from the Git repository,
|
||||
however, you will need to update these files yourself. You will need the
|
||||
following additional tools installed on your system to do so:
|
||||
Released versions of Star Traders include all scripts and files needed
|
||||
for installation. If you are cloning the source code from the Git
|
||||
repository, however, you will need to update these files yourself. You
|
||||
will need the following additional tools installed on your system to do
|
||||
so:
|
||||
|
||||
1. Autoconf v2.69 or later (https://www.gnu.org/software/autoconf/)
|
||||
2. Automake v1.15 or later (https://www.gnu.org/software/automake/)
|
||||
3. pkg-config v0.9.0 or later (https://pkg-config.freedesktop.org/)
|
||||
4. GNU Portability Library (https://www.gnu.org/software/gnulib/)
|
||||
1. `Autoconf`__ v2.69 or later
|
||||
2. `Automake`__ v1.15 or later
|
||||
3. `pkg-config`__ v0.9.0 or later
|
||||
4. `GNU Portability Library`__
|
||||
|
||||
__ https://www.gnu.org/software/autoconf/
|
||||
__ https://www.gnu.org/software/automake/
|
||||
__ https://pkg-config.freedesktop.org/
|
||||
__ https://www.gnu.org/software/gnulib/
|
||||
|
||||
The GNU Portability Library may be installed by retrieving the latest
|
||||
Gnulib source code from the Git repository:
|
||||
Gnulib source code from the Git repository::
|
||||
|
||||
git clone git://git.savannah.gnu.org/gnulib.git
|
||||
|
||||
Once you have these tools, change to the Star Traders source code tree and
|
||||
type:
|
||||
Once you have these tools, change to the Star Traders source code tree
|
||||
and type::
|
||||
|
||||
PATH=${PATH}:/path/to/gnulib-tool ./build-aux/bootstrap
|
||||
|
||||
where "/path/to/gnulib-tool" is, of course, the directory containing the
|
||||
Gnulib "gnulib-tool" script. You should be ready to run "./configure &&
|
||||
make && make install" now.
|
||||
where ``/path/to/gnulib-tool`` is, of course, the directory containing
|
||||
the Gnulib ``gnulib-tool`` script. You should be ready to run
|
||||
``./configure && make && make install`` now.
|
||||
|
||||
|
||||
For Translators
|
||||
@ -312,18 +328,18 @@ language! You may use either a released version of Star Traders, or an
|
||||
unreleased one, as discussed in the Git Repository section above. In
|
||||
either case, you may find the following workflow useful.
|
||||
|
||||
First, run "./build-aux/bootstrap" if needed (only for unreleased versions
|
||||
of Star Traders).
|
||||
First, run ``./build-aux/bootstrap`` if needed (only for unreleased
|
||||
versions of Star Traders).
|
||||
|
||||
Next, configure and install Star Traders into your home directory:
|
||||
Next, configure and install Star Traders into your home directory::
|
||||
|
||||
./configure --prefix=$HOME/opt/trader
|
||||
make
|
||||
make install
|
||||
|
||||
If you are adding a new translation, add its GNU Gettext language code to
|
||||
the file po/LINGUAS, then create the template file for that language ("zz"
|
||||
is used here):
|
||||
the file `po/LINGUAS`, then create the template file for that language
|
||||
(“``zz``” is used here)::
|
||||
|
||||
(cd po; msginit --locale=zz --width=132)
|
||||
|
||||
@ -331,37 +347,35 @@ Now, modify the PO file for your language using your favourite editor or
|
||||
translation tool. Please note that the generated PO file has extensive
|
||||
documentation in its translator comments. If anything is unclear, please
|
||||
feel free to ask the author and maintainer; contact details are available
|
||||
in the README file.
|
||||
in the `README` file.
|
||||
|
||||
To test your PO file, compile and run Star Traders (replace "zz" with your
|
||||
language code, of course):
|
||||
To test your PO file, compile and run Star Traders (replace “``zz``” with
|
||||
your language code, of course)::
|
||||
|
||||
make && make -C po zz.gmo && make install
|
||||
LANGUAGE=zz $HOME/opt/trader/bin/trader
|
||||
|
||||
The "make -C po zz.gmo" forces the rebuilding of the GMO output file; the
|
||||
"LANGUAGE=zz" parameter sets the language of the messages to use.
|
||||
The ``make -C po zz.gmo`` forces the rebuilding of the GMO output file;
|
||||
the ``LANGUAGE=zz`` parameter sets the language of the messages to use.
|
||||
|
||||
This process of editing and testing the PO file can be done iteratively,
|
||||
of course: make a change, recompile, run the program to see the changes,
|
||||
repeat as needed.
|
||||
|
||||
Once you have finished your translation, please submit the PO file to the
|
||||
Translation Project. The relevant web page for Star Traders is:
|
||||
Translation Project (TP). See the `TP Star Traders`__ web page or read
|
||||
their `Translators and the TP`__ page for additional information.
|
||||
|
||||
https://translationproject.org/domain/trader.html
|
||||
__ https://translationproject.org/domain/trader.html
|
||||
__ https://translationproject.org/html/translators.html
|
||||
|
||||
More information for translators is available at:
|
||||
|
||||
https://translationproject.org/html/translators.html
|
||||
|
||||
To clean up your install directory, simply run:
|
||||
To clean up your install directory, simply run::
|
||||
|
||||
rm -fr $HOME/opt/trader
|
||||
|
||||
By the way, as mentioned in the translator comments, formatting the help
|
||||
text is probably the most complicated and tedious part of translating Star
|
||||
Traders. The author and maintainer of this game is more than happy to
|
||||
help you with this task: if you are able to provide a translation, even if
|
||||
it is not formatted correctly, the maintainer will perform the necessary
|
||||
adjustments for word-wrapping and justification.
|
||||
text is probably the most complicated and tedious part of translating
|
||||
Star Traders. The author and maintainer of this game is more than happy
|
||||
to help you with this task: if you are able to provide a translation,
|
||||
even if it is not formatted correctly, the maintainer will perform the
|
||||
necessary adjustments for word-wrapping and justification.
|
||||
|
240
NEWS
240
NEWS
@ -1,40 +1,50 @@
|
||||
**************************************************************************
|
||||
* *
|
||||
* Star Traders: A Game of Interstellar Trading *
|
||||
* Copyright (C) 1990-2019, John Zaitseff *
|
||||
* *
|
||||
**************************************************************************
|
||||
.. -*- mode: rst; coding: utf-8 -*-
|
||||
|
||||
Star Traders is a simple game of interstellar trading, where the objective
|
||||
is to create companies, buy and sell shares, borrow and repay money, in
|
||||
order to become the wealthiest player (the winner).
|
||||
============================================
|
||||
Star Traders: A Game of Interstellar Trading
|
||||
============================================
|
||||
|
||||
The following history is presented in reverse chronological order. If you
|
||||
would like to see a list of detailed changes to this project, you should
|
||||
browse the Git repository on The ZAP Group web server at the following
|
||||
location: https://www.zap.org.au/cgit/trader.git
|
||||
Star Traders is a simple game of interstellar trading, where the
|
||||
objective is to create companies, buy and sell shares, borrow and repay
|
||||
money, in order to become the wealthiest player (the winner).
|
||||
|
||||
The following history is presented in reverse chronological order. If
|
||||
you would like to see a list of detailed changes to this project, you
|
||||
should browse the `Star Traders Git repository`__ on `The ZAP Group web
|
||||
server`__.
|
||||
|
||||
__ https://www.zap.org.au/cgit/trader.git
|
||||
__ https://www.zap.org.au/
|
||||
|
||||
|
||||
.. contents::
|
||||
|
||||
|
||||
Version 7.13 (not yet released)
|
||||
-------------------------------
|
||||
|
||||
Modified the code to work more reliably on non-GNU C Library (glibc) plat-
|
||||
forms, particularly FreeBSD, Solaris and Cygwin, when using the standard
|
||||
POSIX locale. Extensively tested the build procedure on multiple operat-
|
||||
ing systems and compilers, and submitted code upstream to the Autoconf
|
||||
Archive project to make this work more robustly. Listed tested operating
|
||||
system and compiler combinations in the INSTALL file.
|
||||
Converted all text files to reStructuredText (ReST) format. This format
|
||||
is still quite readable as raw text, and is much more capable than the
|
||||
myriad all-slightly-incompatible variants of Markdown.
|
||||
|
||||
Modified the source code to work more reliably on non-GNU C Library
|
||||
(``glibc``) platforms, particularly FreeBSD, Solaris and Cygwin, when
|
||||
using the standard POSIX locale. Extensively tested the build procedure
|
||||
on multiple operating systems and compilers, and submitted code upstream
|
||||
to the Autoconf Archive project to make this work more robustly. Listed
|
||||
tested operating system and compiler combinations in the `INSTALL` file.
|
||||
|
||||
Added the Spanish translation, with thanks to Francisco Javier Serrador.
|
||||
Updated the Esperanto translation, with thanks to Felipe Castro.
|
||||
|
||||
Updated one string in the game for consistency with other labels; updated
|
||||
all PO translations to suit. Also added strings from obsolete versions of
|
||||
the GNU C Library so that Star Traders can provide translations for them.
|
||||
all PO translations to suit. Also added strings from obsolete versions
|
||||
of the GNU C Library so that Star Traders can provide translations for
|
||||
them.
|
||||
|
||||
Updated to the latest snapshot of the Gnulib GNU Portability Library. In
|
||||
addition, updated the list of prerequisites in the INSTALL file and listed
|
||||
some more command line options for the configure script.
|
||||
addition, updated the list of prerequisites in the `INSTALL` file and
|
||||
listed some more command line options for the ``configure`` script.
|
||||
|
||||
|
||||
Version 7.12 (24th August, 2017)
|
||||
@ -46,40 +56,44 @@ Updated the Serbian translation, with thanks to Мирослав Николић.
|
||||
Version 7.11 (18th June, 2017)
|
||||
------------------------------
|
||||
|
||||
Bug fix: some architectures (such as ARM, PowerPC and S390) treat "char"
|
||||
as "unsigned char", and this caused b64decode() to fail while loading a
|
||||
saved game. Changed the relevant type from "char" to "int" to fix this.
|
||||
Bug fix: some architectures (such as ARM, PowerPC and S390) treat
|
||||
:code:`char` as :code:`unsigned char`, and this caused
|
||||
:code:`b64decode()` to fail while loading a saved game. Changed the
|
||||
relevant type from :code:`char` to :code:`int` to fix this.
|
||||
|
||||
|
||||
Version 7.10 (2nd June, 2017)
|
||||
-----------------------------
|
||||
|
||||
Added a data directory that contains a desktop file and appropriate icons.
|
||||
Adjusted the game constants for more dynamic play: allow the share prices
|
||||
and returns to change a bit more frequently and more rapidly. Tweaked the
|
||||
colours in the example monochrome retro-computing command lines, including
|
||||
adding an amber monitor version.
|
||||
Added a `data` directory that contains a desktop file and appropriate
|
||||
icons. Adjusted the game constants for more dynamic play: allow the
|
||||
share prices and returns to change a bit more frequently and more
|
||||
rapidly. Tweaked the colours in the example monochrome retro-computing
|
||||
command lines, including adding an amber monitor version.
|
||||
|
||||
Added a Serbian translation, with thanks to Мирослав Николић. Updated the
|
||||
Danish, French, Swedish, Hungarian, Norwegian Bokmål and German transla-
|
||||
tions, in that order, with thanks to Joe Hansen, Frédéric Marchal, Anders
|
||||
Jonsson, Balázs Úr, Johnny A. Solbu and Philipp Thomas respectively.
|
||||
Added a Serbian translation, with thanks to Мирослав Николић. Updated
|
||||
the Danish, French, Swedish, Hungarian, Norwegian Bokmål and German
|
||||
translations, in that order, with thanks to Joe Hansen, Frédéric Marchal,
|
||||
Anders Jonsson, Balázs Úr, Johnny A. Solbu and Philipp Thomas
|
||||
respectively.
|
||||
|
||||
Updated translatable strings to overcome a limitation of msgfmt(1): if a
|
||||
string starts or ends with a new-line character, its translation must do
|
||||
so as well. This has an impact on labels in particular. Also changed the
|
||||
help text string "Page N of M" to allow translations of the form "Of M
|
||||
pages, this is page N", and all quoted strings using the obsolete GNU form
|
||||
`like this' to 'this'. In addition, newer versions of lib/getopt.c have
|
||||
different strings. All translations have been updated as a result.
|
||||
Updated translatable strings to overcome a limitation of ``msgfmt``\(1):
|
||||
if a string starts or ends with a new-line character, its translation
|
||||
must do so as well. This has an impact on labels in particular. Also
|
||||
changed the help text string “Page *N* of *M*” to allow translations of
|
||||
the form “Of *M* pages, this is page *N*”, and all quoted strings using
|
||||
the obsolete GNU form ```like this'`` to ``'this'``. In addition, newer
|
||||
versions of `lib/getopt.c` have different strings. All translations have
|
||||
been updated as a result.
|
||||
|
||||
Removed the obsolete Gnulib gettext module and updated to the latest Git
|
||||
snapshot of Gnulib. Updated the dependency version numbers for Autoconf,
|
||||
Automake and Gettext. Also updated all macros from the Autoconf Archive.
|
||||
Removed the obsolete Gnulib ``gettext`` module and updated to the latest
|
||||
Git snapshot of Gnulib. Updated the dependency version numbers for
|
||||
Autoconf, Automake and Gettext. Also updated all macros from the
|
||||
Autoconf Archive.
|
||||
|
||||
Migrated the source code repository from Subversion to Git. Updated the
|
||||
documentation to suit, and also listed specific required version numbers
|
||||
for the Autoconf and Automake tools in the INSTALL file.
|
||||
for the Autoconf and Automake tools in the `INSTALL` file.
|
||||
|
||||
|
||||
Version 7.9 (5th January, 2016)
|
||||
@ -91,15 +105,16 @@ Updated the Danish translation, with thanks to Joe Hansen.
|
||||
Version 7.8 (10th September, 2015)
|
||||
----------------------------------
|
||||
|
||||
Changed the name of the seventh company from "Gemeni Inc" to "Gemini Inc":
|
||||
a spelling mistake that has been present since 1990! Special thanks to
|
||||
Anders Jonsson for pointing this out.
|
||||
Changed the name of the seventh company from “Gemeni Inc” to “Gemini
|
||||
Inc”: a spelling mistake that has been present since 1990! Special
|
||||
thanks to Anders Jonsson for pointing this out.
|
||||
|
||||
Added the Swedish translation, with thanks to Anders Jonsson. Minor code
|
||||
changes were made to accommodate this language. Incorporated changes made
|
||||
by the translators for German, French and Norwegian Bokmål, in that order,
|
||||
with thanks to Philipp Thomas, Frédéric Marchal and Johnny A. Solbu. Also
|
||||
updated all references to GNU Gettext to version 0.19.5.
|
||||
changes were made to accommodate this language. Incorporated changes
|
||||
made by the translators for German, French and Norwegian Bokmål, in that
|
||||
order, with thanks to Philipp Thomas, Frédéric Marchal and
|
||||
Johnny A. Solbu. Also updated all references to GNU Gettext to version
|
||||
0.19.5.
|
||||
|
||||
|
||||
Version 7.7 (18th August, 2015)
|
||||
@ -107,19 +122,20 @@ Version 7.7 (18th August, 2015)
|
||||
|
||||
Added the Hungarian translation, with thanks to Balázs Úr. Minor code
|
||||
changes were made to accommodate this language. Also added documentation
|
||||
in the file INSTALL to translate Star Traders into another language.
|
||||
in the file `INSTALL` to translate Star Traders into another language.
|
||||
|
||||
|
||||
Version 7.6 (13th August, 2014)
|
||||
-------------------------------
|
||||
|
||||
A minor release to fix compilation bugs under Cygwin: the libiconv library
|
||||
must be listed AFTER the GNU Portability Library on that platform.
|
||||
A minor release to fix compilation bugs under Cygwin: the ``libiconv``
|
||||
library must be listed *after* the GNU Portability Library on that
|
||||
platform.
|
||||
|
||||
In addition, the minimum and maximum share return values were changed from
|
||||
-10% to -15% and 20% to 25% respectively. This gives more incentive to
|
||||
borrow money from the Interstellar Trading Bank, whose interest rate can
|
||||
reach a maximum of 20%.
|
||||
In addition, the minimum and maximum share return values were changed
|
||||
from -10% to -15% and 20% to 25% respectively. This gives more incentive
|
||||
to borrow money from the Interstellar Trading Bank, whose interest rate
|
||||
can reach a maximum of 20%.
|
||||
|
||||
|
||||
Version 7.5 (24th May, 2014)
|
||||
@ -128,10 +144,10 @@ Version 7.5 (24th May, 2014)
|
||||
Rewrote the file input and output routines so that saved games are now
|
||||
stored in a much more reliable (scrambled) ASCII format. However, saved
|
||||
games from older versions will no longer load: the workaround is to start
|
||||
the older version of Star Traders with the "--dont-encrypt" command line
|
||||
option, load the relevant game and save it again straight away, change the
|
||||
second line in the game file from "File API 7.2" to "File API 7.5", then
|
||||
run the new version of Star Traders.
|
||||
the older version of Star Traders with the ``--dont-encrypt`` command
|
||||
line option, load the relevant game and save it again straight away,
|
||||
change the second line in the game file from “``File API 7.2``” to
|
||||
“``File API 7.5``”, then run the new version of Star Traders.
|
||||
|
||||
Added translations for Norwegian Bokmål, Danish and Esperanto (in that
|
||||
order), with thanks to Johnny A. Solbu, Joe Hansen and Felipe Castro.
|
||||
@ -144,44 +160,44 @@ Version 7.4 (9th May, 2012)
|
||||
|
||||
For the first time since the CP/M-80 version of Star Traders, the game
|
||||
algorithms have been carefully reviewed and revised. In particular,
|
||||
companies may now have negative returns, making players lose money on such
|
||||
shares. This may encourage players to use the "Sell shares" option at
|
||||
appropriate times... In addition, changes in share prices, returns and
|
||||
bank interest rates have been made much "smoother", less prone to wild
|
||||
companies may now have negative returns, making players lose money on
|
||||
such shares. This may encourage players to use the “Sell shares” option
|
||||
at appropriate times… In addition, changes in share prices, returns and
|
||||
bank interest rates have been made much “smoother”, less prone to wild
|
||||
variations. These new algorithms were first modelled using Gnuplot and
|
||||
Perl before being implemented in C.
|
||||
|
||||
The "configure" script now prints a prominent warning if a wide-character
|
||||
version of Curses, such as NcursesW, is not available when compiling the
|
||||
game. It is a warning and not an error as single-byte locales (such as
|
||||
US-ASCII and ISO8859-1) do not require NcursesW, even if the compilation
|
||||
environment itself is a multibyte one (such as UTF-8).
|
||||
The ``configure`` script now prints a prominent warning if a
|
||||
wide-character version of Curses, such as NcursesW, is not available when
|
||||
compiling the game. It is a warning and not an error as single-byte
|
||||
locales (such as US-ASCII and ISO8859-1) do not require NcursesW, even if
|
||||
the compilation environment itself is a multibyte one (such as UTF-8).
|
||||
|
||||
The Russian translation has been updated, with thanks to Vladimir Tsarkov
|
||||
and Pavel Maryanov. Translations for French, German, Finnish and Croatian
|
||||
have been added (in that order), with thanks to Frédéric Marchal, Philipp
|
||||
Thomas, Jorma Karvonen and Tomislav Krznar. Special thanks also to the
|
||||
Translation Project, which brings free (open-source) software developers
|
||||
and translators together.
|
||||
and Pavel Maryanov. Translations for French, German, Finnish and
|
||||
Croatian have been added (in that order), with thanks to Frédéric
|
||||
Marchal, Philipp Thomas, Jorma Karvonen and Tomislav Krznar. Special
|
||||
thanks also to the Translation Project, which brings free (open-source)
|
||||
software developers and translators together.
|
||||
|
||||
|
||||
Version 7.3 (16th March, 2012)
|
||||
------------------------------
|
||||
|
||||
Star Traders has been translated into Russian. In addition, a number of
|
||||
bugs with internationalisation have been fixed. The "default value" key
|
||||
(originally "=" or ";" as the first key-press in any input field) has been
|
||||
incorporated into the language translation files.
|
||||
bugs with internationalisation have been fixed. The “default value” key
|
||||
(originally “``=``” or “``;``” as the first key-press in any input field)
|
||||
has been incorporated into the language translation files.
|
||||
|
||||
|
||||
Version 7.2 (29th August, 2011)
|
||||
-------------------------------
|
||||
|
||||
Star Traders has been internationalised! As part of this update, all
|
||||
input and output routines have been rewritten to handle multibyte strings.
|
||||
English (Australian, British, Canadian and US) translations have been
|
||||
included. Translations for other languages (and corrections to existing
|
||||
languages) are more than welcome!
|
||||
input and output routines have been rewritten to handle multibyte
|
||||
strings. English (Australian, British, Canadian and US) translations
|
||||
have been included. Translations for other languages (and corrections to
|
||||
existing languages) are more than welcome!
|
||||
|
||||
Game files are now stored in UTF-8 format (once decrypted!) and can be
|
||||
loaded under any locale with automatic character set translation. This
|
||||
@ -205,32 +221,32 @@ extended.
|
||||
Version 7.0 (25th July, 2011)
|
||||
-----------------------------
|
||||
|
||||
Released the first version of Star Traders for Unix-like operating systems
|
||||
such as Linux. It requires a text console or window of at least 80x24 in
|
||||
size. The code is written in the C99 programming language as a learning
|
||||
exercise for a number of software tools and libraries; the algorithms in
|
||||
the original Pascal and Visual Basic versions are reused for the game
|
||||
logic.
|
||||
Released the first version of Star Traders for Unix-like operating
|
||||
systems such as Linux. It requires a text console or window of at least
|
||||
80×24 in size. The code is written in the C99 programming language as a
|
||||
learning exercise for a number of software tools and libraries; the
|
||||
algorithms in the original Pascal and Visual Basic versions are reused
|
||||
for the game logic.
|
||||
|
||||
Note that versions 7.0 and 7.1 of Star Traders did NOT handle locales with
|
||||
multibyte character sequences (such as UTF-8) correctly. Each byte in a
|
||||
such a sequence was treated as a separate character. Eight-bit locales
|
||||
(such as US-ASCII, ISO8859-1, etc.) worked correctly.
|
||||
Note that versions 7.0 and 7.1 of Star Traders did *not* handle locales
|
||||
with multibyte character sequences (such as UTF-8) correctly. Each byte
|
||||
in a such a sequence was treated as a separate character. Eight-bit
|
||||
locales (such as US-ASCII, ISO8859-1, etc.) worked correctly.
|
||||
|
||||
|
||||
Early history
|
||||
-------------
|
||||
|
||||
The original (and very primitive) Star Traders game was written by S. J.
|
||||
The original (and very primitive) Star Traders game was written by S. J.
|
||||
Singer in 1984 using Altair Basic. This was modified for Microsoft Basic
|
||||
(MBASIC) running under the CP/M-80 operating system by John Zaitseff and
|
||||
released on 7th March, 1988.
|
||||
|
||||
Star Traders was then completely rewritten in 1990 for the Australian-
|
||||
designed 8-bit MicroBee computer running CP/M-80 on a Zilog Z80 processor,
|
||||
using Turbo Pascal 3.01a. Essentially, only the name of the game and some
|
||||
of the ideas were retained in this version. Version 4.1 of Star Traders
|
||||
was released on 1st August, 1991.
|
||||
Star Traders was then completely rewritten in 1990 for the
|
||||
Australian-designed 8-bit MicroBee computer running CP/M-80 on a Zilog
|
||||
Z80 processor, using Turbo Pascal 3.01a. Essentially, only the name of
|
||||
the game and some of the ideas were retained in this version. Version
|
||||
4.1 of Star Traders was released on 1st August, 1991.
|
||||
|
||||
In 1992, it was recompiled for the NEC Advanced Personal Computer (with
|
||||
8-inch floppy drives!) running CP/M-86 on an 8086 processor, using Turbo
|
||||
@ -238,17 +254,17 @@ Pascal 2.0. This version had colour added to it in the form of ANSI
|
||||
escape sequences; version 4.4 was released on 2nd August, 1993.
|
||||
|
||||
The next version came in 1993, when the program was recompiled to run on
|
||||
IBM-compatible machines running MS-DOS and ANSI.SYS. Turbo Pascal 6.0 was
|
||||
used for this. The ANSI escape sequences were slightly different under
|
||||
MS-DOS than under the NEC, in that the NEC supported a number of extra
|
||||
character attributes. In other words, the MS-DOS version looked worse
|
||||
than the one running under CP/M-86!
|
||||
IBM-compatible machines running MS-DOS and ANSI.SYS. Turbo Pascal 6.0
|
||||
was used for this. The ANSI escape sequences were slightly different
|
||||
under MS-DOS than under the NEC, in that the NEC supported a number of
|
||||
extra character attributes. In other words, the MS-DOS version looked
|
||||
worse than the one running under CP/M-86!
|
||||
|
||||
Star Traders was recompiled again in 1994 for IBM-compatible machines with
|
||||
VGA/EGA/CGA video graphics adapters. The output routines were recoded to
|
||||
use a "windowed" look. Borland Pascal 7.0 was used for this purpose,
|
||||
along with a number of text window manipulation modules. Version 5.4 was
|
||||
released on 1st June, 1994.
|
||||
Star Traders was recompiled again in 1994 for IBM-compatible machines
|
||||
with VGA/EGA/CGA video graphics adapters. The output routines were
|
||||
recoded to use a “windowed” look. Borland Pascal 7.0 was used for this
|
||||
purpose, along with a number of text window manipulation modules.
|
||||
Version 5.4 was released on 1st June, 1994.
|
||||
|
||||
In 1995, Star Traders was completely rewritten for the 16-bit Microsoft
|
||||
Windows 3.1 graphical environment. Microsoft Visual Basic 3.0 was used
|
||||
@ -256,4 +272,4 @@ for this purpose. Although completely rewritten, the original algorithms
|
||||
were reused from previous versions. Version 6.0 of the game was released
|
||||
on 15th September, 1995.
|
||||
|
||||
Star Traders was then to languish until almost 16 years later...
|
||||
Star Traders was then to languish until almost 16 years later…
|
||||
|
64
README
64
README
@ -1,9 +1,8 @@
|
||||
**************************************************************************
|
||||
* *
|
||||
* Star Traders: A Game of Interstellar Trading *
|
||||
* Copyright (C) 1990-2019, John Zaitseff *
|
||||
* *
|
||||
**************************************************************************
|
||||
.. -*- mode: rst; coding: utf-8 -*-
|
||||
|
||||
============================================
|
||||
Star Traders: A Game of Interstellar Trading
|
||||
============================================
|
||||
|
||||
Welcome to Star Traders! This is a simple game of interstellar trading,
|
||||
where the objective is to create companies, buy and sell shares, borrow
|
||||
@ -14,8 +13,8 @@ Installation
|
||||
============
|
||||
|
||||
Full instructions for installing Star Traders are contained in the file
|
||||
INSTALL. Please note that that file does NOT contain generic GNU Autoconf
|
||||
instructions! For the impatient, the short version is:
|
||||
`INSTALL`. Please note that that file does *not* contain generic GNU
|
||||
Autoconf instructions! For the impatient, the short version is::
|
||||
|
||||
./configure
|
||||
make
|
||||
@ -29,46 +28,45 @@ How to Play
|
||||
===========
|
||||
|
||||
Star Traders comes with quite extensive in-built instructions on how to
|
||||
play the game. Start by running "trader" from the command line. You will
|
||||
be prompted for the number of players; from one to eight people can play
|
||||
(although, in this version, they will all have to share the one keyboard
|
||||
and screen!). After entering the names of the players, you will have the
|
||||
opportunity to read instructions on how to play the game. Do so---and
|
||||
good luck in the game!
|
||||
play the game. Start by running ``trader`` from the command line. You
|
||||
will be prompted for the number of players; from one to eight people can
|
||||
play (although, in this version, they will all have to share the one
|
||||
keyboard and screen!). After entering the names of the players, you will
|
||||
have the opportunity to read instructions on how to play the game. Do
|
||||
so—and good luck in the game!
|
||||
|
||||
The manual page for Star Traders contains more information on command line
|
||||
options, as well as some suggestions for running a retro-computing green-
|
||||
screen nostalgia-tour version of the game... Try running the following,
|
||||
for example (all on one line):
|
||||
The manual page for Star Traders contains more information on command
|
||||
line options, as well as some suggestions for running a retro-computing
|
||||
green-screen nostalgia-tour version of the game… Try running the
|
||||
following, for example (all on one line)::
|
||||
|
||||
xterm -g 80x24 -fa Mono -fs 18 -bg '#181818' -fg '#2CAB00' -bc +sb \
|
||||
+bdc +fbx -xrm 'XTerm*colorBD: #41FF00' -e trader --no-colour &
|
||||
|
||||
To read the manual page, type "man trader" from the command line.
|
||||
To read the manual page, type ``man trader`` from the command line.
|
||||
|
||||
|
||||
Feedback
|
||||
========
|
||||
|
||||
Your comments, suggestions, corrections and enhancements are always warmly
|
||||
welcomed! Please send these to:
|
||||
Your comments, suggestions, corrections and enhancements are always
|
||||
warmly welcomed! Please send these to:
|
||||
|
||||
Postal: John Zaitseff,
|
||||
The ZAP Group,
|
||||
Unit 6, 116 Woodburn Road,
|
||||
Berala, NSW, 2141,
|
||||
Australia
|
||||
|
||||
E-mail: J.Zaitseff@zap.org.au
|
||||
Web: https://www.zap.org.au/software/trader/
|
||||
FTP: https://ftp.zap.org.au/pub/trader/
|
||||
ftp://ftp.zap.org.au/pub/trader/
|
||||
:Postal: | John Zaitseff,
|
||||
| The ZAP Group,
|
||||
| Unit 6, 116 Woodburn Road,
|
||||
| Berala, NSW, 2141,
|
||||
| Australia
|
||||
:Email: | J.Zaitseff@zap.org.au
|
||||
:Web: | https://www.zap.org.au/software/trader/
|
||||
:FTP: | https://ftp.zap.org.au/pub/trader/
|
||||
| ftp://ftp.zap.org.au/pub/trader/
|
||||
|
||||
|
||||
Copyright
|
||||
=========
|
||||
|
||||
Copyright (C) 1990-2019, John Zaitseff.
|
||||
**Copyright © 1990–2019, John Zaitseff.**
|
||||
|
||||
Star Traders is free software that is distributed under the terms of the
|
||||
GNU General Public License. You can redistribute it and/or modify it
|
||||
@ -78,4 +76,4 @@ Foundation, either version 3 or (at your option) any later version.
|
||||
This game is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License in
|
||||
the file COPYING for more details.
|
||||
the file `COPYING` for more details.
|
||||
|
@ -1,17 +1,16 @@
|
||||
**************************************************************************
|
||||
* *
|
||||
* Star Traders: A Game of Interstellar Trading *
|
||||
* Copyright (C) 1990-2019, John Zaitseff *
|
||||
* *
|
||||
**************************************************************************
|
||||
.. -*- mode: rst; coding: utf-8 -*-
|
||||
|
||||
This directory, build-aux, contains auxiliary build-related files for Star
|
||||
Traders. The following scripts are specific to this package:
|
||||
============================================
|
||||
Star Traders: A Game of Interstellar Trading
|
||||
============================================
|
||||
|
||||
bootstrap - Generate auxiliary files needed for building
|
||||
msgfmt-desktop - Use msgfmt(1) or cp(1) to copy desktop files
|
||||
This directory, `build-aux`, contains auxiliary build-related files for
|
||||
Star Traders. The following scripts are specific to this package:
|
||||
|
||||
All other files in this directory (other than this README file, of course)
|
||||
are generated by Autoconf, Automake or Gnulib. The bootstrap shell script
|
||||
generates these files by running those tools in the correct order; see the
|
||||
top-level INSTALL file for more details.
|
||||
* `bootstrap`: Generate auxiliary files needed for building
|
||||
* `msgfmt-desktop`: Use ``msgfmt``\(1) or ``cp``\(1) to copy desktop files
|
||||
|
||||
All other files in this directory (other than this `README` file, of
|
||||
course) are generated by Autoconf, Automake or Gnulib. The bootstrap
|
||||
shell script generates these files by running those tools in the correct
|
||||
order; see the top-level `INSTALL` file for more details.
|
||||
|
15
data/README
15
data/README
@ -1,9 +1,8 @@
|
||||
**************************************************************************
|
||||
* *
|
||||
* Star Traders: A Game of Interstellar Trading *
|
||||
* Copyright (C) 1990-2019, John Zaitseff *
|
||||
* *
|
||||
**************************************************************************
|
||||
.. -*- mode: rst; coding: utf-8 -*-
|
||||
|
||||
This directory, data, contains non-code data related to Star Traders. In
|
||||
particular, the desktop file and icons are located here.
|
||||
============================================
|
||||
Star Traders: A Game of Interstellar Trading
|
||||
============================================
|
||||
|
||||
This directory, `data`, contains non-code data related to Star Traders.
|
||||
In particular, the desktop file and icons are located here.
|
||||
|
16
doc/README
16
doc/README
@ -1,9 +1,9 @@
|
||||
**************************************************************************
|
||||
* *
|
||||
* Star Traders: A Game of Interstellar Trading *
|
||||
* Copyright (C) 1990-2019, John Zaitseff *
|
||||
* *
|
||||
**************************************************************************
|
||||
.. -*- mode: rst; coding: utf-8 -*-
|
||||
|
||||
This directory, doc, contains documentation related to Star Traders. In
|
||||
particular, the Unix manual page for the game is in the file "trader.6".
|
||||
============================================
|
||||
Star Traders: A Game of Interstellar Trading
|
||||
============================================
|
||||
|
||||
This directory, `doc`, contains documentation related to Star Traders.
|
||||
In particular, the Unix manual page for the game is in the file
|
||||
`trader.6`.
|
||||
|
29
lib/README
29
lib/README
@ -1,20 +1,23 @@
|
||||
**************************************************************************
|
||||
* *
|
||||
* Star Traders: A Game of Interstellar Trading *
|
||||
* Copyright (C) 1990-2019, John Zaitseff *
|
||||
* *
|
||||
**************************************************************************
|
||||
.. -*- mode: rst; coding: utf-8 -*-
|
||||
|
||||
This directory, lib, contains source code as generated by the Gnulib GNU
|
||||
Portability Library "gnulib-tool" script. See the project web site at
|
||||
https://www.gnu.org/software/gnulib/ for more information.
|
||||
============================================
|
||||
Star Traders: A Game of Interstellar Trading
|
||||
============================================
|
||||
|
||||
The following file is used by xopen-source.m4 to redefine _XOPEN_SOURCE
|
||||
appropriately. It is not part of the GNU Portability Library:
|
||||
This directory, `lib`, contains source code as generated by the `Gnulib
|
||||
GNU Portability Library`__ ``gnulib-tool`` script. See that project web
|
||||
site for more information.
|
||||
|
||||
xopen-source.h
|
||||
__ https://www.gnu.org/software/gnulib/
|
||||
|
||||
|
||||
The following file is used by `xopen-source.m4` to redefine
|
||||
``_XOPEN_SOURCE`` appropriately. It is not part of the GNU Portability
|
||||
Library:
|
||||
|
||||
* `xopen-source.h`
|
||||
|
||||
The following file provides translatable strings for obsolete versions of
|
||||
various libraries. It is not part of the GNU Portability Library:
|
||||
|
||||
obsolete-strings.c
|
||||
* `obsolete-strings.c`
|
||||
|
46
m4/README
46
m4/README
@ -1,28 +1,34 @@
|
||||
**************************************************************************
|
||||
* *
|
||||
* Star Traders: A Game of Interstellar Trading *
|
||||
* Copyright (C) 1990-2019, John Zaitseff *
|
||||
* *
|
||||
**************************************************************************
|
||||
.. -*- mode: rst; coding: utf-8 -*-
|
||||
|
||||
============================================
|
||||
Star Traders: A Game of Interstellar Trading
|
||||
============================================
|
||||
|
||||
This directory, `m4`, contains M4 macros used by Autoconf.
|
||||
|
||||
This directory, m4, contains M4 macros used by Autoconf.
|
||||
|
||||
The following macro is custom-defined for Star Traders:
|
||||
|
||||
xopen-source.m4
|
||||
* `xopen-source.m4`
|
||||
|
||||
The following macros are from the Autoconf Archive project, as detailed on
|
||||
that project's web site, https://www.gnu.org/software/autoconf-archive/:
|
||||
|
||||
ax_c___attribute__.m4
|
||||
ax_cflags_warn_all.m4
|
||||
ax_compiler_vendor.m4
|
||||
ax_prepend_flag.m4
|
||||
ax_require_defined.m4
|
||||
ax_with_curses.m4
|
||||
The following macros are from the `Autoconf Archive project`__, as
|
||||
detailed on that project’s web site:
|
||||
|
||||
The following macro was generated by running the GNU Portability Library
|
||||
"gnulib-tool" with appropriate command line options, as detailed on that
|
||||
project's web site, https://www.gnu.org/software/gnulib/:
|
||||
* `ax_c___attribute__.m4`
|
||||
* `ax_cflags_warn_all.m4`
|
||||
* `ax_compiler_vendor.m4`
|
||||
* `ax_prepend_flag.m4`
|
||||
* `ax_require_defined.m4`
|
||||
* `ax_with_curses.m4`
|
||||
|
||||
gnulib-cache.m4
|
||||
__ https://www.gnu.org/software/autoconf-archive/
|
||||
|
||||
|
||||
The following macro was generated by running the `GNU Portability
|
||||
Library`__ ``gnulib-tool`` with appropriate command line options, as
|
||||
detailed on that project’s web site:
|
||||
|
||||
* `gnulib-cache.m4`
|
||||
|
||||
__ https://www.gnu.org/software/gnulib/
|
||||
|
17
po/README
17
po/README
@ -1,9 +1,10 @@
|
||||
**************************************************************************
|
||||
* *
|
||||
* Star Traders: A Game of Interstellar Trading *
|
||||
* Copyright (C) 1990-2019, John Zaitseff *
|
||||
* *
|
||||
**************************************************************************
|
||||
.. -*- mode: rst; coding: utf-8 -*-
|
||||
|
||||
This directory, po, contains translations for text strings used in Star
|
||||
Traders. The GNU Gettext project is used for this purpose.
|
||||
============================================
|
||||
Star Traders: A Game of Interstellar Trading
|
||||
============================================
|
||||
|
||||
This directory, `po`, contains translations for text strings used in Star
|
||||
Traders. The `GNU Gettext project`__ is used for this purpose.
|
||||
|
||||
__ https://www.gnu.org/software/gettext/
|
||||
|
35
src/README
35
src/README
@ -1,20 +1,19 @@
|
||||
**************************************************************************
|
||||
* *
|
||||
* Star Traders: A Game of Interstellar Trading *
|
||||
* Copyright (C) 1990-2019, John Zaitseff *
|
||||
* *
|
||||
**************************************************************************
|
||||
.. -*- mode: rst; coding: utf-8 -*-
|
||||
|
||||
This directory, src, contains the main source code for Star Traders. The
|
||||
source code is split up among the following files:
|
||||
============================================
|
||||
Star Traders: A Game of Interstellar Trading
|
||||
============================================
|
||||
|
||||
trader.c trader.h - Main program, command-line interface
|
||||
globals.c globals.h - Global game constants and variables
|
||||
game.c game.h - Game start, end and (some) display functions
|
||||
move.c move.h - Functions for making and processing a move
|
||||
exch.c exch.h - Stock Exchange and Bank functions
|
||||
fileio.c fileio.h - Load and save game file functions
|
||||
help.c help.h - Help text functions: how to play the game
|
||||
intf.c intf.h - Basic text input/output functions
|
||||
utils.c utils.h - Utility functions needed by Star Traders
|
||||
system.h - All system header files are included here
|
||||
This directory, `src`, contains the main source code for Star Traders.
|
||||
The source code is split up among the following files:
|
||||
|
||||
* `trader.c`, `trader.h`: Main program, command-line interface
|
||||
* `globals.c`, `globals.h`: Global game constants and variables
|
||||
* `game.c`, `game.h`: Game start, end and (some) display functions
|
||||
* `move.c`, `move.h`: Functions for making and processing a move
|
||||
* `exch.c`, `exch.h`: Stock Exchange and Bank functions
|
||||
* `fileio.c`, `fileio.h`: Load and save game file functions
|
||||
* `help.c`, `help.h`: Help text functions: how to play the game
|
||||
* `intf.c`, `intf.h`: Basic text input/output functions
|
||||
* `utils.c`, `utils.h`: Utility functions needed by Star Traders
|
||||
* `system.h`: All system header files are included here
|
||||
|
Loading…
Reference in New Issue
Block a user