bulk data dump
This commit is contained in:
@@ -0,0 +1,3 @@
|
||||
Jason Bou-Samra [ParagonSoft]
|
||||
e-mail: paragon@bou-samra.org
|
||||
www: https://bou-samra.github.io/paragon
|
||||
@@ -0,0 +1,2 @@
|
||||
18/03/2023 - foundation code
|
||||
25/03/2023 - final working source (v1.0)
|
||||
+674
@@ -0,0 +1,674 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 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.
|
||||
|
||||
Preamble
|
||||
|
||||
The GNU General Public License is a free, copyleft license for
|
||||
software 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.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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' 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 of the GPL to prohibit the practice for those
|
||||
products. If such problems arise substantially in other domains, we
|
||||
stand ready to extend this provision to those domains in future versions
|
||||
of the GPL, as needed to 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.
|
||||
|
||||
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.
|
||||
|
||||
"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.
|
||||
|
||||
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.
|
||||
|
||||
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 "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 extent that it includes a convenient and prominently visible
|
||||
feature 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 work.
|
||||
|
||||
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 "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 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.
|
||||
|
||||
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
|
||||
conditions are met. This License explicitly affirms your unlimited
|
||||
permission to run the unmodified Program. The output from running a
|
||||
covered work is covered by this License only if the output, given its
|
||||
content, constitutes a covered work. This License acknowledges your
|
||||
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.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under
|
||||
the 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 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
|
||||
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.
|
||||
|
||||
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:
|
||||
|
||||
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".
|
||||
|
||||
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 separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
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 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.
|
||||
|
||||
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 Corresponding Source under the terms of this License,
|
||||
in one of these ways:
|
||||
|
||||
a) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by the
|
||||
Corresponding Source fixed on a durable physical medium
|
||||
customarily used for software interchange.
|
||||
|
||||
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 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.
|
||||
|
||||
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.
|
||||
|
||||
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 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 obligated to ensure that it is
|
||||
available for as long as needed to satisfy these requirements.
|
||||
|
||||
e) Convey the object code using peer-to-peer transmission, provided
|
||||
you inform other peers where the object code and Corresponding
|
||||
Source of 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 "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.
|
||||
|
||||
"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
|
||||
suffice to ensure that the continued functioning of the modified object
|
||||
code is in no case prevented or interfered with solely because
|
||||
modification has been made.
|
||||
|
||||
If you convey an object code work under this section in, or with, or
|
||||
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).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
for a work that has been modified or installed by the recipient, or for
|
||||
the User Product in which it has been modified or installed. Access to a
|
||||
network may be denied when the modification itself materially and
|
||||
adversely affects the operation of the network or violates the rules and
|
||||
protocols for communication across the network.
|
||||
|
||||
Corresponding Source conveyed, and Installation Information provided,
|
||||
in accord with this section must be in a format that is publicly
|
||||
documented (and with an implementation available to the public in
|
||||
source code form), 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
|
||||
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 permissions, but the entire Program remains governed by
|
||||
this License without regard to the additional permissions.
|
||||
|
||||
When you convey a copy of a covered work, you may at your option
|
||||
remove any additional permissions from that copy, or from any part of
|
||||
it. (Additional permissions may be written to require their own
|
||||
removal in certain cases when you modify the work.) You may place
|
||||
additional 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:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the
|
||||
terms of sections 15 and 16 of this License; or
|
||||
|
||||
b) Requiring preservation of specified reasonable legal notices or
|
||||
author attributions in that material or in the Appropriate Legal
|
||||
Notices displayed by works containing it; or
|
||||
|
||||
c) Prohibiting misrepresentation of the origin of that material, or
|
||||
requiring that modified versions of such material be marked in
|
||||
reasonable ways as different from the original version; or
|
||||
|
||||
d) Limiting the use for publicity purposes of names of licensors or
|
||||
authors of the material; or
|
||||
|
||||
e) Declining to grant rights under trademark law for use of some
|
||||
trade names, trademarks, or service marks; or
|
||||
|
||||
f) Requiring indemnification of licensors and authors of that
|
||||
material by anyone who conveys the material (or modified versions of
|
||||
it) with contractual assumptions of liability to the recipient, for
|
||||
any 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
|
||||
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 restriction but permits relicensing or conveying under this
|
||||
License, you may add to a covered work material governed by the terms
|
||||
of that license document, provided that the further restriction does
|
||||
not survive such relicensing or conveying.
|
||||
|
||||
If you add terms to a covered work in accord with this section, you
|
||||
must place, in the relevant source files, a statement of the
|
||||
additional terms that apply to those files, or a notice indicating
|
||||
where to find the applicable terms.
|
||||
|
||||
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).
|
||||
|
||||
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.
|
||||
|
||||
Moreover, your license from a particular copyright holder is
|
||||
reinstated permanently if the copyright holder notifies you of the
|
||||
violation by some reasonable means, this is the first time you have
|
||||
received notice of 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
|
||||
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.
|
||||
|
||||
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
|
||||
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 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.
|
||||
|
||||
11. Patents.
|
||||
|
||||
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".
|
||||
|
||||
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.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
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
|
||||
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.
|
||||
|
||||
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 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 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.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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 of the GNU Affero General Public License into a single
|
||||
combined work, and to convey the resulting work. The terms of this
|
||||
License will continue to 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
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
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 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 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 of acceptance of a version permanently authorizes you
|
||||
to choose that version for the Program.
|
||||
|
||||
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
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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 courts shall apply local law that most closely approximates
|
||||
an absolute 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
|
||||
|
||||
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
|
||||
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.
|
||||
|
||||
<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
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program 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 for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
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'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
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".
|
||||
|
||||
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>.
|
||||
+674
@@ -0,0 +1,674 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 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.
|
||||
|
||||
Preamble
|
||||
|
||||
The GNU General Public License is a free, copyleft license for
|
||||
software 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.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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' 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 of the GPL to prohibit the practice for those
|
||||
products. If such problems arise substantially in other domains, we
|
||||
stand ready to extend this provision to those domains in future versions
|
||||
of the GPL, as needed to 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.
|
||||
|
||||
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.
|
||||
|
||||
"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.
|
||||
|
||||
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.
|
||||
|
||||
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 "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 extent that it includes a convenient and prominently visible
|
||||
feature 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 work.
|
||||
|
||||
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 "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 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.
|
||||
|
||||
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
|
||||
conditions are met. This License explicitly affirms your unlimited
|
||||
permission to run the unmodified Program. The output from running a
|
||||
covered work is covered by this License only if the output, given its
|
||||
content, constitutes a covered work. This License acknowledges your
|
||||
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.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under
|
||||
the 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 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
|
||||
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.
|
||||
|
||||
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:
|
||||
|
||||
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".
|
||||
|
||||
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 separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
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 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.
|
||||
|
||||
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 Corresponding Source under the terms of this License,
|
||||
in one of these ways:
|
||||
|
||||
a) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by the
|
||||
Corresponding Source fixed on a durable physical medium
|
||||
customarily used for software interchange.
|
||||
|
||||
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 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.
|
||||
|
||||
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.
|
||||
|
||||
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 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 obligated to ensure that it is
|
||||
available for as long as needed to satisfy these requirements.
|
||||
|
||||
e) Convey the object code using peer-to-peer transmission, provided
|
||||
you inform other peers where the object code and Corresponding
|
||||
Source of 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 "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.
|
||||
|
||||
"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
|
||||
suffice to ensure that the continued functioning of the modified object
|
||||
code is in no case prevented or interfered with solely because
|
||||
modification has been made.
|
||||
|
||||
If you convey an object code work under this section in, or with, or
|
||||
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).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
for a work that has been modified or installed by the recipient, or for
|
||||
the User Product in which it has been modified or installed. Access to a
|
||||
network may be denied when the modification itself materially and
|
||||
adversely affects the operation of the network or violates the rules and
|
||||
protocols for communication across the network.
|
||||
|
||||
Corresponding Source conveyed, and Installation Information provided,
|
||||
in accord with this section must be in a format that is publicly
|
||||
documented (and with an implementation available to the public in
|
||||
source code form), 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
|
||||
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 permissions, but the entire Program remains governed by
|
||||
this License without regard to the additional permissions.
|
||||
|
||||
When you convey a copy of a covered work, you may at your option
|
||||
remove any additional permissions from that copy, or from any part of
|
||||
it. (Additional permissions may be written to require their own
|
||||
removal in certain cases when you modify the work.) You may place
|
||||
additional 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:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the
|
||||
terms of sections 15 and 16 of this License; or
|
||||
|
||||
b) Requiring preservation of specified reasonable legal notices or
|
||||
author attributions in that material or in the Appropriate Legal
|
||||
Notices displayed by works containing it; or
|
||||
|
||||
c) Prohibiting misrepresentation of the origin of that material, or
|
||||
requiring that modified versions of such material be marked in
|
||||
reasonable ways as different from the original version; or
|
||||
|
||||
d) Limiting the use for publicity purposes of names of licensors or
|
||||
authors of the material; or
|
||||
|
||||
e) Declining to grant rights under trademark law for use of some
|
||||
trade names, trademarks, or service marks; or
|
||||
|
||||
f) Requiring indemnification of licensors and authors of that
|
||||
material by anyone who conveys the material (or modified versions of
|
||||
it) with contractual assumptions of liability to the recipient, for
|
||||
any 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
|
||||
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 restriction but permits relicensing or conveying under this
|
||||
License, you may add to a covered work material governed by the terms
|
||||
of that license document, provided that the further restriction does
|
||||
not survive such relicensing or conveying.
|
||||
|
||||
If you add terms to a covered work in accord with this section, you
|
||||
must place, in the relevant source files, a statement of the
|
||||
additional terms that apply to those files, or a notice indicating
|
||||
where to find the applicable terms.
|
||||
|
||||
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).
|
||||
|
||||
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.
|
||||
|
||||
Moreover, your license from a particular copyright holder is
|
||||
reinstated permanently if the copyright holder notifies you of the
|
||||
violation by some reasonable means, this is the first time you have
|
||||
received notice of 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
|
||||
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.
|
||||
|
||||
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
|
||||
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 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.
|
||||
|
||||
11. Patents.
|
||||
|
||||
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".
|
||||
|
||||
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.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
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
|
||||
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.
|
||||
|
||||
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 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 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.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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 of the GNU Affero General Public License into a single
|
||||
combined work, and to convey the resulting work. The terms of this
|
||||
License will continue to 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
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
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 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 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 of acceptance of a version permanently authorizes you
|
||||
to choose that version for the Program.
|
||||
|
||||
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
|
||||
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.
|
||||
|
||||
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.
|
||||
|
||||
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 courts shall apply local law that most closely approximates
|
||||
an absolute 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
|
||||
|
||||
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
|
||||
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.
|
||||
|
||||
<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
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program 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 for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
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'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
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".
|
||||
|
||||
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>.
|
||||
@@ -0,0 +1,3 @@
|
||||
3DCube displays a rotating 3D vector graphic of a cube.
|
||||
Written in Ada with language bindings for SDL provided by SDLAda (https://github.com/Lucretia/sdlada).
|
||||
have fun!
|
||||
@@ -0,0 +1,7 @@
|
||||
Compiling requires some prerequisites
|
||||
|
||||
1. Clone git repository of SDLAda https://github.com/Lucretia/sdlada and follow instructions as provided in README.md file.
|
||||
2. Install SDL2-devel and SDL2_image-devel (depending on your Linux distribution the names of the packages may vary somewhat).
|
||||
3. Update the threed.gpr file so that it contains full pathname of sdlada/share/gpr/sdlada.gpr".
|
||||
4. gprbuild -largs $(pkg-config sdl2 SDL2_image --libs) (install additional packages as required).
|
||||
5. If everything goes as planned you will have an executable file created which can be run from the command line.
|
||||
+393
@@ -0,0 +1,393 @@
|
||||
pragma Warnings (Off);
|
||||
pragma Ada_95;
|
||||
pragma Source_File_Name (ada_main, Spec_File_Name => "b__threed.ads");
|
||||
pragma Source_File_Name (ada_main, Body_File_Name => "b__threed.adb");
|
||||
pragma Suppress (Overflow_Check);
|
||||
with Ada.Exceptions;
|
||||
|
||||
package body ada_main is
|
||||
|
||||
E083 : Short_Integer; pragma Import (Ada, E083, "system__os_lib_E");
|
||||
E010 : Short_Integer; pragma Import (Ada, E010, "ada__exceptions_E");
|
||||
E015 : Short_Integer; pragma Import (Ada, E015, "system__soft_links_E");
|
||||
E027 : Short_Integer; pragma Import (Ada, E027, "system__exception_table_E");
|
||||
E050 : Short_Integer; pragma Import (Ada, E050, "ada__containers_E");
|
||||
E078 : Short_Integer; pragma Import (Ada, E078, "ada__io_exceptions_E");
|
||||
E034 : Short_Integer; pragma Import (Ada, E034, "ada__numerics_E");
|
||||
E065 : Short_Integer; pragma Import (Ada, E065, "ada__strings_E");
|
||||
E067 : Short_Integer; pragma Import (Ada, E067, "ada__strings__maps_E");
|
||||
E070 : Short_Integer; pragma Import (Ada, E070, "ada__strings__maps__constants_E");
|
||||
E055 : Short_Integer; pragma Import (Ada, E055, "interfaces__c_E");
|
||||
E028 : Short_Integer; pragma Import (Ada, E028, "system__exceptions_E");
|
||||
E092 : Short_Integer; pragma Import (Ada, E092, "system__object_reader_E");
|
||||
E060 : Short_Integer; pragma Import (Ada, E060, "system__dwarf_lines_E");
|
||||
E023 : Short_Integer; pragma Import (Ada, E023, "system__soft_links__initialize_E");
|
||||
E049 : Short_Integer; pragma Import (Ada, E049, "system__traceback__symbolic_E");
|
||||
E033 : Short_Integer; pragma Import (Ada, E033, "system__img_int_E");
|
||||
E073 : Short_Integer; pragma Import (Ada, E073, "system__img_uns_E");
|
||||
E172 : Short_Integer; pragma Import (Ada, E172, "ada__assertions_E");
|
||||
E121 : Short_Integer; pragma Import (Ada, E121, "ada__strings__utf_encoding_E");
|
||||
E129 : Short_Integer; pragma Import (Ada, E129, "ada__tags_E");
|
||||
E119 : Short_Integer; pragma Import (Ada, E119, "ada__strings__text_buffers_E");
|
||||
E155 : Short_Integer; pragma Import (Ada, E155, "interfaces__c__strings_E");
|
||||
E137 : Short_Integer; pragma Import (Ada, E137, "ada__streams_E");
|
||||
E149 : Short_Integer; pragma Import (Ada, E149, "system__file_control_block_E");
|
||||
E148 : Short_Integer; pragma Import (Ada, E148, "system__finalization_root_E");
|
||||
E146 : Short_Integer; pragma Import (Ada, E146, "ada__finalization_E");
|
||||
E145 : Short_Integer; pragma Import (Ada, E145, "system__file_io_E");
|
||||
E176 : Short_Integer; pragma Import (Ada, E176, "system__storage_pools_E");
|
||||
E174 : Short_Integer; pragma Import (Ada, E174, "system__finalization_masters_E");
|
||||
E178 : Short_Integer; pragma Import (Ada, E178, "system__storage_pools__subpools_E");
|
||||
E008 : Short_Integer; pragma Import (Ada, E008, "ada__calendar_E");
|
||||
E006 : Short_Integer; pragma Import (Ada, E006, "ada__calendar__delays_E");
|
||||
E135 : Short_Integer; pragma Import (Ada, E135, "ada__text_io_E");
|
||||
E189 : Short_Integer; pragma Import (Ada, E189, "system__pool_global_E");
|
||||
E211 : Short_Integer; pragma Import (Ada, E211, "sdl__rwops_E");
|
||||
E166 : Short_Integer; pragma Import (Ada, E166, "sdl__video_E");
|
||||
E187 : Short_Integer; pragma Import (Ada, E187, "sdl__video__palettes_E");
|
||||
E185 : Short_Integer; pragma Import (Ada, E185, "sdl__video__pixel_formats_E");
|
||||
E216 : Short_Integer; pragma Import (Ada, E216, "sdl__video__pixels_E");
|
||||
E193 : Short_Integer; pragma Import (Ada, E193, "sdl__video__rectangles_E");
|
||||
E195 : Short_Integer; pragma Import (Ada, E195, "sdl__video__surfaces_E");
|
||||
E215 : Short_Integer; pragma Import (Ada, E215, "sdl__video__textures_E");
|
||||
E168 : Short_Integer; pragma Import (Ada, E168, "sdl__video__windows_E");
|
||||
E158 : Short_Integer; pragma Import (Ada, E158, "sdl__events__events_E");
|
||||
E213 : Short_Integer; pragma Import (Ada, E213, "sdl__video__renderers_E");
|
||||
E207 : Short_Integer; pragma Import (Ada, E207, "sdl__images_E");
|
||||
E209 : Short_Integer; pragma Import (Ada, E209, "sdl__images__io_E");
|
||||
|
||||
Sec_Default_Sized_Stacks : array (1 .. 1) of aliased System.Secondary_Stack.SS_Stack (System.Parameters.Runtime_Default_Sec_Stack_Size);
|
||||
|
||||
Local_Priority_Specific_Dispatching : constant String := "";
|
||||
Local_Interrupt_States : constant String := "";
|
||||
|
||||
Is_Elaborated : Boolean := False;
|
||||
|
||||
procedure finalize_library is
|
||||
begin
|
||||
E213 := E213 - 1;
|
||||
declare
|
||||
procedure F1;
|
||||
pragma Import (Ada, F1, "sdl__video__renderers__finalize_spec");
|
||||
begin
|
||||
F1;
|
||||
end;
|
||||
E168 := E168 - 1;
|
||||
declare
|
||||
procedure F2;
|
||||
pragma Import (Ada, F2, "sdl__video__windows__finalize_spec");
|
||||
begin
|
||||
F2;
|
||||
end;
|
||||
E215 := E215 - 1;
|
||||
declare
|
||||
procedure F3;
|
||||
pragma Import (Ada, F3, "sdl__video__textures__finalize_spec");
|
||||
begin
|
||||
F3;
|
||||
end;
|
||||
E195 := E195 - 1;
|
||||
declare
|
||||
procedure F4;
|
||||
pragma Import (Ada, F4, "sdl__video__surfaces__finalize_spec");
|
||||
begin
|
||||
F4;
|
||||
end;
|
||||
declare
|
||||
procedure F5;
|
||||
pragma Import (Ada, F5, "sdl__video__palettes__finalize_body");
|
||||
begin
|
||||
E187 := E187 - 1;
|
||||
F5;
|
||||
end;
|
||||
declare
|
||||
procedure F6;
|
||||
pragma Import (Ada, F6, "sdl__video__palettes__finalize_spec");
|
||||
begin
|
||||
F6;
|
||||
end;
|
||||
E189 := E189 - 1;
|
||||
declare
|
||||
procedure F7;
|
||||
pragma Import (Ada, F7, "system__pool_global__finalize_spec");
|
||||
begin
|
||||
F7;
|
||||
end;
|
||||
E135 := E135 - 1;
|
||||
declare
|
||||
procedure F8;
|
||||
pragma Import (Ada, F8, "ada__text_io__finalize_spec");
|
||||
begin
|
||||
F8;
|
||||
end;
|
||||
E178 := E178 - 1;
|
||||
declare
|
||||
procedure F9;
|
||||
pragma Import (Ada, F9, "system__storage_pools__subpools__finalize_spec");
|
||||
begin
|
||||
F9;
|
||||
end;
|
||||
E174 := E174 - 1;
|
||||
declare
|
||||
procedure F10;
|
||||
pragma Import (Ada, F10, "system__finalization_masters__finalize_spec");
|
||||
begin
|
||||
F10;
|
||||
end;
|
||||
declare
|
||||
procedure F11;
|
||||
pragma Import (Ada, F11, "system__file_io__finalize_body");
|
||||
begin
|
||||
E145 := E145 - 1;
|
||||
F11;
|
||||
end;
|
||||
declare
|
||||
procedure Reraise_Library_Exception_If_Any;
|
||||
pragma Import (Ada, Reraise_Library_Exception_If_Any, "__gnat_reraise_library_exception_if_any");
|
||||
begin
|
||||
Reraise_Library_Exception_If_Any;
|
||||
end;
|
||||
end finalize_library;
|
||||
|
||||
procedure adafinal is
|
||||
procedure s_stalib_adafinal;
|
||||
pragma Import (Ada, s_stalib_adafinal, "system__standard_library__adafinal");
|
||||
|
||||
procedure Runtime_Finalize;
|
||||
pragma Import (C, Runtime_Finalize, "__gnat_runtime_finalize");
|
||||
|
||||
begin
|
||||
if not Is_Elaborated then
|
||||
return;
|
||||
end if;
|
||||
Is_Elaborated := False;
|
||||
Runtime_Finalize;
|
||||
s_stalib_adafinal;
|
||||
end adafinal;
|
||||
|
||||
type No_Param_Proc is access procedure;
|
||||
pragma Favor_Top_Level (No_Param_Proc);
|
||||
|
||||
procedure adainit is
|
||||
Main_Priority : Integer;
|
||||
pragma Import (C, Main_Priority, "__gl_main_priority");
|
||||
Time_Slice_Value : Integer;
|
||||
pragma Import (C, Time_Slice_Value, "__gl_time_slice_val");
|
||||
WC_Encoding : Character;
|
||||
pragma Import (C, WC_Encoding, "__gl_wc_encoding");
|
||||
Locking_Policy : Character;
|
||||
pragma Import (C, Locking_Policy, "__gl_locking_policy");
|
||||
Queuing_Policy : Character;
|
||||
pragma Import (C, Queuing_Policy, "__gl_queuing_policy");
|
||||
Task_Dispatching_Policy : Character;
|
||||
pragma Import (C, Task_Dispatching_Policy, "__gl_task_dispatching_policy");
|
||||
Priority_Specific_Dispatching : System.Address;
|
||||
pragma Import (C, Priority_Specific_Dispatching, "__gl_priority_specific_dispatching");
|
||||
Num_Specific_Dispatching : Integer;
|
||||
pragma Import (C, Num_Specific_Dispatching, "__gl_num_specific_dispatching");
|
||||
Main_CPU : Integer;
|
||||
pragma Import (C, Main_CPU, "__gl_main_cpu");
|
||||
Interrupt_States : System.Address;
|
||||
pragma Import (C, Interrupt_States, "__gl_interrupt_states");
|
||||
Num_Interrupt_States : Integer;
|
||||
pragma Import (C, Num_Interrupt_States, "__gl_num_interrupt_states");
|
||||
Unreserve_All_Interrupts : Integer;
|
||||
pragma Import (C, Unreserve_All_Interrupts, "__gl_unreserve_all_interrupts");
|
||||
Detect_Blocking : Integer;
|
||||
pragma Import (C, Detect_Blocking, "__gl_detect_blocking");
|
||||
Default_Stack_Size : Integer;
|
||||
pragma Import (C, Default_Stack_Size, "__gl_default_stack_size");
|
||||
Default_Secondary_Stack_Size : System.Parameters.Size_Type;
|
||||
pragma Import (C, Default_Secondary_Stack_Size, "__gnat_default_ss_size");
|
||||
Bind_Env_Addr : System.Address;
|
||||
pragma Import (C, Bind_Env_Addr, "__gl_bind_env_addr");
|
||||
|
||||
procedure Runtime_Initialize (Install_Handler : Integer);
|
||||
pragma Import (C, Runtime_Initialize, "__gnat_runtime_initialize");
|
||||
|
||||
Finalize_Library_Objects : No_Param_Proc;
|
||||
pragma Import (C, Finalize_Library_Objects, "__gnat_finalize_library_objects");
|
||||
Binder_Sec_Stacks_Count : Natural;
|
||||
pragma Import (Ada, Binder_Sec_Stacks_Count, "__gnat_binder_ss_count");
|
||||
Default_Sized_SS_Pool : System.Address;
|
||||
pragma Import (Ada, Default_Sized_SS_Pool, "__gnat_default_ss_pool");
|
||||
|
||||
begin
|
||||
if Is_Elaborated then
|
||||
return;
|
||||
end if;
|
||||
Is_Elaborated := True;
|
||||
Main_Priority := -1;
|
||||
Time_Slice_Value := -1;
|
||||
WC_Encoding := 'b';
|
||||
Locking_Policy := ' ';
|
||||
Queuing_Policy := ' ';
|
||||
Task_Dispatching_Policy := ' ';
|
||||
Priority_Specific_Dispatching :=
|
||||
Local_Priority_Specific_Dispatching'Address;
|
||||
Num_Specific_Dispatching := 0;
|
||||
Main_CPU := -1;
|
||||
Interrupt_States := Local_Interrupt_States'Address;
|
||||
Num_Interrupt_States := 0;
|
||||
Unreserve_All_Interrupts := 0;
|
||||
Detect_Blocking := 0;
|
||||
Default_Stack_Size := -1;
|
||||
|
||||
ada_main'Elab_Body;
|
||||
Default_Secondary_Stack_Size := System.Parameters.Runtime_Default_Sec_Stack_Size;
|
||||
Binder_Sec_Stacks_Count := 1;
|
||||
Default_Sized_SS_Pool := Sec_Default_Sized_Stacks'Address;
|
||||
|
||||
Runtime_Initialize (1);
|
||||
|
||||
Finalize_Library_Objects := finalize_library'access;
|
||||
|
||||
Ada.Exceptions'Elab_Spec;
|
||||
System.Soft_Links'Elab_Spec;
|
||||
System.Exception_Table'Elab_Body;
|
||||
E027 := E027 + 1;
|
||||
Ada.Containers'Elab_Spec;
|
||||
E050 := E050 + 1;
|
||||
Ada.Io_Exceptions'Elab_Spec;
|
||||
E078 := E078 + 1;
|
||||
Ada.Numerics'Elab_Spec;
|
||||
E034 := E034 + 1;
|
||||
Ada.Strings'Elab_Spec;
|
||||
E065 := E065 + 1;
|
||||
Ada.Strings.Maps'Elab_Spec;
|
||||
E067 := E067 + 1;
|
||||
Ada.Strings.Maps.Constants'Elab_Spec;
|
||||
E070 := E070 + 1;
|
||||
Interfaces.C'Elab_Spec;
|
||||
E055 := E055 + 1;
|
||||
System.Exceptions'Elab_Spec;
|
||||
E028 := E028 + 1;
|
||||
System.Object_Reader'Elab_Spec;
|
||||
E092 := E092 + 1;
|
||||
System.Dwarf_Lines'Elab_Spec;
|
||||
System.Os_Lib'Elab_Body;
|
||||
E083 := E083 + 1;
|
||||
System.Soft_Links.Initialize'Elab_Body;
|
||||
E023 := E023 + 1;
|
||||
E015 := E015 + 1;
|
||||
System.Traceback.Symbolic'Elab_Body;
|
||||
E049 := E049 + 1;
|
||||
System.Img_Int'Elab_Spec;
|
||||
E033 := E033 + 1;
|
||||
E010 := E010 + 1;
|
||||
System.Img_Uns'Elab_Spec;
|
||||
E073 := E073 + 1;
|
||||
E060 := E060 + 1;
|
||||
Ada.Assertions'Elab_Spec;
|
||||
E172 := E172 + 1;
|
||||
Ada.Strings.Utf_Encoding'Elab_Spec;
|
||||
E121 := E121 + 1;
|
||||
Ada.Tags'Elab_Spec;
|
||||
Ada.Tags'Elab_Body;
|
||||
E129 := E129 + 1;
|
||||
Ada.Strings.Text_Buffers'Elab_Spec;
|
||||
E119 := E119 + 1;
|
||||
Interfaces.C.Strings'Elab_Spec;
|
||||
E155 := E155 + 1;
|
||||
Ada.Streams'Elab_Spec;
|
||||
E137 := E137 + 1;
|
||||
System.File_Control_Block'Elab_Spec;
|
||||
E149 := E149 + 1;
|
||||
System.Finalization_Root'Elab_Spec;
|
||||
E148 := E148 + 1;
|
||||
Ada.Finalization'Elab_Spec;
|
||||
E146 := E146 + 1;
|
||||
System.File_Io'Elab_Body;
|
||||
E145 := E145 + 1;
|
||||
System.Storage_Pools'Elab_Spec;
|
||||
E176 := E176 + 1;
|
||||
System.Finalization_Masters'Elab_Spec;
|
||||
System.Finalization_Masters'Elab_Body;
|
||||
E174 := E174 + 1;
|
||||
System.Storage_Pools.Subpools'Elab_Spec;
|
||||
E178 := E178 + 1;
|
||||
Ada.Calendar'Elab_Spec;
|
||||
Ada.Calendar'Elab_Body;
|
||||
E008 := E008 + 1;
|
||||
Ada.Calendar.Delays'Elab_Body;
|
||||
E006 := E006 + 1;
|
||||
Ada.Text_Io'Elab_Spec;
|
||||
Ada.Text_Io'Elab_Body;
|
||||
E135 := E135 + 1;
|
||||
System.Pool_Global'Elab_Spec;
|
||||
E189 := E189 + 1;
|
||||
SDL.RWOPS'ELAB_SPEC;
|
||||
E211 := E211 + 1;
|
||||
SDL.VIDEO'ELAB_SPEC;
|
||||
E166 := E166 + 1;
|
||||
SDL.VIDEO.PALETTES'ELAB_SPEC;
|
||||
SDL.VIDEO.PALETTES'ELAB_BODY;
|
||||
E187 := E187 + 1;
|
||||
SDL.VIDEO.PIXEL_FORMATS'ELAB_SPEC;
|
||||
E185 := E185 + 1;
|
||||
SDL.VIDEO.PIXELS'ELAB_SPEC;
|
||||
E216 := E216 + 1;
|
||||
SDL.VIDEO.RECTANGLES'ELAB_SPEC;
|
||||
E193 := E193 + 1;
|
||||
SDL.VIDEO.SURFACES'ELAB_SPEC;
|
||||
E195 := E195 + 1;
|
||||
SDL.VIDEO.TEXTURES'ELAB_SPEC;
|
||||
E215 := E215 + 1;
|
||||
SDL.VIDEO.WINDOWS'ELAB_SPEC;
|
||||
E168 := E168 + 1;
|
||||
SDL.EVENTS.EVENTS'ELAB_SPEC;
|
||||
E158 := E158 + 1;
|
||||
SDL.VIDEO.RENDERERS'ELAB_SPEC;
|
||||
E213 := E213 + 1;
|
||||
SDL.IMAGES'ELAB_SPEC;
|
||||
E207 := E207 + 1;
|
||||
E209 := E209 + 1;
|
||||
end adainit;
|
||||
|
||||
procedure Ada_Main_Program;
|
||||
pragma Import (Ada, Ada_Main_Program, "_ada_threed");
|
||||
|
||||
function main
|
||||
(argc : Integer;
|
||||
argv : System.Address;
|
||||
envp : System.Address)
|
||||
return Integer
|
||||
is
|
||||
procedure Initialize (Addr : System.Address);
|
||||
pragma Import (C, Initialize, "__gnat_initialize");
|
||||
|
||||
procedure Finalize;
|
||||
pragma Import (C, Finalize, "__gnat_finalize");
|
||||
SEH : aliased array (1 .. 2) of Integer;
|
||||
|
||||
Ensure_Reference : aliased System.Address := Ada_Main_Program_Name'Address;
|
||||
pragma Volatile (Ensure_Reference);
|
||||
|
||||
begin
|
||||
if gnat_argc = 0 then
|
||||
gnat_argc := argc;
|
||||
gnat_argv := argv;
|
||||
end if;
|
||||
gnat_envp := envp;
|
||||
|
||||
Initialize (SEH'Address);
|
||||
adainit;
|
||||
Ada_Main_Program;
|
||||
adafinal;
|
||||
Finalize;
|
||||
return (gnat_exit_status);
|
||||
end;
|
||||
|
||||
-- BEGIN Object file/option list
|
||||
-- /home/jason/Projects/Ada/3dc/threed.o
|
||||
-- -L/home/jason/Projects/Ada/3dc/
|
||||
-- -L/home/jason/Projects/Ada/3dc/
|
||||
-- -L/home/jason/opt/sdlada/lib/sdlada.release/
|
||||
-- -L/usr/lib/gcc/x86_64-redhat-linux/13/adalib/
|
||||
-- -static
|
||||
-- -lgnat
|
||||
-- -lm
|
||||
-- -ldl
|
||||
-- END Object file/option list
|
||||
|
||||
end ada_main;
|
||||
+725
@@ -0,0 +1,725 @@
|
||||
pragma Warnings (Off);
|
||||
pragma Ada_95;
|
||||
with System;
|
||||
with System.Parameters;
|
||||
with System.Secondary_Stack;
|
||||
package ada_main is
|
||||
|
||||
gnat_argc : Integer;
|
||||
gnat_argv : System.Address;
|
||||
gnat_envp : System.Address;
|
||||
|
||||
pragma Import (C, gnat_argc);
|
||||
pragma Import (C, gnat_argv);
|
||||
pragma Import (C, gnat_envp);
|
||||
|
||||
gnat_exit_status : Integer;
|
||||
pragma Import (C, gnat_exit_status);
|
||||
|
||||
GNAT_Version : constant String :=
|
||||
"GNAT Version: 13.1.1 20230426 (Red Hat 13.1.1-1)" & ASCII.NUL;
|
||||
pragma Export (C, GNAT_Version, "__gnat_version");
|
||||
|
||||
GNAT_Version_Address : constant System.Address := GNAT_Version'Address;
|
||||
pragma Export (C, GNAT_Version_Address, "__gnat_version_address");
|
||||
|
||||
Ada_Main_Program_Name : constant String := "_ada_threed" & ASCII.NUL;
|
||||
pragma Export (C, Ada_Main_Program_Name, "__gnat_ada_main_program_name");
|
||||
|
||||
procedure adainit;
|
||||
pragma Export (C, adainit, "adainit");
|
||||
|
||||
procedure adafinal;
|
||||
pragma Export (C, adafinal, "adafinal");
|
||||
|
||||
function main
|
||||
(argc : Integer;
|
||||
argv : System.Address;
|
||||
envp : System.Address)
|
||||
return Integer;
|
||||
pragma Export (C, main, "main");
|
||||
|
||||
type Version_32 is mod 2 ** 32;
|
||||
u00001 : constant Version_32 := 16#acda4748#;
|
||||
pragma Export (C, u00001, "threedB");
|
||||
u00002 : constant Version_32 := 16#7320ff5f#;
|
||||
pragma Export (C, u00002, "system__standard_libraryB");
|
||||
u00003 : constant Version_32 := 16#50630821#;
|
||||
pragma Export (C, u00003, "system__standard_libraryS");
|
||||
u00004 : constant Version_32 := 16#76789da1#;
|
||||
pragma Export (C, u00004, "adaS");
|
||||
u00005 : constant Version_32 := 16#87ec1338#;
|
||||
pragma Export (C, u00005, "ada__calendar__delaysB");
|
||||
u00006 : constant Version_32 := 16#6a7ce89e#;
|
||||
pragma Export (C, u00006, "ada__calendar__delaysS");
|
||||
u00007 : constant Version_32 := 16#37ff5dbb#;
|
||||
pragma Export (C, u00007, "ada__calendarB");
|
||||
u00008 : constant Version_32 := 16#8324cd02#;
|
||||
pragma Export (C, u00008, "ada__calendarS");
|
||||
u00009 : constant Version_32 := 16#e9d77c55#;
|
||||
pragma Export (C, u00009, "ada__exceptionsB");
|
||||
u00010 : constant Version_32 := 16#1e7524b5#;
|
||||
pragma Export (C, u00010, "ada__exceptionsS");
|
||||
u00011 : constant Version_32 := 16#0740df23#;
|
||||
pragma Export (C, u00011, "ada__exceptions__last_chance_handlerB");
|
||||
u00012 : constant Version_32 := 16#6dc27684#;
|
||||
pragma Export (C, u00012, "ada__exceptions__last_chance_handlerS");
|
||||
u00013 : constant Version_32 := 16#426dafb8#;
|
||||
pragma Export (C, u00013, "systemS");
|
||||
u00014 : constant Version_32 := 16#fd5f5f4c#;
|
||||
pragma Export (C, u00014, "system__soft_linksB");
|
||||
u00015 : constant Version_32 := 16#3ff0395b#;
|
||||
pragma Export (C, u00015, "system__soft_linksS");
|
||||
u00016 : constant Version_32 := 16#d4c699bf#;
|
||||
pragma Export (C, u00016, "system__secondary_stackB");
|
||||
u00017 : constant Version_32 := 16#6a2f1a0f#;
|
||||
pragma Export (C, u00017, "system__secondary_stackS");
|
||||
u00018 : constant Version_32 := 16#821dff88#;
|
||||
pragma Export (C, u00018, "system__parametersB");
|
||||
u00019 : constant Version_32 := 16#96f90b1e#;
|
||||
pragma Export (C, u00019, "system__parametersS");
|
||||
u00020 : constant Version_32 := 16#2a95d23d#;
|
||||
pragma Export (C, u00020, "system__storage_elementsB");
|
||||
u00021 : constant Version_32 := 16#e939c75c#;
|
||||
pragma Export (C, u00021, "system__storage_elementsS");
|
||||
u00022 : constant Version_32 := 16#0286ce9f#;
|
||||
pragma Export (C, u00022, "system__soft_links__initializeB");
|
||||
u00023 : constant Version_32 := 16#2ed17187#;
|
||||
pragma Export (C, u00023, "system__soft_links__initializeS");
|
||||
u00024 : constant Version_32 := 16#8599b27b#;
|
||||
pragma Export (C, u00024, "system__stack_checkingB");
|
||||
u00025 : constant Version_32 := 16#e2b806a2#;
|
||||
pragma Export (C, u00025, "system__stack_checkingS");
|
||||
u00026 : constant Version_32 := 16#c71e6c8a#;
|
||||
pragma Export (C, u00026, "system__exception_tableB");
|
||||
u00027 : constant Version_32 := 16#cf46d9a1#;
|
||||
pragma Export (C, u00027, "system__exception_tableS");
|
||||
u00028 : constant Version_32 := 16#70c8108a#;
|
||||
pragma Export (C, u00028, "system__exceptionsS");
|
||||
u00029 : constant Version_32 := 16#69416224#;
|
||||
pragma Export (C, u00029, "system__exceptions__machineB");
|
||||
u00030 : constant Version_32 := 16#8bdfdbe3#;
|
||||
pragma Export (C, u00030, "system__exceptions__machineS");
|
||||
u00031 : constant Version_32 := 16#7706238d#;
|
||||
pragma Export (C, u00031, "system__exceptions_debugB");
|
||||
u00032 : constant Version_32 := 16#7263f7eb#;
|
||||
pragma Export (C, u00032, "system__exceptions_debugS");
|
||||
u00033 : constant Version_32 := 16#32ee70d0#;
|
||||
pragma Export (C, u00033, "system__img_intS");
|
||||
u00034 : constant Version_32 := 16#f2c63a02#;
|
||||
pragma Export (C, u00034, "ada__numericsS");
|
||||
u00035 : constant Version_32 := 16#174f5472#;
|
||||
pragma Export (C, u00035, "ada__numerics__big_numbersS");
|
||||
u00036 : constant Version_32 := 16#b847d0e1#;
|
||||
pragma Export (C, u00036, "system__unsigned_typesS");
|
||||
u00037 : constant Version_32 := 16#5e8f37b6#;
|
||||
pragma Export (C, u00037, "system__val_intS");
|
||||
u00038 : constant Version_32 := 16#48912782#;
|
||||
pragma Export (C, u00038, "system__val_unsS");
|
||||
u00039 : constant Version_32 := 16#96e09402#;
|
||||
pragma Export (C, u00039, "system__val_utilB");
|
||||
u00040 : constant Version_32 := 16#71a87b35#;
|
||||
pragma Export (C, u00040, "system__val_utilS");
|
||||
u00041 : constant Version_32 := 16#b98923bf#;
|
||||
pragma Export (C, u00041, "system__case_utilB");
|
||||
u00042 : constant Version_32 := 16#8d7e78ed#;
|
||||
pragma Export (C, u00042, "system__case_utilS");
|
||||
u00043 : constant Version_32 := 16#8d029d03#;
|
||||
pragma Export (C, u00043, "system__wid_unsS");
|
||||
u00044 : constant Version_32 := 16#5c7d9c20#;
|
||||
pragma Export (C, u00044, "system__tracebackB");
|
||||
u00045 : constant Version_32 := 16#c4f75b05#;
|
||||
pragma Export (C, u00045, "system__tracebackS");
|
||||
u00046 : constant Version_32 := 16#5f6b6486#;
|
||||
pragma Export (C, u00046, "system__traceback_entriesB");
|
||||
u00047 : constant Version_32 := 16#8a711034#;
|
||||
pragma Export (C, u00047, "system__traceback_entriesS");
|
||||
u00048 : constant Version_32 := 16#b5f8ae26#;
|
||||
pragma Export (C, u00048, "system__traceback__symbolicB");
|
||||
u00049 : constant Version_32 := 16#d9e66ad1#;
|
||||
pragma Export (C, u00049, "system__traceback__symbolicS");
|
||||
u00050 : constant Version_32 := 16#179d7d28#;
|
||||
pragma Export (C, u00050, "ada__containersS");
|
||||
u00051 : constant Version_32 := 16#701f9d88#;
|
||||
pragma Export (C, u00051, "ada__exceptions__tracebackB");
|
||||
u00052 : constant Version_32 := 16#eb07882c#;
|
||||
pragma Export (C, u00052, "ada__exceptions__tracebackS");
|
||||
u00053 : constant Version_32 := 16#15f799c2#;
|
||||
pragma Export (C, u00053, "interfacesS");
|
||||
u00054 : constant Version_32 := 16#545fe66d#;
|
||||
pragma Export (C, u00054, "interfaces__cB");
|
||||
u00055 : constant Version_32 := 16#9d395173#;
|
||||
pragma Export (C, u00055, "interfaces__cS");
|
||||
u00056 : constant Version_32 := 16#6ef2c461#;
|
||||
pragma Export (C, u00056, "system__bounded_stringsB");
|
||||
u00057 : constant Version_32 := 16#35908ea1#;
|
||||
pragma Export (C, u00057, "system__bounded_stringsS");
|
||||
u00058 : constant Version_32 := 16#1cff99e6#;
|
||||
pragma Export (C, u00058, "system__crtlS");
|
||||
u00059 : constant Version_32 := 16#9f199b4a#;
|
||||
pragma Export (C, u00059, "system__dwarf_linesB");
|
||||
u00060 : constant Version_32 := 16#a5cb9aae#;
|
||||
pragma Export (C, u00060, "system__dwarf_linesS");
|
||||
u00061 : constant Version_32 := 16#5b4659fa#;
|
||||
pragma Export (C, u00061, "ada__charactersS");
|
||||
u00062 : constant Version_32 := 16#f70a517e#;
|
||||
pragma Export (C, u00062, "ada__characters__handlingB");
|
||||
u00063 : constant Version_32 := 16#ea6baced#;
|
||||
pragma Export (C, u00063, "ada__characters__handlingS");
|
||||
u00064 : constant Version_32 := 16#cde9ea2d#;
|
||||
pragma Export (C, u00064, "ada__characters__latin_1S");
|
||||
u00065 : constant Version_32 := 16#e6d4fa36#;
|
||||
pragma Export (C, u00065, "ada__stringsS");
|
||||
u00066 : constant Version_32 := 16#16f45e54#;
|
||||
pragma Export (C, u00066, "ada__strings__mapsB");
|
||||
u00067 : constant Version_32 := 16#9df1863a#;
|
||||
pragma Export (C, u00067, "ada__strings__mapsS");
|
||||
u00068 : constant Version_32 := 16#96b40646#;
|
||||
pragma Export (C, u00068, "system__bit_opsB");
|
||||
u00069 : constant Version_32 := 16#8f9e0384#;
|
||||
pragma Export (C, u00069, "system__bit_opsS");
|
||||
u00070 : constant Version_32 := 16#4642cba6#;
|
||||
pragma Export (C, u00070, "ada__strings__maps__constantsS");
|
||||
u00071 : constant Version_32 := 16#a0d3d22b#;
|
||||
pragma Export (C, u00071, "system__address_imageB");
|
||||
u00072 : constant Version_32 := 16#e3813282#;
|
||||
pragma Export (C, u00072, "system__address_imageS");
|
||||
u00073 : constant Version_32 := 16#cdf7317a#;
|
||||
pragma Export (C, u00073, "system__img_unsS");
|
||||
u00074 : constant Version_32 := 16#20ec7aa3#;
|
||||
pragma Export (C, u00074, "system__ioB");
|
||||
u00075 : constant Version_32 := 16#dc2f58f7#;
|
||||
pragma Export (C, u00075, "system__ioS");
|
||||
u00076 : constant Version_32 := 16#754b4bb8#;
|
||||
pragma Export (C, u00076, "system__mmapB");
|
||||
u00077 : constant Version_32 := 16#7a46ab42#;
|
||||
pragma Export (C, u00077, "system__mmapS");
|
||||
u00078 : constant Version_32 := 16#367911c4#;
|
||||
pragma Export (C, u00078, "ada__io_exceptionsS");
|
||||
u00079 : constant Version_32 := 16#dd82c35a#;
|
||||
pragma Export (C, u00079, "system__mmap__os_interfaceB");
|
||||
u00080 : constant Version_32 := 16#37fd3b64#;
|
||||
pragma Export (C, u00080, "system__mmap__os_interfaceS");
|
||||
u00081 : constant Version_32 := 16#3e3920c1#;
|
||||
pragma Export (C, u00081, "system__mmap__unixS");
|
||||
u00082 : constant Version_32 := 16#1d7382c4#;
|
||||
pragma Export (C, u00082, "system__os_libB");
|
||||
u00083 : constant Version_32 := 16#b8017fe7#;
|
||||
pragma Export (C, u00083, "system__os_libS");
|
||||
u00084 : constant Version_32 := 16#6e5d049a#;
|
||||
pragma Export (C, u00084, "system__atomic_operations__test_and_setB");
|
||||
u00085 : constant Version_32 := 16#57acee8e#;
|
||||
pragma Export (C, u00085, "system__atomic_operations__test_and_setS");
|
||||
u00086 : constant Version_32 := 16#850ed59d#;
|
||||
pragma Export (C, u00086, "system__atomic_operationsS");
|
||||
u00087 : constant Version_32 := 16#29cc6115#;
|
||||
pragma Export (C, u00087, "system__atomic_primitivesB");
|
||||
u00088 : constant Version_32 := 16#0524e799#;
|
||||
pragma Export (C, u00088, "system__atomic_primitivesS");
|
||||
u00089 : constant Version_32 := 16#256dbbe5#;
|
||||
pragma Export (C, u00089, "system__stringsB");
|
||||
u00090 : constant Version_32 := 16#d9efafa0#;
|
||||
pragma Export (C, u00090, "system__stringsS");
|
||||
u00091 : constant Version_32 := 16#2fdbc40e#;
|
||||
pragma Export (C, u00091, "system__object_readerB");
|
||||
u00092 : constant Version_32 := 16#55f4bbb3#;
|
||||
pragma Export (C, u00092, "system__object_readerS");
|
||||
u00093 : constant Version_32 := 16#d7e08022#;
|
||||
pragma Export (C, u00093, "system__val_lliS");
|
||||
u00094 : constant Version_32 := 16#6a5ef568#;
|
||||
pragma Export (C, u00094, "system__val_lluS");
|
||||
u00095 : constant Version_32 := 16#bad10b33#;
|
||||
pragma Export (C, u00095, "system__exception_tracesB");
|
||||
u00096 : constant Version_32 := 16#aef5c6de#;
|
||||
pragma Export (C, u00096, "system__exception_tracesS");
|
||||
u00097 : constant Version_32 := 16#fd158a37#;
|
||||
pragma Export (C, u00097, "system__wch_conB");
|
||||
u00098 : constant Version_32 := 16#9b6e8cdb#;
|
||||
pragma Export (C, u00098, "system__wch_conS");
|
||||
u00099 : constant Version_32 := 16#5c289972#;
|
||||
pragma Export (C, u00099, "system__wch_stwB");
|
||||
u00100 : constant Version_32 := 16#b67fa0da#;
|
||||
pragma Export (C, u00100, "system__wch_stwS");
|
||||
u00101 : constant Version_32 := 16#f8305de6#;
|
||||
pragma Export (C, u00101, "system__wch_cnvB");
|
||||
u00102 : constant Version_32 := 16#9dae46ab#;
|
||||
pragma Export (C, u00102, "system__wch_cnvS");
|
||||
u00103 : constant Version_32 := 16#e538de43#;
|
||||
pragma Export (C, u00103, "system__wch_jisB");
|
||||
u00104 : constant Version_32 := 16#28192481#;
|
||||
pragma Export (C, u00104, "system__wch_jisS");
|
||||
u00105 : constant Version_32 := 16#307180be#;
|
||||
pragma Export (C, u00105, "system__os_primitivesB");
|
||||
u00106 : constant Version_32 := 16#4590ca4e#;
|
||||
pragma Export (C, u00106, "system__os_primitivesS");
|
||||
u00107 : constant Version_32 := 16#4b91ffca#;
|
||||
pragma Export (C, u00107, "ada__command_lineB");
|
||||
u00108 : constant Version_32 := 16#3cdef8c9#;
|
||||
pragma Export (C, u00108, "ada__command_lineS");
|
||||
u00109 : constant Version_32 := 16#dc1b3a37#;
|
||||
pragma Export (C, u00109, "ada__numerics__elementary_functionsB");
|
||||
u00110 : constant Version_32 := 16#007d625c#;
|
||||
pragma Export (C, u00110, "ada__numerics__elementary_functionsS");
|
||||
u00111 : constant Version_32 := 16#3c1a89cd#;
|
||||
pragma Export (C, u00111, "ada__numerics__aux_floatS");
|
||||
u00112 : constant Version_32 := 16#effcb9fc#;
|
||||
pragma Export (C, u00112, "ada__numerics__aux_linker_optionsS");
|
||||
u00113 : constant Version_32 := 16#3935e87c#;
|
||||
pragma Export (C, u00113, "ada__numerics__aux_long_floatS");
|
||||
u00114 : constant Version_32 := 16#8333dc5f#;
|
||||
pragma Export (C, u00114, "ada__numerics__aux_long_long_floatS");
|
||||
u00115 : constant Version_32 := 16#e2164369#;
|
||||
pragma Export (C, u00115, "ada__numerics__aux_short_floatS");
|
||||
u00116 : constant Version_32 := 16#e77d8041#;
|
||||
pragma Export (C, u00116, "system__exn_fltS");
|
||||
u00117 : constant Version_32 := 16#815f70d4#;
|
||||
pragma Export (C, u00117, "system__fat_fltS");
|
||||
u00118 : constant Version_32 := 16#a201b8c5#;
|
||||
pragma Export (C, u00118, "ada__strings__text_buffersB");
|
||||
u00119 : constant Version_32 := 16#a7cfd09b#;
|
||||
pragma Export (C, u00119, "ada__strings__text_buffersS");
|
||||
u00120 : constant Version_32 := 16#8b7604c4#;
|
||||
pragma Export (C, u00120, "ada__strings__utf_encodingB");
|
||||
u00121 : constant Version_32 := 16#4d0e0994#;
|
||||
pragma Export (C, u00121, "ada__strings__utf_encodingS");
|
||||
u00122 : constant Version_32 := 16#bb780f45#;
|
||||
pragma Export (C, u00122, "ada__strings__utf_encoding__stringsB");
|
||||
u00123 : constant Version_32 := 16#b85ff4b6#;
|
||||
pragma Export (C, u00123, "ada__strings__utf_encoding__stringsS");
|
||||
u00124 : constant Version_32 := 16#d1d1ed0b#;
|
||||
pragma Export (C, u00124, "ada__strings__utf_encoding__wide_stringsB");
|
||||
u00125 : constant Version_32 := 16#5678478f#;
|
||||
pragma Export (C, u00125, "ada__strings__utf_encoding__wide_stringsS");
|
||||
u00126 : constant Version_32 := 16#c2b98963#;
|
||||
pragma Export (C, u00126, "ada__strings__utf_encoding__wide_wide_stringsB");
|
||||
u00127 : constant Version_32 := 16#d7af3358#;
|
||||
pragma Export (C, u00127, "ada__strings__utf_encoding__wide_wide_stringsS");
|
||||
u00128 : constant Version_32 := 16#f38d604a#;
|
||||
pragma Export (C, u00128, "ada__tagsB");
|
||||
u00129 : constant Version_32 := 16#4d1deaec#;
|
||||
pragma Export (C, u00129, "ada__tagsS");
|
||||
u00130 : constant Version_32 := 16#3548d972#;
|
||||
pragma Export (C, u00130, "system__htableB");
|
||||
u00131 : constant Version_32 := 16#c3b4f753#;
|
||||
pragma Export (C, u00131, "system__htableS");
|
||||
u00132 : constant Version_32 := 16#1f1abe38#;
|
||||
pragma Export (C, u00132, "system__string_hashB");
|
||||
u00133 : constant Version_32 := 16#64f1772c#;
|
||||
pragma Export (C, u00133, "system__string_hashS");
|
||||
u00134 : constant Version_32 := 16#67eb6d5a#;
|
||||
pragma Export (C, u00134, "ada__text_ioB");
|
||||
u00135 : constant Version_32 := 16#3cf1122b#;
|
||||
pragma Export (C, u00135, "ada__text_ioS");
|
||||
u00136 : constant Version_32 := 16#b4f41810#;
|
||||
pragma Export (C, u00136, "ada__streamsB");
|
||||
u00137 : constant Version_32 := 16#67e31212#;
|
||||
pragma Export (C, u00137, "ada__streamsS");
|
||||
u00138 : constant Version_32 := 16#abd3c34b#;
|
||||
pragma Export (C, u00138, "system__put_imagesB");
|
||||
u00139 : constant Version_32 := 16#5ec3a8a7#;
|
||||
pragma Export (C, u00139, "system__put_imagesS");
|
||||
u00140 : constant Version_32 := 16#22b9eb9f#;
|
||||
pragma Export (C, u00140, "ada__strings__text_buffers__utilsB");
|
||||
u00141 : constant Version_32 := 16#89062ac3#;
|
||||
pragma Export (C, u00141, "ada__strings__text_buffers__utilsS");
|
||||
u00142 : constant Version_32 := 16#73d2d764#;
|
||||
pragma Export (C, u00142, "interfaces__c_streamsB");
|
||||
u00143 : constant Version_32 := 16#7acc80b4#;
|
||||
pragma Export (C, u00143, "interfaces__c_streamsS");
|
||||
u00144 : constant Version_32 := 16#1aa716c1#;
|
||||
pragma Export (C, u00144, "system__file_ioB");
|
||||
u00145 : constant Version_32 := 16#3ecf6aed#;
|
||||
pragma Export (C, u00145, "system__file_ioS");
|
||||
u00146 : constant Version_32 := 16#86c56e5a#;
|
||||
pragma Export (C, u00146, "ada__finalizationS");
|
||||
u00147 : constant Version_32 := 16#95817ed8#;
|
||||
pragma Export (C, u00147, "system__finalization_rootB");
|
||||
u00148 : constant Version_32 := 16#0d9fdc28#;
|
||||
pragma Export (C, u00148, "system__finalization_rootS");
|
||||
u00149 : constant Version_32 := 16#e09c58a9#;
|
||||
pragma Export (C, u00149, "system__file_control_blockS");
|
||||
u00150 : constant Version_32 := 16#1eeacd0c#;
|
||||
pragma Export (C, u00150, "sdlB");
|
||||
u00151 : constant Version_32 := 16#6e262465#;
|
||||
pragma Export (C, u00151, "sdlS");
|
||||
u00152 : constant Version_32 := 16#9f72c855#;
|
||||
pragma Export (C, u00152, "sdl__errorB");
|
||||
u00153 : constant Version_32 := 16#fbacc442#;
|
||||
pragma Export (C, u00153, "sdl__errorS");
|
||||
u00154 : constant Version_32 := 16#40f98252#;
|
||||
pragma Export (C, u00154, "interfaces__c__stringsB");
|
||||
u00155 : constant Version_32 := 16#a856e1a3#;
|
||||
pragma Export (C, u00155, "interfaces__c__stringsS");
|
||||
u00156 : constant Version_32 := 16#07acaf42#;
|
||||
pragma Export (C, u00156, "sdl__eventsS");
|
||||
u00157 : constant Version_32 := 16#5948638f#;
|
||||
pragma Export (C, u00157, "sdl__events__eventsB");
|
||||
u00158 : constant Version_32 := 16#5e73368b#;
|
||||
pragma Export (C, u00158, "sdl__events__eventsS");
|
||||
u00159 : constant Version_32 := 16#f5c36f20#;
|
||||
pragma Export (C, u00159, "sdl__events__controllersS");
|
||||
u00160 : constant Version_32 := 16#ae71a01b#;
|
||||
pragma Export (C, u00160, "sdl__events__joysticksB");
|
||||
u00161 : constant Version_32 := 16#e7c77fad#;
|
||||
pragma Export (C, u00161, "sdl__events__joysticksS");
|
||||
u00162 : constant Version_32 := 16#b782aba3#;
|
||||
pragma Export (C, u00162, "sdl__events__filesS");
|
||||
u00163 : constant Version_32 := 16#1d599977#;
|
||||
pragma Export (C, u00163, "sdl__events__keyboardsB");
|
||||
u00164 : constant Version_32 := 16#9106f4b1#;
|
||||
pragma Export (C, u00164, "sdl__events__keyboardsS");
|
||||
u00165 : constant Version_32 := 16#dff8c4d8#;
|
||||
pragma Export (C, u00165, "sdl__videoB");
|
||||
u00166 : constant Version_32 := 16#8ca03ec1#;
|
||||
pragma Export (C, u00166, "sdl__videoS");
|
||||
u00167 : constant Version_32 := 16#c55fea3f#;
|
||||
pragma Export (C, u00167, "sdl__video__windowsB");
|
||||
u00168 : constant Version_32 := 16#900f1f7d#;
|
||||
pragma Export (C, u00168, "sdl__video__windowsS");
|
||||
u00169 : constant Version_32 := 16#2fb34529#;
|
||||
pragma Export (C, u00169, "system__assertionsB");
|
||||
u00170 : constant Version_32 := 16#646ed023#;
|
||||
pragma Export (C, u00170, "system__assertionsS");
|
||||
u00171 : constant Version_32 := 16#8b2c6428#;
|
||||
pragma Export (C, u00171, "ada__assertionsB");
|
||||
u00172 : constant Version_32 := 16#cc3ec2fd#;
|
||||
pragma Export (C, u00172, "ada__assertionsS");
|
||||
u00173 : constant Version_32 := 16#28888d98#;
|
||||
pragma Export (C, u00173, "system__finalization_mastersB");
|
||||
u00174 : constant Version_32 := 16#02e4eddb#;
|
||||
pragma Export (C, u00174, "system__finalization_mastersS");
|
||||
u00175 : constant Version_32 := 16#35d6ef80#;
|
||||
pragma Export (C, u00175, "system__storage_poolsB");
|
||||
u00176 : constant Version_32 := 16#bf8c6aef#;
|
||||
pragma Export (C, u00176, "system__storage_poolsS");
|
||||
u00177 : constant Version_32 := 16#b49a0e5d#;
|
||||
pragma Export (C, u00177, "system__storage_pools__subpoolsB");
|
||||
u00178 : constant Version_32 := 16#a2d8d50c#;
|
||||
pragma Export (C, u00178, "system__storage_pools__subpoolsS");
|
||||
u00179 : constant Version_32 := 16#b0df1928#;
|
||||
pragma Export (C, u00179, "system__storage_pools__subpools__finalizationB");
|
||||
u00180 : constant Version_32 := 16#562129f7#;
|
||||
pragma Export (C, u00180, "system__storage_pools__subpools__finalizationS");
|
||||
u00181 : constant Version_32 := 16#59a9ef65#;
|
||||
pragma Export (C, u00181, "sdl__c_pointersS");
|
||||
u00182 : constant Version_32 := 16#dd7f75da#;
|
||||
pragma Export (C, u00182, "sdl__video__displaysB");
|
||||
u00183 : constant Version_32 := 16#c9623aca#;
|
||||
pragma Export (C, u00183, "sdl__video__displaysS");
|
||||
u00184 : constant Version_32 := 16#3f16a661#;
|
||||
pragma Export (C, u00184, "sdl__video__pixel_formatsB");
|
||||
u00185 : constant Version_32 := 16#cad5b75b#;
|
||||
pragma Export (C, u00185, "sdl__video__pixel_formatsS");
|
||||
u00186 : constant Version_32 := 16#5aa0c2ac#;
|
||||
pragma Export (C, u00186, "sdl__video__palettesB");
|
||||
u00187 : constant Version_32 := 16#02a22597#;
|
||||
pragma Export (C, u00187, "sdl__video__palettesS");
|
||||
u00188 : constant Version_32 := 16#7c78c3c5#;
|
||||
pragma Export (C, u00188, "system__pool_globalB");
|
||||
u00189 : constant Version_32 := 16#91b367a5#;
|
||||
pragma Export (C, u00189, "system__pool_globalS");
|
||||
u00190 : constant Version_32 := 16#1982dcd0#;
|
||||
pragma Export (C, u00190, "system__memoryB");
|
||||
u00191 : constant Version_32 := 16#19e99d68#;
|
||||
pragma Export (C, u00191, "system__memoryS");
|
||||
u00192 : constant Version_32 := 16#ef09c5ab#;
|
||||
pragma Export (C, u00192, "sdl__video__rectanglesB");
|
||||
u00193 : constant Version_32 := 16#773e1129#;
|
||||
pragma Export (C, u00193, "sdl__video__rectanglesS");
|
||||
u00194 : constant Version_32 := 16#b19e3a91#;
|
||||
pragma Export (C, u00194, "sdl__video__surfacesB");
|
||||
u00195 : constant Version_32 := 16#888c8957#;
|
||||
pragma Export (C, u00195, "sdl__video__surfacesS");
|
||||
u00196 : constant Version_32 := 16#e652c197#;
|
||||
pragma Export (C, u00196, "system__return_stackS");
|
||||
u00197 : constant Version_32 := 16#d50f3cfb#;
|
||||
pragma Export (C, u00197, "system__stream_attributesB");
|
||||
u00198 : constant Version_32 := 16#5e0388d4#;
|
||||
pragma Export (C, u00198, "system__stream_attributesS");
|
||||
u00199 : constant Version_32 := 16#3aecdcda#;
|
||||
pragma Export (C, u00199, "system__stream_attributes__xdrB");
|
||||
u00200 : constant Version_32 := 16#42985e70#;
|
||||
pragma Export (C, u00200, "system__stream_attributes__xdrS");
|
||||
u00201 : constant Version_32 := 16#a76d79d9#;
|
||||
pragma Export (C, u00201, "system__fat_lfltS");
|
||||
u00202 : constant Version_32 := 16#ddbdd733#;
|
||||
pragma Export (C, u00202, "system__fat_llfS");
|
||||
u00203 : constant Version_32 := 16#66035241#;
|
||||
pragma Export (C, u00203, "sdl__events__miceS");
|
||||
u00204 : constant Version_32 := 16#446ed451#;
|
||||
pragma Export (C, u00204, "sdl__events__touchesS");
|
||||
u00205 : constant Version_32 := 16#713bfc83#;
|
||||
pragma Export (C, u00205, "sdl__events__windowsS");
|
||||
u00206 : constant Version_32 := 16#48176494#;
|
||||
pragma Export (C, u00206, "sdl__imagesB");
|
||||
u00207 : constant Version_32 := 16#530d5180#;
|
||||
pragma Export (C, u00207, "sdl__imagesS");
|
||||
u00208 : constant Version_32 := 16#34c5a405#;
|
||||
pragma Export (C, u00208, "sdl__images__ioB");
|
||||
u00209 : constant Version_32 := 16#9a728871#;
|
||||
pragma Export (C, u00209, "sdl__images__ioS");
|
||||
u00210 : constant Version_32 := 16#ebda439b#;
|
||||
pragma Export (C, u00210, "sdl__rwopsB");
|
||||
u00211 : constant Version_32 := 16#82fbb5ae#;
|
||||
pragma Export (C, u00211, "sdl__rwopsS");
|
||||
u00212 : constant Version_32 := 16#f5f567e3#;
|
||||
pragma Export (C, u00212, "sdl__video__renderersB");
|
||||
u00213 : constant Version_32 := 16#a0ad70f6#;
|
||||
pragma Export (C, u00213, "sdl__video__renderersS");
|
||||
u00214 : constant Version_32 := 16#580ccfdc#;
|
||||
pragma Export (C, u00214, "sdl__video__texturesB");
|
||||
u00215 : constant Version_32 := 16#abea9c79#;
|
||||
pragma Export (C, u00215, "sdl__video__texturesS");
|
||||
u00216 : constant Version_32 := 16#71581158#;
|
||||
pragma Export (C, u00216, "sdl__video__pixelsS");
|
||||
u00217 : constant Version_32 := 16#010b3ca4#;
|
||||
pragma Export (C, u00217, "sdl__video__renderers__makersB");
|
||||
u00218 : constant Version_32 := 16#9b55209d#;
|
||||
pragma Export (C, u00218, "sdl__video__renderers__makersS");
|
||||
u00219 : constant Version_32 := 16#1aa788ac#;
|
||||
pragma Export (C, u00219, "sdl__video__surfaces__makersB");
|
||||
u00220 : constant Version_32 := 16#7aec1d50#;
|
||||
pragma Export (C, u00220, "sdl__video__surfaces__makersS");
|
||||
u00221 : constant Version_32 := 16#6b6cf7a1#;
|
||||
pragma Export (C, u00221, "sdl__video__textures__makersB");
|
||||
u00222 : constant Version_32 := 16#bee99f6d#;
|
||||
pragma Export (C, u00222, "sdl__video__textures__makersS");
|
||||
u00223 : constant Version_32 := 16#6a50b071#;
|
||||
pragma Export (C, u00223, "sdl__video__windows__makersB");
|
||||
u00224 : constant Version_32 := 16#49567878#;
|
||||
pragma Export (C, u00224, "sdl__video__windows__makersS");
|
||||
u00225 : constant Version_32 := 16#ca878138#;
|
||||
pragma Export (C, u00225, "system__concat_2B");
|
||||
u00226 : constant Version_32 := 16#f796dc4f#;
|
||||
pragma Export (C, u00226, "system__concat_2S");
|
||||
|
||||
-- BEGIN ELABORATION ORDER
|
||||
-- ada%s
|
||||
-- ada.characters%s
|
||||
-- ada.characters.latin_1%s
|
||||
-- interfaces%s
|
||||
-- system%s
|
||||
-- system.atomic_operations%s
|
||||
-- system.io%s
|
||||
-- system.io%b
|
||||
-- system.parameters%s
|
||||
-- system.parameters%b
|
||||
-- system.crtl%s
|
||||
-- interfaces.c_streams%s
|
||||
-- interfaces.c_streams%b
|
||||
-- system.os_primitives%s
|
||||
-- system.os_primitives%b
|
||||
-- system.storage_elements%s
|
||||
-- system.storage_elements%b
|
||||
-- system.return_stack%s
|
||||
-- system.stack_checking%s
|
||||
-- system.stack_checking%b
|
||||
-- system.string_hash%s
|
||||
-- system.string_hash%b
|
||||
-- system.htable%s
|
||||
-- system.htable%b
|
||||
-- system.strings%s
|
||||
-- system.strings%b
|
||||
-- system.traceback_entries%s
|
||||
-- system.traceback_entries%b
|
||||
-- system.unsigned_types%s
|
||||
-- system.wch_con%s
|
||||
-- system.wch_con%b
|
||||
-- system.wch_jis%s
|
||||
-- system.wch_jis%b
|
||||
-- system.wch_cnv%s
|
||||
-- system.wch_cnv%b
|
||||
-- system.concat_2%s
|
||||
-- system.concat_2%b
|
||||
-- system.exn_flt%s
|
||||
-- system.traceback%s
|
||||
-- system.traceback%b
|
||||
-- ada.characters.handling%s
|
||||
-- system.atomic_operations.test_and_set%s
|
||||
-- system.case_util%s
|
||||
-- system.os_lib%s
|
||||
-- system.secondary_stack%s
|
||||
-- system.standard_library%s
|
||||
-- ada.exceptions%s
|
||||
-- system.exceptions_debug%s
|
||||
-- system.exceptions_debug%b
|
||||
-- system.soft_links%s
|
||||
-- system.val_llu%s
|
||||
-- system.val_lli%s
|
||||
-- system.val_uns%s
|
||||
-- system.val_int%s
|
||||
-- system.val_util%s
|
||||
-- system.val_util%b
|
||||
-- system.wch_stw%s
|
||||
-- system.wch_stw%b
|
||||
-- ada.exceptions.last_chance_handler%s
|
||||
-- ada.exceptions.last_chance_handler%b
|
||||
-- ada.exceptions.traceback%s
|
||||
-- ada.exceptions.traceback%b
|
||||
-- system.address_image%s
|
||||
-- system.address_image%b
|
||||
-- system.bit_ops%s
|
||||
-- system.bit_ops%b
|
||||
-- system.bounded_strings%s
|
||||
-- system.bounded_strings%b
|
||||
-- system.case_util%b
|
||||
-- system.exception_table%s
|
||||
-- system.exception_table%b
|
||||
-- ada.containers%s
|
||||
-- ada.io_exceptions%s
|
||||
-- ada.numerics%s
|
||||
-- ada.numerics.big_numbers%s
|
||||
-- ada.strings%s
|
||||
-- ada.strings.maps%s
|
||||
-- ada.strings.maps%b
|
||||
-- ada.strings.maps.constants%s
|
||||
-- interfaces.c%s
|
||||
-- interfaces.c%b
|
||||
-- system.atomic_primitives%s
|
||||
-- system.atomic_primitives%b
|
||||
-- system.exceptions%s
|
||||
-- system.exceptions.machine%s
|
||||
-- system.exceptions.machine%b
|
||||
-- ada.characters.handling%b
|
||||
-- system.atomic_operations.test_and_set%b
|
||||
-- system.exception_traces%s
|
||||
-- system.exception_traces%b
|
||||
-- system.memory%s
|
||||
-- system.memory%b
|
||||
-- system.mmap%s
|
||||
-- system.mmap.os_interface%s
|
||||
-- system.mmap%b
|
||||
-- system.mmap.unix%s
|
||||
-- system.mmap.os_interface%b
|
||||
-- system.object_reader%s
|
||||
-- system.object_reader%b
|
||||
-- system.dwarf_lines%s
|
||||
-- system.os_lib%b
|
||||
-- system.secondary_stack%b
|
||||
-- system.soft_links.initialize%s
|
||||
-- system.soft_links.initialize%b
|
||||
-- system.soft_links%b
|
||||
-- system.standard_library%b
|
||||
-- system.traceback.symbolic%s
|
||||
-- system.traceback.symbolic%b
|
||||
-- system.wid_uns%s
|
||||
-- system.img_int%s
|
||||
-- ada.exceptions%b
|
||||
-- system.img_uns%s
|
||||
-- system.dwarf_lines%b
|
||||
-- ada.assertions%s
|
||||
-- ada.assertions%b
|
||||
-- ada.command_line%s
|
||||
-- ada.command_line%b
|
||||
-- ada.numerics.aux_linker_options%s
|
||||
-- ada.numerics.aux_float%s
|
||||
-- ada.numerics.aux_long_float%s
|
||||
-- ada.numerics.aux_long_long_float%s
|
||||
-- ada.numerics.aux_short_float%s
|
||||
-- ada.strings.utf_encoding%s
|
||||
-- ada.strings.utf_encoding%b
|
||||
-- ada.strings.utf_encoding.strings%s
|
||||
-- ada.strings.utf_encoding.strings%b
|
||||
-- ada.strings.utf_encoding.wide_strings%s
|
||||
-- ada.strings.utf_encoding.wide_strings%b
|
||||
-- ada.strings.utf_encoding.wide_wide_strings%s
|
||||
-- ada.strings.utf_encoding.wide_wide_strings%b
|
||||
-- ada.tags%s
|
||||
-- ada.tags%b
|
||||
-- ada.strings.text_buffers%s
|
||||
-- ada.strings.text_buffers%b
|
||||
-- ada.strings.text_buffers.utils%s
|
||||
-- ada.strings.text_buffers.utils%b
|
||||
-- interfaces.c.strings%s
|
||||
-- interfaces.c.strings%b
|
||||
-- system.fat_flt%s
|
||||
-- ada.numerics.elementary_functions%s
|
||||
-- ada.numerics.elementary_functions%b
|
||||
-- system.fat_lflt%s
|
||||
-- system.fat_llf%s
|
||||
-- system.put_images%s
|
||||
-- system.put_images%b
|
||||
-- ada.streams%s
|
||||
-- ada.streams%b
|
||||
-- system.file_control_block%s
|
||||
-- system.finalization_root%s
|
||||
-- system.finalization_root%b
|
||||
-- ada.finalization%s
|
||||
-- system.file_io%s
|
||||
-- system.file_io%b
|
||||
-- system.storage_pools%s
|
||||
-- system.storage_pools%b
|
||||
-- system.finalization_masters%s
|
||||
-- system.finalization_masters%b
|
||||
-- system.storage_pools.subpools%s
|
||||
-- system.storage_pools.subpools.finalization%s
|
||||
-- system.storage_pools.subpools.finalization%b
|
||||
-- system.storage_pools.subpools%b
|
||||
-- system.stream_attributes%s
|
||||
-- system.stream_attributes.xdr%s
|
||||
-- system.stream_attributes.xdr%b
|
||||
-- system.stream_attributes%b
|
||||
-- ada.calendar%s
|
||||
-- ada.calendar%b
|
||||
-- ada.calendar.delays%s
|
||||
-- ada.calendar.delays%b
|
||||
-- ada.text_io%s
|
||||
-- ada.text_io%b
|
||||
-- system.assertions%s
|
||||
-- system.assertions%b
|
||||
-- system.pool_global%s
|
||||
-- system.pool_global%b
|
||||
-- sdl%s
|
||||
-- sdl%b
|
||||
-- sdl.c_pointers%s
|
||||
-- sdl.error%s
|
||||
-- sdl.error%b
|
||||
-- sdl.events%s
|
||||
-- sdl.events.files%s
|
||||
-- sdl.events.joysticks%s
|
||||
-- sdl.events.joysticks%b
|
||||
-- sdl.events.controllers%s
|
||||
-- sdl.events.touches%s
|
||||
-- sdl.rwops%s
|
||||
-- sdl.rwops%b
|
||||
-- sdl.video%s
|
||||
-- sdl.video%b
|
||||
-- sdl.video.palettes%s
|
||||
-- sdl.video.palettes%b
|
||||
-- sdl.video.pixel_formats%s
|
||||
-- sdl.video.pixel_formats%b
|
||||
-- sdl.video.pixels%s
|
||||
-- sdl.video.rectangles%s
|
||||
-- sdl.video.rectangles%b
|
||||
-- sdl.video.displays%s
|
||||
-- sdl.video.displays%b
|
||||
-- sdl.video.surfaces%s
|
||||
-- sdl.video.surfaces%b
|
||||
-- sdl.video.surfaces.makers%s
|
||||
-- sdl.video.surfaces.makers%b
|
||||
-- sdl.video.textures%s
|
||||
-- sdl.video.textures%b
|
||||
-- sdl.video.windows%s
|
||||
-- sdl.video.windows%b
|
||||
-- sdl.events.keyboards%s
|
||||
-- sdl.events.keyboards%b
|
||||
-- sdl.events.mice%s
|
||||
-- sdl.events.windows%s
|
||||
-- sdl.events.events%s
|
||||
-- sdl.events.events%b
|
||||
-- sdl.video.renderers%s
|
||||
-- sdl.video.renderers%b
|
||||
-- sdl.video.renderers.makers%s
|
||||
-- sdl.video.renderers.makers%b
|
||||
-- sdl.video.textures.makers%s
|
||||
-- sdl.video.textures.makers%b
|
||||
-- sdl.video.windows.makers%s
|
||||
-- sdl.video.windows.makers%b
|
||||
-- sdl.images%s
|
||||
-- sdl.images%b
|
||||
-- sdl.images.io%s
|
||||
-- sdl.images.io%b
|
||||
-- threed%b
|
||||
-- END ELABORATION ORDER
|
||||
|
||||
end ada_main;
|
||||
+424
@@ -0,0 +1,424 @@
|
||||
V "GNAT Lib v13"
|
||||
A -gnatA
|
||||
A -gnatA
|
||||
A -gnatWb
|
||||
A -gnatiw
|
||||
A -gnatws
|
||||
A -mtune=generic
|
||||
A -march=x86-64
|
||||
P ZX
|
||||
|
||||
RN
|
||||
RV NO_ACCESS_SUBPROGRAMS
|
||||
RV NO_STANDARD_STORAGE_POOLS
|
||||
RV NO_DEFAULT_INITIALIZATION
|
||||
RV NO_IMPLEMENTATION_ATTRIBUTES
|
||||
RV NO_IMPLEMENTATION_PRAGMAS
|
||||
RV NO_IMPLICIT_LOOPS
|
||||
RV NO_ELABORATION_CODE
|
||||
RV NO_OBSOLESCENT_FEATURES
|
||||
|
||||
U ada_main%b b__threed.adb fc6f94f1 OO PK IL
|
||||
W ada%s ada.ads ada.ali
|
||||
W ada.exceptions%s a-except.adb a-except.ali
|
||||
Z system%s system.ads system.ali
|
||||
|
||||
U ada_main%s b__threed.ads 092635e3 EE NE OO PK IL
|
||||
W system%s system.ads system.ali
|
||||
W system.parameters%s s-parame.adb s-parame.ali
|
||||
W system.secondary_stack%s s-secsta.adb s-secsta.ali
|
||||
|
||||
D ada.ads 20230426000000 76789da1 ada%s
|
||||
D a-except.ads 20230426000000 2a7d8d70 ada.exceptions%s
|
||||
D a-unccon.ads 20230426000000 0e9b276f ada.unchecked_conversion%s
|
||||
D b__threed.ads 20230506025956 c85d4708 ada_main%s
|
||||
D b__threed.adb 20230506025956 1e4f5e89 ada_main%b
|
||||
D system.ads 20230426000000 426dafb8 system%s
|
||||
D s-parame.ads 20230426000000 d494a4a6 system.parameters%s
|
||||
D s-secsta.ads 20230426000000 578279f5 system.secondary_stack%s
|
||||
D s-stalib.ads 20230426000000 1c9580f6 system.standard_library%s
|
||||
D s-stoele.ads 20230426000000 ab5468e4 system.storage_elements%s
|
||||
D s-traent.ads 20230426000000 c81cbf8c system.traceback_entries%s
|
||||
G a e
|
||||
G c Z s b [adainit ada_main 29 14 none]
|
||||
G c Z s b [adafinal ada_main 32 14 none]
|
||||
G c Z s b [main ada_main 35 13 none]
|
||||
G c Z b b [Tsec_default_sized_stacksBIP ada_main 59 4 none]
|
||||
G c Z b b [finalize_library ada_main 66 14 none]
|
||||
G c Z b b [ada_main_program ada_main 347 14 none]
|
||||
X 1 ada.ads
|
||||
16K9*Ada 20e8 5|6r6
|
||||
X 2 a-except.ads
|
||||
44K13*Exceptions 295e19 5|6w10
|
||||
X 4 b__threed.ads
|
||||
6K9*ada_main 725l5 725e13 5|8b14 393l5 393t13
|
||||
8i4*gnat_argc{integer} 12m22 12r22 5|367r10 368m10
|
||||
9m4*gnat_argv{6|67M9} 13m22 13r22 5|369m10
|
||||
10m4*gnat_envp{6|67M9} 14m22 14r22 5|371m7
|
||||
16i4*gnat_exit_status{integer} 17m22 17r22 5|378r15
|
||||
19a4*GNAT_Version{string} 21r22 23r54
|
||||
23m4*GNAT_Version_Address{6|67M9} 24r22
|
||||
26a4*Ada_Main_Program_Name{string} 27r22 5|363r52
|
||||
29U14*adainit 30i<c,adainit>22 5|171b14 345l8 345t15 374s7
|
||||
32U14*adafinal 33i<c,adafinal>22 5|152b14 166l8 166t16 376s7
|
||||
35V13*main{integer} 36>7 37>7 38>7 40i<c,main>22 5|350b13 379t7
|
||||
36i7 argc{integer} 5|351b7 368r23
|
||||
37m7 argv{6|67M9} 5|352b7 369r23
|
||||
38m7 envp{6|67M9} 5|353b7 371r20
|
||||
42M9*Version_32 43r22 45r22 47r22 49r22 51r22 53r22 55r22 57r22 59r22 61r22
|
||||
. 63r22 65r22 67r22 69r22 71r22 73r22 75r22 77r22 79r22 81r22 83r22 85r22
|
||||
. 87r22 89r22 91r22 93r22 95r22 97r22 99r22 101r22 103r22 105r22 107r22 109r22
|
||||
. 111r22 113r22 115r22 117r22 119r22 121r22 123r22 125r22 127r22 129r22 131r22
|
||||
. 133r22 135r22 137r22 139r22 141r22 143r22 145r22 147r22 149r22 151r22 153r22
|
||||
. 155r22 157r22 159r22 161r22 163r22 165r22 167r22 169r22 171r22 173r22 175r22
|
||||
. 177r22 179r22 181r22 183r22 185r22 187r22 189r22 191r22 193r22 195r22 197r22
|
||||
. 199r22 201r22 203r22 205r22 207r22 209r22 211r22 213r22 215r22 217r22 219r22
|
||||
. 221r22 223r22 225r22 227r22 229r22 231r22 233r22 235r22 237r22 239r22 241r22
|
||||
. 243r22 245r22 247r22 249r22 251r22 253r22 255r22 257r22 259r22 261r22 263r22
|
||||
. 265r22 267r22 269r22 271r22 273r22 275r22 277r22 279r22 281r22 283r22 285r22
|
||||
. 287r22 289r22 291r22 293r22 295r22 297r22 299r22 301r22 303r22 305r22 307r22
|
||||
. 309r22 311r22 313r22 315r22 317r22 319r22 321r22 323r22 325r22 327r22 329r22
|
||||
. 331r22 333r22 335r22 337r22 339r22 341r22 343r22 345r22 347r22 349r22 351r22
|
||||
. 353r22 355r22 357r22 359r22 361r22 363r22 365r22 367r22 369r22 371r22 373r22
|
||||
. 375r22 377r22 379r22 381r22 383r22 385r22 387r22 389r22 391r22 393r22 395r22
|
||||
. 397r22 399r22 401r22 403r22 405r22 407r22 409r22 411r22 413r22 415r22 417r22
|
||||
. 419r22 421r22 423r22 425r22 427r22 429r22 431r22 433r22 435r22 437r22 439r22
|
||||
. 441r22 443r22 445r22 447r22 449r22 451r22 453r22 455r22 457r22 459r22 461r22
|
||||
. 463r22 465r22 467r22 469r22 471r22 473r22 475r22 477r22 479r22 481r22 483r22
|
||||
. 485r22 487r22 489r22 491r22 493r22
|
||||
43m4*u00001{42M9} 44r22
|
||||
45m4*u00002{42M9} 46r22
|
||||
47m4*u00003{42M9} 48r22
|
||||
49m4*u00004{42M9} 50r22
|
||||
51m4*u00005{42M9} 52r22
|
||||
53m4*u00006{42M9} 54r22
|
||||
55m4*u00007{42M9} 56r22
|
||||
57m4*u00008{42M9} 58r22
|
||||
59m4*u00009{42M9} 60r22
|
||||
61m4*u00010{42M9} 62r22
|
||||
63m4*u00011{42M9} 64r22
|
||||
65m4*u00012{42M9} 66r22
|
||||
67m4*u00013{42M9} 68r22
|
||||
69m4*u00014{42M9} 70r22
|
||||
71m4*u00015{42M9} 72r22
|
||||
73m4*u00016{42M9} 74r22
|
||||
75m4*u00017{42M9} 76r22
|
||||
77m4*u00018{42M9} 78r22
|
||||
79m4*u00019{42M9} 80r22
|
||||
81m4*u00020{42M9} 82r22
|
||||
83m4*u00021{42M9} 84r22
|
||||
85m4*u00022{42M9} 86r22
|
||||
87m4*u00023{42M9} 88r22
|
||||
89m4*u00024{42M9} 90r22
|
||||
91m4*u00025{42M9} 92r22
|
||||
93m4*u00026{42M9} 94r22
|
||||
95m4*u00027{42M9} 96r22
|
||||
97m4*u00028{42M9} 98r22
|
||||
99m4*u00029{42M9} 100r22
|
||||
101m4*u00030{42M9} 102r22
|
||||
103m4*u00031{42M9} 104r22
|
||||
105m4*u00032{42M9} 106r22
|
||||
107m4*u00033{42M9} 108r22
|
||||
109m4*u00034{42M9} 110r22
|
||||
111m4*u00035{42M9} 112r22
|
||||
113m4*u00036{42M9} 114r22
|
||||
115m4*u00037{42M9} 116r22
|
||||
117m4*u00038{42M9} 118r22
|
||||
119m4*u00039{42M9} 120r22
|
||||
121m4*u00040{42M9} 122r22
|
||||
123m4*u00041{42M9} 124r22
|
||||
125m4*u00042{42M9} 126r22
|
||||
127m4*u00043{42M9} 128r22
|
||||
129m4*u00044{42M9} 130r22
|
||||
131m4*u00045{42M9} 132r22
|
||||
133m4*u00046{42M9} 134r22
|
||||
135m4*u00047{42M9} 136r22
|
||||
137m4*u00048{42M9} 138r22
|
||||
139m4*u00049{42M9} 140r22
|
||||
141m4*u00050{42M9} 142r22
|
||||
143m4*u00051{42M9} 144r22
|
||||
145m4*u00052{42M9} 146r22
|
||||
147m4*u00053{42M9} 148r22
|
||||
149m4*u00054{42M9} 150r22
|
||||
151m4*u00055{42M9} 152r22
|
||||
153m4*u00056{42M9} 154r22
|
||||
155m4*u00057{42M9} 156r22
|
||||
157m4*u00058{42M9} 158r22
|
||||
159m4*u00059{42M9} 160r22
|
||||
161m4*u00060{42M9} 162r22
|
||||
163m4*u00061{42M9} 164r22
|
||||
165m4*u00062{42M9} 166r22
|
||||
167m4*u00063{42M9} 168r22
|
||||
169m4*u00064{42M9} 170r22
|
||||
171m4*u00065{42M9} 172r22
|
||||
173m4*u00066{42M9} 174r22
|
||||
175m4*u00067{42M9} 176r22
|
||||
177m4*u00068{42M9} 178r22
|
||||
179m4*u00069{42M9} 180r22
|
||||
181m4*u00070{42M9} 182r22
|
||||
183m4*u00071{42M9} 184r22
|
||||
185m4*u00072{42M9} 186r22
|
||||
187m4*u00073{42M9} 188r22
|
||||
189m4*u00074{42M9} 190r22
|
||||
191m4*u00075{42M9} 192r22
|
||||
193m4*u00076{42M9} 194r22
|
||||
195m4*u00077{42M9} 196r22
|
||||
197m4*u00078{42M9} 198r22
|
||||
199m4*u00079{42M9} 200r22
|
||||
201m4*u00080{42M9} 202r22
|
||||
203m4*u00081{42M9} 204r22
|
||||
205m4*u00082{42M9} 206r22
|
||||
207m4*u00083{42M9} 208r22
|
||||
209m4*u00084{42M9} 210r22
|
||||
211m4*u00085{42M9} 212r22
|
||||
213m4*u00086{42M9} 214r22
|
||||
215m4*u00087{42M9} 216r22
|
||||
217m4*u00088{42M9} 218r22
|
||||
219m4*u00089{42M9} 220r22
|
||||
221m4*u00090{42M9} 222r22
|
||||
223m4*u00091{42M9} 224r22
|
||||
225m4*u00092{42M9} 226r22
|
||||
227m4*u00093{42M9} 228r22
|
||||
229m4*u00094{42M9} 230r22
|
||||
231m4*u00095{42M9} 232r22
|
||||
233m4*u00096{42M9} 234r22
|
||||
235m4*u00097{42M9} 236r22
|
||||
237m4*u00098{42M9} 238r22
|
||||
239m4*u00099{42M9} 240r22
|
||||
241m4*u00100{42M9} 242r22
|
||||
243m4*u00101{42M9} 244r22
|
||||
245m4*u00102{42M9} 246r22
|
||||
247m4*u00103{42M9} 248r22
|
||||
249m4*u00104{42M9} 250r22
|
||||
251m4*u00105{42M9} 252r22
|
||||
253m4*u00106{42M9} 254r22
|
||||
255m4*u00107{42M9} 256r22
|
||||
257m4*u00108{42M9} 258r22
|
||||
259m4*u00109{42M9} 260r22
|
||||
261m4*u00110{42M9} 262r22
|
||||
263m4*u00111{42M9} 264r22
|
||||
265m4*u00112{42M9} 266r22
|
||||
267m4*u00113{42M9} 268r22
|
||||
269m4*u00114{42M9} 270r22
|
||||
271m4*u00115{42M9} 272r22
|
||||
273m4*u00116{42M9} 274r22
|
||||
275m4*u00117{42M9} 276r22
|
||||
277m4*u00118{42M9} 278r22
|
||||
279m4*u00119{42M9} 280r22
|
||||
281m4*u00120{42M9} 282r22
|
||||
283m4*u00121{42M9} 284r22
|
||||
285m4*u00122{42M9} 286r22
|
||||
287m4*u00123{42M9} 288r22
|
||||
289m4*u00124{42M9} 290r22
|
||||
291m4*u00125{42M9} 292r22
|
||||
293m4*u00126{42M9} 294r22
|
||||
295m4*u00127{42M9} 296r22
|
||||
297m4*u00128{42M9} 298r22
|
||||
299m4*u00129{42M9} 300r22
|
||||
301m4*u00130{42M9} 302r22
|
||||
303m4*u00131{42M9} 304r22
|
||||
305m4*u00132{42M9} 306r22
|
||||
307m4*u00133{42M9} 308r22
|
||||
309m4*u00134{42M9} 310r22
|
||||
311m4*u00135{42M9} 312r22
|
||||
313m4*u00136{42M9} 314r22
|
||||
315m4*u00137{42M9} 316r22
|
||||
317m4*u00138{42M9} 318r22
|
||||
319m4*u00139{42M9} 320r22
|
||||
321m4*u00140{42M9} 322r22
|
||||
323m4*u00141{42M9} 324r22
|
||||
325m4*u00142{42M9} 326r22
|
||||
327m4*u00143{42M9} 328r22
|
||||
329m4*u00144{42M9} 330r22
|
||||
331m4*u00145{42M9} 332r22
|
||||
333m4*u00146{42M9} 334r22
|
||||
335m4*u00147{42M9} 336r22
|
||||
337m4*u00148{42M9} 338r22
|
||||
339m4*u00149{42M9} 340r22
|
||||
341m4*u00150{42M9} 342r22
|
||||
343m4*u00151{42M9} 344r22
|
||||
345m4*u00152{42M9} 346r22
|
||||
347m4*u00153{42M9} 348r22
|
||||
349m4*u00154{42M9} 350r22
|
||||
351m4*u00155{42M9} 352r22
|
||||
353m4*u00156{42M9} 354r22
|
||||
355m4*u00157{42M9} 356r22
|
||||
357m4*u00158{42M9} 358r22
|
||||
359m4*u00159{42M9} 360r22
|
||||
361m4*u00160{42M9} 362r22
|
||||
363m4*u00161{42M9} 364r22
|
||||
365m4*u00162{42M9} 366r22
|
||||
367m4*u00163{42M9} 368r22
|
||||
369m4*u00164{42M9} 370r22
|
||||
371m4*u00165{42M9} 372r22
|
||||
373m4*u00166{42M9} 374r22
|
||||
375m4*u00167{42M9} 376r22
|
||||
377m4*u00168{42M9} 378r22
|
||||
379m4*u00169{42M9} 380r22
|
||||
381m4*u00170{42M9} 382r22
|
||||
383m4*u00171{42M9} 384r22
|
||||
385m4*u00172{42M9} 386r22
|
||||
387m4*u00173{42M9} 388r22
|
||||
389m4*u00174{42M9} 390r22
|
||||
391m4*u00175{42M9} 392r22
|
||||
393m4*u00176{42M9} 394r22
|
||||
395m4*u00177{42M9} 396r22
|
||||
397m4*u00178{42M9} 398r22
|
||||
399m4*u00179{42M9} 400r22
|
||||
401m4*u00180{42M9} 402r22
|
||||
403m4*u00181{42M9} 404r22
|
||||
405m4*u00182{42M9} 406r22
|
||||
407m4*u00183{42M9} 408r22
|
||||
409m4*u00184{42M9} 410r22
|
||||
411m4*u00185{42M9} 412r22
|
||||
413m4*u00186{42M9} 414r22
|
||||
415m4*u00187{42M9} 416r22
|
||||
417m4*u00188{42M9} 418r22
|
||||
419m4*u00189{42M9} 420r22
|
||||
421m4*u00190{42M9} 422r22
|
||||
423m4*u00191{42M9} 424r22
|
||||
425m4*u00192{42M9} 426r22
|
||||
427m4*u00193{42M9} 428r22
|
||||
429m4*u00194{42M9} 430r22
|
||||
431m4*u00195{42M9} 432r22
|
||||
433m4*u00196{42M9} 434r22
|
||||
435m4*u00197{42M9} 436r22
|
||||
437m4*u00198{42M9} 438r22
|
||||
439m4*u00199{42M9} 440r22
|
||||
441m4*u00200{42M9} 442r22
|
||||
443m4*u00201{42M9} 444r22
|
||||
445m4*u00202{42M9} 446r22
|
||||
447m4*u00203{42M9} 448r22
|
||||
449m4*u00204{42M9} 450r22
|
||||
451m4*u00205{42M9} 452r22
|
||||
453m4*u00206{42M9} 454r22
|
||||
455m4*u00207{42M9} 456r22
|
||||
457m4*u00208{42M9} 458r22
|
||||
459m4*u00209{42M9} 460r22
|
||||
461m4*u00210{42M9} 462r22
|
||||
463m4*u00211{42M9} 464r22
|
||||
465m4*u00212{42M9} 466r22
|
||||
467m4*u00213{42M9} 468r22
|
||||
469m4*u00214{42M9} 470r22
|
||||
471m4*u00215{42M9} 472r22
|
||||
473m4*u00216{42M9} 474r22
|
||||
475m4*u00217{42M9} 476r22
|
||||
477m4*u00218{42M9} 478r22
|
||||
479m4*u00219{42M9} 480r22
|
||||
481m4*u00220{42M9} 482r22
|
||||
483m4*u00221{42M9} 484r22
|
||||
485m4*u00222{42M9} 486r22
|
||||
487m4*u00223{42M9} 488r22
|
||||
489m4*u00224{42M9} 490r22
|
||||
491m4*u00225{42M9} 492r22
|
||||
493m4*u00226{42M9} 494r22
|
||||
X 5 b__threed.adb
|
||||
10i4 E083{short_integer} 10m46 10r46 269m7 269r15
|
||||
11i4 E010{short_integer} 11m46 11r46 277m7 277r15
|
||||
12i4 E015{short_integer} 12m46 12r46 272m7 272r15
|
||||
13i4 E027{short_integer} 13m46 13r46 248m7 248r15
|
||||
14i4 E050{short_integer} 14m46 14r46 250m7 250r15
|
||||
15i4 E078{short_integer} 15m46 15r46 252m7 252r15
|
||||
16i4 E034{short_integer} 16m46 16r46 254m7 254r15
|
||||
17i4 E065{short_integer} 17m46 17r46 256m7 256r15
|
||||
18i4 E067{short_integer} 18m46 18r46 258m7 258r15
|
||||
19i4 E070{short_integer} 19m46 19r46 260m7 260r15
|
||||
20i4 E055{short_integer} 20m46 20r46 262m7 262r15
|
||||
21i4 E028{short_integer} 21m46 21r46 264m7 264r15
|
||||
22i4 E092{short_integer} 22m46 22r46 266m7 266r15
|
||||
23i4 E060{short_integer} 23m46 23r46 280m7 280r15
|
||||
24i4 E023{short_integer} 24m46 24r46 271m7 271r15
|
||||
25i4 E049{short_integer} 25m46 25r46 274m7 274r15
|
||||
26i4 E033{short_integer} 26m46 26r46 276m7 276r15
|
||||
27i4 E073{short_integer} 27m46 27r46 279m7 279r15
|
||||
28i4 E172{short_integer} 28m46 28r46 282m7 282r15
|
||||
29i4 E121{short_integer} 29m46 29r46 284m7 284r15
|
||||
30i4 E129{short_integer} 30m46 30r46 287m7 287r15
|
||||
31i4 E119{short_integer} 31m46 31r46 289m7 289r15
|
||||
32i4 E155{short_integer} 32m46 32r46 291m7 291r15
|
||||
33i4 E137{short_integer} 33m46 33r46 293m7 293r15
|
||||
34i4 E149{short_integer} 34m46 34r46 295m7 295r15
|
||||
35i4 E148{short_integer} 35m46 35r46 297m7 297r15
|
||||
36i4 E146{short_integer} 36m46 36r46 299m7 299r15
|
||||
37i4 E145{short_integer} 37m46 37r46 141m10 141r18 301m7 301r15
|
||||
38i4 E176{short_integer} 38m46 38r46 303m7 303r15
|
||||
39i4 E174{short_integer} 39m46 39r46 130m7 130r15 306m7 306r15
|
||||
40i4 E178{short_integer} 40m46 40r46 123m7 123r15 308m7 308r15
|
||||
41i4 E008{short_integer} 41m46 41r46 311m7 311r15
|
||||
42i4 E006{short_integer} 42m46 42r46 313m7 313r15
|
||||
43i4 E135{short_integer} 43m46 43r46 116m7 116r15 316m7 316r15
|
||||
44i4 E189{short_integer} 44m46 44r46 109m7 109r15 318m7 318r15
|
||||
45i4 E211{short_integer} 45m46 45r46 320m7 320r15
|
||||
46i4 E166{short_integer} 46m46 46r46 322m7 322r15
|
||||
47i4 E187{short_integer} 47m46 47r46 100m10 100r18 325m7 325r15
|
||||
48i4 E185{short_integer} 48m46 48r46 327m7 327r15
|
||||
49i4 E216{short_integer} 49m46 49r46 329m7 329r15
|
||||
50i4 E193{short_integer} 50m46 50r46 331m7 331r15
|
||||
51i4 E195{short_integer} 51m46 51r46 89m7 89r15 333m7 333r15
|
||||
52i4 E215{short_integer} 52m46 52r46 82m7 82r15 335m7 335r15
|
||||
53i4 E168{short_integer} 53m46 53r46 75m7 75r15 337m7 337r15
|
||||
54i4 E158{short_integer} 54m46 54r46 339m7 339r15
|
||||
55i4 E213{short_integer} 55m46 55r46 68m7 68r15 341m7 341r15
|
||||
56i4 E207{short_integer} 56m46 56r46 343m7 343r15
|
||||
57i4 E209{short_integer} 57m46 57r46 344m7 344r15
|
||||
59a4 Sec_Default_Sized_Stacks(8|43R9) 239m32 239r32
|
||||
61a4 Local_Priority_Specific_Dispatching{string} 227r9
|
||||
62a4 Local_Interrupt_States{string} 230r27
|
||||
64b4 Is_Elaborated{boolean} 160r14 163m7 216r10 219m7
|
||||
66U14 finalize_library 66b14 150l8 150t24 243r35
|
||||
70U20*F1 71b<ada,sdl__video__renderers__finalize_spec>30 73s10
|
||||
77U20*F2 78b<ada,sdl__video__windows__finalize_spec>30 80s10
|
||||
84U20*F3 85b<ada,sdl__video__textures__finalize_spec>30 87s10
|
||||
91U20*F4 92b<ada,sdl__video__surfaces__finalize_spec>30 94s10
|
||||
97U20*F5 98b<ada,sdl__video__palettes__finalize_body>30 101s10
|
||||
104U20*F6 105b<ada,sdl__video__palettes__finalize_spec>30 107s10
|
||||
111U20*F7 112b<ada,system__pool_global__finalize_spec>30 114s10
|
||||
118U20*F8 119b<ada,ada__text_io__finalize_spec>30 121s10
|
||||
125U20*F9 126b<ada,system__storage_pools__subpools__finalize_spec>30 128s10
|
||||
132U20*F10 133b<ada,system__finalization_masters__finalize_spec>30 135s10
|
||||
138U20*F11 139b<ada,system__file_io__finalize_body>30 142s10
|
||||
145U20*Reraise_Library_Exception_If_Any 146b<ada,__gnat_reraise_library_exception_if_any>33
|
||||
. 148s10
|
||||
153U17*s_stalib_adafinal 154b<ada,system__standard_library__adafinal>27 165s7
|
||||
156U17*Runtime_Finalize 157b<c,__gnat_runtime_finalize>25 164s7
|
||||
168P9 No_Param_Proc 169r28 208r34
|
||||
172i7*Main_Priority{integer} 173m25 173r25 220m7
|
||||
174i7*Time_Slice_Value{integer} 175m25 175r25 221m7
|
||||
176e7*WC_Encoding{character} 177m25 177r25 222m7
|
||||
178e7*Locking_Policy{character} 179m25 179r25 223m7
|
||||
180e7*Queuing_Policy{character} 181m25 181r25 224m7
|
||||
182e7*Task_Dispatching_Policy{character} 183m25 183r25 225m7
|
||||
184m7*Priority_Specific_Dispatching{6|67M9} 185m25 185r25 226m7
|
||||
186i7*Num_Specific_Dispatching{integer} 187m25 187r25 228m7
|
||||
188i7*Main_CPU{integer} 189m25 189r25 229m7
|
||||
190m7*Interrupt_States{6|67M9} 191m25 191r25 230m7
|
||||
192i7*Num_Interrupt_States{integer} 193m25 193r25 231m7
|
||||
194i7*Unreserve_All_Interrupts{integer} 195m25 195r25 232m7
|
||||
196i7*Detect_Blocking{integer} 197m25 197r25 233m7
|
||||
198i7*Default_Stack_Size{integer} 199m25 199r25 234m7
|
||||
200i7*Default_Secondary_Stack_Size{7|56I9} 201m25 201r25 237m7
|
||||
202m7*Bind_Env_Addr{6|67M9} 203m25 203r25
|
||||
205U17*Runtime_Initialize 205>37 206b<c,__gnat_runtime_initialize>25 241s7
|
||||
205i37 Install_Handler{integer}
|
||||
208p7*Finalize_Library_Objects{168P9} 209m25 209r25 243m7
|
||||
210i7*Binder_Sec_Stacks_Count{natural} 211m27 211r27 238m7
|
||||
212m7*Default_Sized_SS_Pool{6|67M9} 213m27 213r27 239m7
|
||||
347U14 Ada_Main_Program 348b<ada,_ada_threed>24 375s7
|
||||
356U17*Initialize 356>29 357b<c,__gnat_initialize>25 373s7
|
||||
356m29 Addr{6|67M9}
|
||||
359U17*Finalize 360b<c,__gnat_finalize>25 377s7
|
||||
361a7 SEH(integer) 373m19 373r19
|
||||
363m7 Ensure_Reference{6|67M9} 364r24
|
||||
X 6 system.ads
|
||||
37K9*System 4|3w6 4r6 5r6 9r16 10r16 23r36 37r14 38r14 5|59r57 59r90 184r39
|
||||
. 190r26 200r38 202r23 212r31 237r39 352r14 353r14 356r36 363r34 6|153e11
|
||||
67M9*Address 4|9r23 10r23 23r43 37r21 38r21 5|184r46 190r33 202r30 212r38
|
||||
. 352r21 353r21 356r43 363r41
|
||||
X 7 s-parame.ads
|
||||
49K16*Parameters 4|4w13 5|59r97 200r45 237r46 7|190e22
|
||||
56I9*Size_Type<long_integer> 5|200r56
|
||||
93i4*Runtime_Default_Sec_Stack_Size{56I9} 5|59r108 237r57
|
||||
X 8 s-secsta.ads
|
||||
35K16*Secondary_Stack 4|5w13 5|59r64 8|429e27
|
||||
43R9*SS_Stack 5|59r80 8|329e14
|
||||
|
||||
BIN
Binary file not shown.
+234
@@ -0,0 +1,234 @@
|
||||
----------------------------------------------------------------------------
|
||||
----------------------------------------------------------------------------
|
||||
-- threed.adb - display a 3D rotating cube --
|
||||
-- Copyright (c) 25/03/2023 Jason Bou-Samra. [Paragon] --
|
||||
-- --
|
||||
-- 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 --
|
||||
-- the Free Software Foundation, either version 3 of the License, or --
|
||||
-- (at your option) any later version. --
|
||||
-- --
|
||||
-- This program 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 for more details. --
|
||||
-- --
|
||||
-- You should have received a copy of the GNU General Public License --
|
||||
-- along with this program. If not, see <https://www.gnu.org/licenses/>. --
|
||||
----------------------------------------------------------------------------
|
||||
|
||||
with Ada.Text_IO; use Ada.Text_IO;
|
||||
with Ada.Command_Line; use Ada.Command_Line;
|
||||
with Ada.Numerics.Elementary_Functions; use Ada.Numerics.Elementary_Functions;
|
||||
|
||||
with SDL.Video.Windows.Makers;
|
||||
with SDL.Video.Renderers.Makers;
|
||||
with SDL.Video.Surfaces.Makers;
|
||||
with SDL.Video.Textures.Makers;
|
||||
with SDL.Video.Rectangles;
|
||||
|
||||
--with SDL.Video.Renderers;
|
||||
|
||||
with SDL.Images.IO;
|
||||
with SDL.Events.Events;
|
||||
with SDL.Error;
|
||||
use SDL.C;
|
||||
procedure threed is
|
||||
|
||||
-- hidden message
|
||||
|
||||
S : String := "toto, all the way";
|
||||
|
||||
-- temporary xyz sets
|
||||
|
||||
xt, yt, zt : array (1 .. 8) of Float;
|
||||
xu, yu, zu : array (1 .. 8) of Float;
|
||||
|
||||
-- cube model
|
||||
|
||||
x : array (1 .. 8) of Float :=
|
||||
(-80.0, 80.0, 80.0, -80.0, -80.0, 80.0, 80.0, -80.0);
|
||||
y : array (1 .. 8) of Float :=
|
||||
(80.0, 80.0, -80.0, -80.0, 80.0, 80.0, -80.0, -80.0);
|
||||
z : array (1 .. 8) of Float :=
|
||||
(80.0, 80.0, 80.0, 80.0, -80.0, -80.0, -80.0, -80.0);
|
||||
|
||||
angle : Float := 0.0;
|
||||
scale : Float := 3.0;
|
||||
RAD : Float := 3.14159 / 180.0;
|
||||
SPEED : Float := 2.0;
|
||||
|
||||
Window_Title : constant String := "3DCube demo";
|
||||
quit : Boolean := False;
|
||||
|
||||
use SDL.Video;
|
||||
use type Windows.Window_Flags;
|
||||
use type Renderers.Renderer_Flags;
|
||||
use type SDL.Events.Event_Types;
|
||||
|
||||
Win : Windows.Window;
|
||||
Ren : Renderers.Renderer;
|
||||
Bmp : Surfaces.Surface;
|
||||
Tex : Textures.Texture;
|
||||
|
||||
Event : SDL.Events.Events.Events;
|
||||
Dummy : Boolean;
|
||||
|
||||
---------------------------------
|
||||
-- poll function
|
||||
---------------------------------
|
||||
|
||||
function Poll_Quit return Boolean is
|
||||
use type SDL.Events.Event_Types;
|
||||
begin
|
||||
while SDL.Events.Events.Poll (Event) loop
|
||||
if Event.Common.Event_Type = SDL.Events.Quit then
|
||||
return True;
|
||||
end if;
|
||||
end loop;
|
||||
return False;
|
||||
end Poll_Quit;
|
||||
|
||||
--------------------------------
|
||||
-- initialise SDL
|
||||
--------------------------------
|
||||
procedure initSDL is
|
||||
|
||||
begin
|
||||
|
||||
-- Initialise SDL
|
||||
if not SDL.Initialise or not SDL.Images.Initialise then
|
||||
Ada.Text_IO.Put_Line
|
||||
(Ada.Text_IO.Standard_Error,
|
||||
"SDL.Initialize error: " & SDL.Error.Get);
|
||||
Ada.Command_Line.Set_Exit_Status (Ada.Command_Line.Failure);
|
||||
return;
|
||||
end if;
|
||||
|
||||
-- Create window
|
||||
Windows.Makers.Create
|
||||
(Win,
|
||||
Title => Window_Title,
|
||||
Position =>
|
||||
(Windows.Undefined_Window_Position,
|
||||
Windows.Undefined_Window_Position),
|
||||
Size => (640, 512),
|
||||
Flags => Windows.Shown);
|
||||
|
||||
-- Create renderer
|
||||
Renderers.Makers.Create
|
||||
(Rend => Ren,
|
||||
Window => Win,
|
||||
Flags => (Renderers.Accelerated or Renderers.Present_V_Sync));
|
||||
|
||||
end initSDL;
|
||||
|
||||
-------------------------------
|
||||
-- shutdown routine
|
||||
-------------------------------
|
||||
procedure shutdownSDL is
|
||||
|
||||
begin
|
||||
-- Not really needed since these will soon go out of scope
|
||||
Tex.Finalize; -- texture
|
||||
Ren.Finalize; -- renderer
|
||||
Win.Finalize; -- window
|
||||
SDL.Finalise; -- SDL
|
||||
end shutdownSDL;
|
||||
|
||||
--------------------------------
|
||||
-- rotation & projection routine
|
||||
--------------------------------
|
||||
procedure rotate is
|
||||
|
||||
begin
|
||||
for I in 1 .. 8 loop
|
||||
-- x angle (Roll)
|
||||
xt (I) := x (I);
|
||||
yt (I) := y (I) * Cos (RAD * angle) - z (I) * Sin (RAD * angle);
|
||||
zt (I) := y (I) * Sin (RAD * angle) + z (I) * Cos (RAD * angle);
|
||||
|
||||
-- y angle (Pitch)
|
||||
xu (I) := zt (I) * Sin (RAD * angle) + xt (I) * Cos (RAD * angle);
|
||||
yu (I) := yt (I);
|
||||
zu (I) := xt (I) * (-Sin (RAD * angle)) + zt (I) * Cos (RAD * angle);
|
||||
|
||||
-- z angle (Yaw)
|
||||
xt (I) := xu (I) * Cos (RAD * angle) - yu (I) * Sin (RAD * angle);
|
||||
yt (I) := xu (I) * Sin (RAD * angle) + yu (I) * Cos (RAD * angle);
|
||||
zt (I) := zu (I);
|
||||
|
||||
-- 2d perspective projection
|
||||
xt (I) := (xt (I) * 200.0) / (zt (I) + 800.0) * scale + 160.0;
|
||||
yt (I) := (yt (I) * 200.0) / (zt (I) + 800.0) * scale + 128.0;
|
||||
|
||||
end loop;
|
||||
|
||||
angle := angle + SPEED;
|
||||
|
||||
end rotate;
|
||||
|
||||
-------------------------------
|
||||
-- render cube
|
||||
-------------------------------
|
||||
procedure Render is
|
||||
|
||||
begin
|
||||
Renderers.Set_Draw_Colour (Ren, (0, 0, 40, 255));
|
||||
Renderers.Clear (Ren); -- background
|
||||
|
||||
Renderers.Set_Draw_Colour (Ren, (100, 100, 255, 255)); -- pen
|
||||
|
||||
-- draw cube front face
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (1)), int (yt (1))), (int (xt (2)), int (yt (2)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (2)), int (yt (2))), (int (xt (3)), int (yt (3)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (3)), int (yt (3))), (int (xt (4)), int (yt (4)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (4)), int (yt (4))), (int (xt (1)), int (yt (1)))));
|
||||
|
||||
-- draw cube back face
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (5)), int (yt (5))), (int (xt (6)), int (yt (6)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (6)), int (yt (6))), (int (xt (7)), int (yt (7)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (7)), int (yt (7))), (int (xt (8)), int (yt (8)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (8)), int (yt (8))), (int (xt (5)), int (yt (5)))));
|
||||
|
||||
-- draw cube sides
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (1)), int (yt (1))), (int (xt (5)), int (yt (5)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (2)), int (yt (2))), (int (xt (6)), int (yt (6)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (3)), int (yt (3))), (int (xt (7)), int (yt (7)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (4)), int (yt (4))), (int (xt (8)), int (yt (8)))));
|
||||
|
||||
Renderers.Present (Ren);
|
||||
end Render;
|
||||
|
||||
-------------------------------
|
||||
-- main
|
||||
-------------------------------
|
||||
|
||||
begin
|
||||
Put_Line ("3D cube rotating vector graphic demo");
|
||||
initSDL; -- call initialise SDL
|
||||
Renderers.Set_Scale (Ren, 2.0, 2.0);
|
||||
|
||||
Main :
|
||||
loop
|
||||
rotate; -- call rotate
|
||||
Render; -- call draw
|
||||
quit := Poll_Quit;
|
||||
exit when quit;
|
||||
delay 0.020;
|
||||
end loop Main;
|
||||
|
||||
shutdownSDL;
|
||||
end threed;
|
||||
+234
@@ -0,0 +1,234 @@
|
||||
-------------------------------------------------------------------------------
|
||||
-------------------------------------------------------------------------------
|
||||
-- Copyright (c) 25/03/2023 Jason Bou-Samra.
|
||||
--
|
||||
-- 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
|
||||
-- the Free Software Foundation, version 3.
|
||||
--
|
||||
-- This program 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 for more details.
|
||||
--
|
||||
-- You should have received a copy of the GNU General Public License
|
||||
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
-- to build : gprbuild -largs $(pkg-config sdl2 SDL2_image --libs)
|
||||
|
||||
with Ada.Text_IO; use Ada.Text_IO;
|
||||
with Ada.Command_Line; use Ada.Command_Line;
|
||||
with Ada.Numerics.Elementary_Functions; use Ada.Numerics.Elementary_Functions;
|
||||
|
||||
with SDL.Video.Windows.Makers;
|
||||
with SDL.Video.Renderers.Makers;
|
||||
with SDL.Video.Surfaces.Makers;
|
||||
with SDL.Video.Textures.Makers;
|
||||
with SDL.Video.Rectangles;
|
||||
|
||||
--with SDL.Video.Renderers;
|
||||
|
||||
with SDL.Images.IO;
|
||||
with SDL.Events.Events;
|
||||
with SDL.Error;
|
||||
use SDL.C;
|
||||
procedure threed is
|
||||
|
||||
-- hidden message
|
||||
|
||||
S : String := "toto all the way";
|
||||
|
||||
-- temporary xyz sets
|
||||
|
||||
xt, yt, zt : array (1 .. 8) of Float;
|
||||
xu, yu, zu : array (1 .. 8) of Float;
|
||||
|
||||
-- cube model
|
||||
|
||||
x : array (1 .. 8) of Float :=
|
||||
(-80.0, 80.0, 80.0, -80.0, -80.0, 80.0, 80.0, -80.0);
|
||||
y : array (1 .. 8) of Float :=
|
||||
(80.0, 80.0, -80.0, -80.0, 80.0, 80.0, -80.0, -80.0);
|
||||
z : array (1 .. 8) of Float :=
|
||||
(80.0, 80.0, 80.0, 80.0, -80.0, -80.0, -80.0, -80.0);
|
||||
|
||||
angle : Float := 0.0;
|
||||
scale : Float := 3.0;
|
||||
RAD : Float := 3.14159 / 180.0;
|
||||
SPEED : Float := 2.0;
|
||||
|
||||
Window_Title : constant String := "3DCube demo";
|
||||
quit : Boolean := False;
|
||||
|
||||
use SDL.Video;
|
||||
use type Windows.Window_Flags;
|
||||
use type Renderers.Renderer_Flags;
|
||||
use type SDL.Events.Event_Types;
|
||||
|
||||
Win : Windows.Window;
|
||||
Ren : Renderers.Renderer;
|
||||
Bmp : Surfaces.Surface;
|
||||
Tex : Textures.Texture;
|
||||
|
||||
Event : SDL.Events.Events.Events;
|
||||
Dummy : Boolean;
|
||||
|
||||
---------------------------------
|
||||
-- poll function
|
||||
---------------------------------
|
||||
|
||||
function Poll_Quit return Boolean is
|
||||
use type SDL.Events.Event_Types;
|
||||
begin
|
||||
while SDL.Events.Events.Poll (Event) loop
|
||||
if Event.Common.Event_Type = SDL.Events.Quit then
|
||||
return True;
|
||||
end if;
|
||||
end loop;
|
||||
return False;
|
||||
end Poll_Quit;
|
||||
|
||||
--------------------------------
|
||||
-- initialise SDL
|
||||
--------------------------------
|
||||
procedure initSDL is
|
||||
|
||||
begin
|
||||
|
||||
-- Initialise SDL
|
||||
if not SDL.Initialise or not SDL.Images.Initialise then
|
||||
Ada.Text_IO.Put_Line
|
||||
(Ada.Text_IO.Standard_Error,
|
||||
"SDL.Initialize error: " & SDL.Error.Get);
|
||||
Ada.Command_Line.Set_Exit_Status (Ada.Command_Line.Failure);
|
||||
return;
|
||||
end if;
|
||||
|
||||
-- Create window
|
||||
Windows.Makers.Create
|
||||
(Win,
|
||||
Title => Window_Title,
|
||||
Position =>
|
||||
(Windows.Undefined_Window_Position,
|
||||
Windows.Undefined_Window_Position),
|
||||
Size => (640, 512),
|
||||
Flags => Windows.Shown);
|
||||
|
||||
-- Create renderer
|
||||
Renderers.Makers.Create
|
||||
(Rend => Ren,
|
||||
Window => Win,
|
||||
Flags => (Renderers.Accelerated or Renderers.Present_V_Sync));
|
||||
|
||||
end initSDL;
|
||||
|
||||
-------------------------------
|
||||
-- shutdown routine
|
||||
-------------------------------
|
||||
procedure shutdownSDL is
|
||||
|
||||
begin
|
||||
-- Not really needed since these will soon go out of scope
|
||||
Tex.Finalize; -- texture
|
||||
Ren.Finalize; -- renderer
|
||||
Win.Finalize; -- window
|
||||
SDL.Finalise; -- SDL
|
||||
end shutdownSDL;
|
||||
|
||||
--------------------------------
|
||||
-- rotation & projection routine
|
||||
--------------------------------
|
||||
procedure rotate is
|
||||
|
||||
begin
|
||||
for I in 1 .. 8 loop
|
||||
-- x angle (Roll)
|
||||
xt (I) := x (I);
|
||||
yt (I) := y (I) * Cos (RAD * angle) - z (I) * Sin (RAD * angle);
|
||||
zt (I) := y (I) * Sin (RAD * angle) + z (I) * Cos (RAD * angle);
|
||||
|
||||
-- y angle (Pitch)
|
||||
xu (I) := zt (I) * Sin (RAD * angle) + xt (I) * Cos (RAD * angle);
|
||||
yu (I) := yt (I);
|
||||
zu (I) := xt (I) * (-Sin (RAD * angle)) + zt (I) * Cos (RAD * angle);
|
||||
|
||||
-- z angle (Yaw)
|
||||
xt (I) := xu (I) * Cos (RAD * angle) - yu (I) * Sin (RAD * angle);
|
||||
yt (I) := xu (I) * Sin (RAD * angle) + yu (I) * Cos (RAD * angle);
|
||||
zt (I) := zu (I);
|
||||
|
||||
-- 2d perspective projection
|
||||
xt (I) := (xt (I) * 200.0) / (zt (I) + 800.0) * scale + 160.0;
|
||||
yt (I) := (yt (I) * 200.0) / (zt (I) + 800.0) * scale + 128.0;
|
||||
|
||||
end loop;
|
||||
|
||||
angle := angle + SPEED;
|
||||
|
||||
end rotate;
|
||||
|
||||
-------------------------------
|
||||
-- render cube
|
||||
-------------------------------
|
||||
procedure Render is
|
||||
|
||||
begin
|
||||
Renderers.Set_Draw_Colour (Ren, (0, 0, 40, 255));
|
||||
Renderers.Clear (Ren); -- background
|
||||
|
||||
Renderers.Set_Draw_Colour (Ren, (100, 100, 255, 255)); -- pen
|
||||
|
||||
-- draw cube front face
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (1)), int (yt (1))), (int (xt (2)), int (yt (2)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (2)), int (yt (2))), (int (xt (3)), int (yt (3)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (3)), int (yt (3))), (int (xt (4)), int (yt (4)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (4)), int (yt (4))), (int (xt (1)), int (yt (1)))));
|
||||
|
||||
-- draw cube back face
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (5)), int (yt (5))), (int (xt (6)), int (yt (6)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (6)), int (yt (6))), (int (xt (7)), int (yt (7)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (7)), int (yt (7))), (int (xt (8)), int (yt (8)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (8)), int (yt (8))), (int (xt (5)), int (yt (5)))));
|
||||
|
||||
-- draw cube sides
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (1)), int (yt (1))), (int (xt (5)), int (yt (5)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (2)), int (yt (2))), (int (xt (6)), int (yt (6)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (3)), int (yt (3))), (int (xt (7)), int (yt (7)))));
|
||||
Ren.Draw
|
||||
(Line => ((int (xt (4)), int (yt (4))), (int (xt (8)), int (yt (8)))));
|
||||
|
||||
Renderers.Present (Ren);
|
||||
end Render;
|
||||
|
||||
-------------------------------
|
||||
-- main
|
||||
-------------------------------
|
||||
|
||||
begin
|
||||
Put_Line ("3D cube rotating vector graphic demo");
|
||||
initSDL; -- call initialise SDL
|
||||
Renderers.Set_Scale (Ren, 2.0, 2.0);
|
||||
|
||||
Main :
|
||||
loop
|
||||
rotate; -- call rotate
|
||||
Render; -- call draw
|
||||
quit := Poll_Quit;
|
||||
exit when quit;
|
||||
delay 0.020;
|
||||
end loop Main;
|
||||
|
||||
shutdownSDL;
|
||||
end threed;
|
||||
+316
@@ -0,0 +1,316 @@
|
||||
V "GNAT Lib v13"
|
||||
M P W=b
|
||||
A -gnatA
|
||||
A -mtune=generic
|
||||
A -march=x86-64
|
||||
P SS ZX
|
||||
|
||||
RN
|
||||
RV NO_DELAY
|
||||
RV NO_DIRECT_BOOLEAN_OPERATORS
|
||||
RV NO_EXCEPTION_HANDLERS
|
||||
RV NO_EXCEPTIONS
|
||||
RV NO_FIXED_POINT
|
||||
RV NO_FLOATING_POINT
|
||||
RV NO_IO
|
||||
RV NO_IMPLICIT_CONDITIONALS
|
||||
RV NO_LOCAL_ALLOCATORS
|
||||
RV NO_NESTED_FINALIZATION
|
||||
RV NO_RELATIVE_DELAY
|
||||
RV NO_SECONDARY_STACK
|
||||
RV NO_STANDARD_STORAGE_POOLS
|
||||
RV NO_DEFAULT_INITIALIZATION
|
||||
RV NO_DYNAMIC_SIZED_OBJECTS
|
||||
RV NO_IMPLEMENTATION_PRAGMAS
|
||||
|
||||
U threed%b threed.adb acda4748 NE OO SU IL
|
||||
W ada%s ada.ads ada.ali
|
||||
Z ada.calendar.delays%s a-caldel.adb a-caldel.ali
|
||||
W ada.command_line%s a-comlin.adb a-comlin.ali
|
||||
Z ada.exceptions%s a-except.adb a-except.ali
|
||||
W ada.numerics%s a-numeri.ads a-numeri.ali
|
||||
W ada.numerics.elementary_functions%s a-nuelfu.ads a-nuelfu.ali
|
||||
Z ada.strings.text_buffers%s a-sttebu.adb a-sttebu.ali
|
||||
W ada.text_io%s a-textio.adb a-textio.ali
|
||||
W sdl%s sdl.adb sdl.ali
|
||||
W sdl.error%s sdl-error.adb sdl-error.ali
|
||||
W sdl.events%s sdl-events.ads sdl-events.ali
|
||||
W sdl.events.events%s sdl-events-events.adb sdl-events-events.ali
|
||||
W sdl.images%s sdl-images.adb sdl-images.ali
|
||||
W sdl.images.io%s sdl-images-io.adb sdl-images-io.ali
|
||||
W sdl.video%s sdl-video.adb sdl-video.ali
|
||||
W sdl.video.rectangles%s sdl-video-rectangles.adb sdl-video-rectangles.ali
|
||||
W sdl.video.renderers%s sdl-video-renderers.adb sdl-video-renderers.ali
|
||||
W sdl.video.renderers.makers%s sdl-video-renderers-makers.adb sdl-video-renderers-makers.ali
|
||||
W sdl.video.surfaces%s sdl-video-surfaces.adb sdl-video-surfaces.ali
|
||||
W sdl.video.surfaces.makers%s sdl-video-surfaces-makers.adb sdl-video-surfaces-makers.ali
|
||||
W sdl.video.textures%s sdl-video-textures.adb sdl-video-textures.ali
|
||||
W sdl.video.textures.makers%s sdl-video-textures-makers.adb sdl-video-textures-makers.ali
|
||||
W sdl.video.windows%s sdl-video-windows.adb sdl-video-windows.ali
|
||||
W sdl.video.windows.makers%s sdl-video-windows-makers.adb sdl-video-windows-makers.ali
|
||||
Z system.concat_2%s s-conca2.adb s-conca2.ali
|
||||
Z system.secondary_stack%s s-secsta.adb s-secsta.ali
|
||||
Z system.soft_links%s s-soflin.adb s-soflin.ali
|
||||
Z system.standard_library%s s-stalib.adb s-stalib.ali
|
||||
|
||||
D ada.ads 20230426000000 76789da1 ada%s
|
||||
D a-calend.ads 20230426000000 f55c50a3 ada.calendar%s
|
||||
D a-caldel.ads 20230426000000 9f20b83d ada.calendar.delays%s
|
||||
D a-charac.ads 20230426000000 2d3ec45b ada.characters%s
|
||||
D a-chlat1.ads 20230426000000 e0d72e76 ada.characters.latin_1%s
|
||||
D a-comlin.ads 20230426000000 4aa66568 ada.command_line%s
|
||||
D a-except.ads 20230426000000 2a7d8d70 ada.exceptions%s
|
||||
D a-finali.ads 20230426000000 bf4f806b ada.finalization%s
|
||||
D a-ioexce.ads 20230426000000 40018c65 ada.io_exceptions%s
|
||||
D a-iteint.ads 20230426000000 49a8bee2 ada.iterator_interfaces%s
|
||||
D a-numeri.ads 20230426000000 84bea7a3 ada.numerics%s
|
||||
D a-nuelfu.ads 20230426000000 dc1b3a37 ada.numerics.elementary_functions%s
|
||||
D a-ngelfu.ads 20230426000000 58d8ffc8 ada.numerics.generic_elementary_functions%s
|
||||
D a-stream.ads 20230426000000 119b8fb3 ada.streams%s
|
||||
D a-string.ads 20230426000000 90ac6797 ada.strings%s
|
||||
D a-sttebu.ads 20230426000000 f1ad67a2 ada.strings.text_buffers%s
|
||||
D a-stuten.ads 20230426000000 c6ced0ae ada.strings.utf_encoding%s
|
||||
D a-tags.ads 20230426000000 9eaa38c6 ada.tags%s
|
||||
D a-textio.ads 20230426000000 5c2c6153 ada.text_io%s
|
||||
D a-unccon.ads 20230426000000 0e9b276f ada.unchecked_conversion%s
|
||||
D interfac.ads 20230426000000 15f799c2 interfaces%s
|
||||
D i-c.ads 20230426000000 5c5a6c17 interfaces.c%s
|
||||
D i-cpoint.ads 20230426000000 ee8a93ec interfaces.c.pointers%s
|
||||
D i-cstrin.ads 20230426000000 f40c8db4 interfaces.c.strings%s
|
||||
D i-cstrea.ads 20230426000000 e53d8b8e interfaces.c_streams%s
|
||||
D sdl.ads 20230506025106 327c4872 sdl%s
|
||||
D sdl-c_pointers.ads 20230506025106 6bd5a717 sdl.c_pointers%s
|
||||
D sdl-error.ads 20230506025106 c9d08c30 sdl.error%s
|
||||
D sdl-events.ads 20230506025106 3b4bc05f sdl.events%s
|
||||
D sdl-events-controllers.ads 20230506025106 1204108d sdl.events.controllers%s
|
||||
D sdl-events-events.ads 20230506025106 8e3f142f sdl.events.events%s
|
||||
D sdl-events-files.ads 20230506025106 3aa849f0 sdl.events.files%s
|
||||
D sdl-events-joysticks.ads 20230506025106 dc8cbff2 sdl.events.joysticks%s
|
||||
D sdl-events-keyboards.ads 20230506025220 300c6c02 sdl.events.keyboards%s
|
||||
D sdl-events-mice.ads 20230506025106 dc65745f sdl.events.mice%s
|
||||
D sdl-events-touches.ads 20230506025106 237f7819 sdl.events.touches%s
|
||||
D sdl-events-windows.ads 20230506025106 d0316430 sdl.events.windows%s
|
||||
D sdl-images.ads 20230506025106 3d2b75e5 sdl.images%s
|
||||
D sdl-images-io.ads 20230506025106 c01195b2 sdl.images.io%s
|
||||
D sdl-rwops.ads 20230506025106 687eeedd sdl.rwops%s
|
||||
D sdl-video.ads 20230506025106 e2861aa4 sdl.video%s
|
||||
D sdl-video-displays.ads 20230506025106 3485c755 sdl.video.displays%s
|
||||
D sdl-video-palettes.ads 20230506025106 4706123d sdl.video.palettes%s
|
||||
D sdl-video-pixel_formats.ads 20230506025106 c8b4430e sdl.video.pixel_formats%s
|
||||
D sdl-video-pixels.ads 20230506025106 73ff7ff8 sdl.video.pixels%s
|
||||
D sdl-video-rectangles.ads 20230506025106 c9e2679a sdl.video.rectangles%s
|
||||
D sdl-video-renderers.ads 20230506025106 2a4d8895 sdl.video.renderers%s
|
||||
D sdl-video-renderers-makers.ads 20230506025106 3c3a4e96 sdl.video.renderers.makers%s
|
||||
D sdl-video-surfaces.ads 20230506025106 8d22e69e sdl.video.surfaces%s
|
||||
D sdl-video-surfaces-makers.ads 20230506025106 5c9a932a sdl.video.surfaces.makers%s
|
||||
D sdl-video-textures.ads 20230506025106 a859e8f0 sdl.video.textures%s
|
||||
D sdl-video-textures-makers.ads 20230506025106 b1df1996 sdl.video.textures.makers%s
|
||||
D sdl-video-windows.ads 20230506025106 9a4158ec sdl.video.windows%s
|
||||
D sdl-video-windows-makers.ads 20230506025106 d3172094 sdl.video.windows.makers%s
|
||||
D system.ads 20230426000000 426dafb8 system%s
|
||||
D s-conca2.ads 20230426000000 b5fb73f7 system.concat_2%s
|
||||
D s-crtl.ads 20230426000000 8a0692f8 system.crtl%s
|
||||
D s-exctab.ads 20230426000000 91bef6ef system.exception_table%s
|
||||
D s-ficobl.ads 20230426000000 dc5161d4 system.file_control_block%s
|
||||
D s-finmas.ads 20230426000000 bd688734 system.finalization_masters%s
|
||||
D s-finroo.ads 20230426000000 4ff27390 system.finalization_root%s
|
||||
D s-memory.ads 20230426000000 5b8432d0 system.memory%s
|
||||
D s-parame.ads 20230426000000 d494a4a6 system.parameters%s
|
||||
D s-pooglo.ads 20230426000000 91708d21 system.pool_global%s
|
||||
D s-putima.ads 20230426000000 17291fe4 system.put_images%s
|
||||
D s-retsta.ads 20230426000000 0f6b06cb system.return_stack%s
|
||||
D s-secsta.ads 20230426000000 578279f5 system.secondary_stack%s
|
||||
D s-soflin.ads 20230426000000 df77073e system.soft_links%s
|
||||
D s-stache.ads 20230426000000 0b81c1fe system.stack_checking%s
|
||||
D s-stalib.ads 20230426000000 1c9580f6 system.standard_library%s
|
||||
D s-stalib.adb 20230426000000 eb464a47 system.standard_library%b
|
||||
D s-stoele.ads 20230426000000 ab5468e4 system.storage_elements%s
|
||||
D s-stoele.adb 20230426000000 8f5a9db6 system.storage_elements%b
|
||||
D s-stopoo.ads 20230426000000 e9fa2dd8 system.storage_pools%s
|
||||
D s-stposu.ads 20230426000000 e251976f system.storage_pools.subpools%s
|
||||
D s-stratt.ads 20230426000000 f7dfd786 system.stream_attributes%s
|
||||
D s-traent.ads 20230426000000 c81cbf8c system.traceback_entries%s
|
||||
D s-unstyp.ads 20230426000000 fa2a7f59 system.unsigned_types%s
|
||||
D s-wchcon.ads 20230426000000 d9032363 system.wch_con%s
|
||||
D threed.adb 20230408094738 2a3ff7cd threed%b
|
||||
G a e
|
||||
G c Z b b [threed standard 36 11 none]
|
||||
G r s window [threed standard 36 11 none] [windowIP sdl__video__windows 190 9 none]
|
||||
G r s renderer [threed standard 36 11 none] [rendererIP sdl__video__renderers 132 9 none]
|
||||
G r s surface [threed standard 36 11 none] [surfaceIP sdl__video__surfaces 233 9 none]
|
||||
G r s texture [threed standard 36 11 none] [textureIP sdl__video__textures 112 9 none]
|
||||
G r s events [threed standard 36 11 none] [eventsIP sdl__events__events 60 9 none]
|
||||
G r c none [threed standard 36 11 none] [initialise sdl 102 13 none]
|
||||
G r c none [threed standard 36 11 none] [initialise sdl__images 45 13 none]
|
||||
G r c none [threed standard 36 11 none] [get sdl__error 37 13 none]
|
||||
G r c none [threed standard 36 11 none] [undefined_window_position sdl__video__windows 44 13 none]
|
||||
G r c none [threed standard 36 11 none] [create sdl__video__windows__makers 34 14 none]
|
||||
G r c none [threed standard 36 11 none] [create sdl__video__renderers__makers 39 14 none]
|
||||
G r c none [threed standard 36 11 none] [set_scale sdl__video__renderers 117 14 none]
|
||||
G r c none [threed standard 36 11 none] [set_draw_colour sdl__video__renderers 70 14 none]
|
||||
G r c none [threed standard 36 11 none] [clear sdl__video__renderers 74 14 none]
|
||||
G r c none [threed standard 36 11 none] [draw sdl__video__renderers 100 14 none]
|
||||
G r c none [threed standard 36 11 none] [present sdl__video__renderers 122 14 none]
|
||||
G r c none [threed standard 36 11 none] [poll sdl__events__events 135 13 none]
|
||||
G r e texture [threed standard 36 11 none] [finalize sdl__video__textures 122 14 none]
|
||||
G r e renderer [threed standard 36 11 none] [finalize sdl__video__renderers 64 14 none]
|
||||
G r e window [threed standard 36 11 none] [finalize sdl__video__windows 96 14 none]
|
||||
G r c none [threed standard 36 11 none] [finalise sdl 104 14 none]
|
||||
X 1 ada.ads
|
||||
16K9*Ada 20e8 80|20r6 20r45 21r6 21r45 22r6 22r45 101r10 102r13 104r10 104r44
|
||||
X 6 a-comlin.ads
|
||||
36K13*Command_Line 144e21 80|21w10 21r49 104r14 104r48
|
||||
70I9*Exit_Status<integer>
|
||||
73i4*Failure{70I9} 80|104r61
|
||||
75U14*Set_Exit_Status 80|104s27
|
||||
X 11 a-numeri.ads
|
||||
16K13*Numerics 35e17 80|22r10 22r49
|
||||
X 12 a-nuelfu.ads
|
||||
18K22*Elementary_Functions[13|39] 80|22w19 22r58
|
||||
X 13 a-ngelfu.ads
|
||||
95V13*Sin{float} 80|148s56[12|18] 149s28[12|18] 152s29[12|18] 154s31[12|18]
|
||||
. 157s58[12|18] 158s29[12|18]
|
||||
105V13*Cos{float} 80|148s28[12|18] 149s56[12|18] 152s58[12|18] 154s61[12|18]
|
||||
. 157s29[12|18] 158s58[12|18]
|
||||
X 17 a-stuten.ads
|
||||
59A12*UTF_8_String{string}<integer>
|
||||
X 19 a-textio.ads
|
||||
58K13*Text_IO 787e16 80|20w10 20r49 101r14 102r17
|
||||
66P9*File_Type
|
||||
188V13*Standard_Error{66P9} 80|102s25
|
||||
555U14*Put_Line 80|101s22
|
||||
566U14*Put_Line 80|220s4
|
||||
X 22 i-c.ads
|
||||
57I9*int<integer> 80|184r18 184r32 184r48 184r62 186r18 186r32 186r48 186r62
|
||||
. 188r18 188r32 188r48 188r62 190r18 190r32 190r48 190r62 194r18 194r32 194r48
|
||||
. 194r62 196r18 196r32 196r48 196r62 198r18 198r32 198r48 198r62 200r18 200r32
|
||||
. 200r48 200r62 204r18 204r32 204r48 204r62 206r18 206r32 206r48 206r62 208r18
|
||||
. 208r32 208r48 208r62 210r18 210r32 210r48 210r62
|
||||
X 26 sdl.ads
|
||||
29K9*SDL 139e8 80|24r6 25r6 26r6 27r6 28r6 32r6 33r6 34r6 35r5 64r8 67r13
|
||||
. 74r12 82r16 84r13 85r39 100r14 100r36 103r40 136r7
|
||||
32K12*C=32:33 80|35r9
|
||||
53I12*Coordinate{22|57I9}
|
||||
54I12*Natural_Coordinate{53I12}
|
||||
102V13*Initialise{boolean} 80|100s18
|
||||
104U14*Finalise 80|136s11
|
||||
X 28 sdl-error.ads
|
||||
27K13*Error 38e14 80|34w10 103r44
|
||||
37V13*Get{string} 80|103s50
|
||||
X 29 sdl-events.ads
|
||||
33K13*Events 136e15 80|33r10 67r17 74r16 82r20 84r17 85r43
|
||||
36M9*Event_Types 80|67r24 82r27
|
||||
52m4*Quit{36M9} 80|85r50
|
||||
85m10*Event_Type{36M9} 80|85r26
|
||||
X 31 sdl-events-events.ads
|
||||
36K20*Events 144e22 80|33w17 74r23 84r24
|
||||
60R9*Events 123e18 80|74r30
|
||||
121r16*Common{29|83R9} 80|85r19
|
||||
135V13*Poll{boolean} 80|84s31
|
||||
X 38 sdl-images.ads
|
||||
29K13*Images 57e15 80|32r10 100r40
|
||||
45V13*Initialise{boolean}<26|102p13> 80|100s47
|
||||
X 39 sdl-images-io.ads
|
||||
32K20*IO 52e18 80|32w17
|
||||
X 41 sdl-video.ads
|
||||
29K13*Video 74e14 80|24r10 25r10 26r10 27r10 28r10 64r12
|
||||
X 46 sdl-video-rectangles.ads
|
||||
29K19*Rectangles 82e25 80|28w16
|
||||
X 47 sdl-video-renderers.ads
|
||||
34K19*Renderers 145e24 80|25r16 66r13 70r10 119r7 122r21 122r46 177r7 178r7
|
||||
. 180r7 212r7 222r4
|
||||
41M9*Renderer_Flags 80|66r23
|
||||
46m4*Accelerated{41M9} 80|122r31
|
||||
47m4*Present_V_Sync{41M9} 80|122r56
|
||||
59R9*Renderer<8|50R9> 136e17 80|70r20
|
||||
64U14*Finalize<8|54p14> 80|134s11
|
||||
70U14*Set_Draw_Colour 80|177s17 180s17
|
||||
74U14*Clear 80|178s17
|
||||
100U14*Draw 80|183s11 185s11 187s11 189s11 193s11 195s11 197s11 199s11 203s11
|
||||
. 205s11 207s11 209s11
|
||||
100r44 Line{46|44R9} 80|184r8 186r8 188r8 190r8 194r8 196r8 198r8 200r8 204r8
|
||||
. 206r8 208r8 210r8
|
||||
117U14*Set_Scale 80|222s14
|
||||
122U14*Present 80|212s17
|
||||
X 48 sdl-video-renderers-makers.ads
|
||||
29K29*Makers 50e31 80|25w26 119r17
|
||||
39U14*Create 80|119s24
|
||||
40r7 Rend{47|59R9} 80|120r10
|
||||
41r7 Window{53|89R9} 80|121r10
|
||||
42m7 Flags{47|41M9} 80|122r10
|
||||
X 49 sdl-video-surfaces.ads
|
||||
36K19*Surfaces 242e23 80|26r16 71r10
|
||||
56R9*Surface<8|43R9> 237e17 80|71r19
|
||||
X 50 sdl-video-surfaces-makers.ads
|
||||
29K28*Makers 83e30 80|26w25
|
||||
X 51 sdl-video-textures.ads
|
||||
34K19*Textures 134e23 80|27r16 72r10
|
||||
43R9*Texture<8|50R9> 119e17 80|72r19
|
||||
122U14 Finalize<8|54p14> 80|133s11
|
||||
X 52 sdl-video-textures-makers.ads
|
||||
30K28*Makers 44e30 80|27w25
|
||||
X 53 sdl-video-windows.ads
|
||||
36K19*Windows 208e22 80|24r16 65r13 69r10 109r7 113r13 114r13 116r19
|
||||
44V13*Undefined_Window_Position{26|54I12} 80|113s21 114s21
|
||||
52M9*Window_Flags 80|65r21
|
||||
58m4*Shown{52M9} 80|116r27
|
||||
89R9*Window<8|50R9> 194e17 80|69r18
|
||||
96U14*Finalize<8|54p14> 80|135s11
|
||||
X 54 sdl-video-windows-makers.ads
|
||||
27K27*Makers 56e29 80|24w24 109r15
|
||||
34U14*Create 80|109s22
|
||||
36a7 Title{17|59A12} 80|111r10
|
||||
37r7 Position{26|68R12} 80|112r10
|
||||
38r7 Size{26|93R12} 80|115r10
|
||||
39m7 Flags{53|52M9} 80|116r10
|
||||
X 55 system.ads
|
||||
67M9*Address
|
||||
X 62 s-memory.ads
|
||||
51V13*Alloc{55|67M9} 101i<c,__gnat_malloc>22
|
||||
66U14*Free 102i<c,__gnat_free>22
|
||||
74V13*Realloc{55|67M9} 103i<c,__gnat_realloc>22
|
||||
X 71 s-stalib.adb
|
||||
87U14 Break_Start 88i<c,__gnat_break_start>22
|
||||
X 80 threed.adb
|
||||
36U11*threed 36b11 234l5 234t11
|
||||
40a4 S{string}
|
||||
44a4 xt(float) 147m10 152r49 154r20 157m10 162m10 162r21 184r23 184r53 186r23
|
||||
. 186r53 188r23 188r53 190r23 190r53 194r23 194r53 196r23 196r53 198r23 198r53
|
||||
. 200r23 200r53 204r23 204r53 206r23 206r53 208r23 208r53 210r23 210r53
|
||||
44a8 yt(float) 148m10 153r20 158m10 163m10 163r21 184r37 184r67 186r37 186r67
|
||||
. 188r37 188r67 190r37 190r67 194r37 194r67 196r37 196r67 198r37 198r67 200r37
|
||||
. 200r67 204r37 204r67 206r37 206r67 208r37 208r67 210r37 210r67
|
||||
44a12 zt(float) 149m10 152r20 154r52 159m10 162r40 163r40
|
||||
45a4 xu(float) 152m10 157r20 158r20
|
||||
45a8 yu(float) 153m10 157r49 158r49
|
||||
45a12 zu(float) 154m10 159r20
|
||||
49a4 x(float) 147r20
|
||||
51a4 y(float) 148r20 149r20
|
||||
53a4 z(float) 148r48 149r48
|
||||
56f4 angle{float} 148r39 148r67 149r39 149r67 152r40 152r69 154r42 154r72
|
||||
. 157r40 157r69 158r40 158r69 167m7 167r16
|
||||
57f4 scale{float} 162r58 163r58
|
||||
58f4 RAD{float} 148r33 148r61 149r33 149r61 152r34 152r63 154r36 154r66 157r34
|
||||
. 157r63 158r34 158r63
|
||||
59f4 SPEED{float} 167r24
|
||||
61a4 Window_Title{string} 111r22
|
||||
62b4 quit{boolean} 228m7 229r17
|
||||
69r4 Win{53|89R9} 110m10 110r10 121m20 121r20 135m7 135r7
|
||||
70r4 Ren{47|59R9} 120m20 120r20 134m7 134r7 177m34 177r34 178m24 178r24 180m34
|
||||
. 180r34 183m7 183r7 185m7 185r7 187m7 187r7 189m7 189r7 193m7 193r7 195m7
|
||||
. 195r7 197m7 197r7 199m7 199r7 203m7 203r7 205m7 205r7 207m7 207r7 209m7
|
||||
. 209r7 212r26 222m25 222r25
|
||||
71r4 Bmp{49|56R9}
|
||||
72r4 Tex{51|43R9} 133m7 133r7
|
||||
74r4 Event{31|60R9} 84m37 84r37 85r13
|
||||
75b4 Dummy{boolean}
|
||||
81V13 Poll_Quit{boolean} 81b13 90l8 90t17 228s15
|
||||
95U14 initSDL 95b14 124l8 124t15 221s4
|
||||
129U14 shutdownSDL 129b14 137l8 137t19 233s4
|
||||
142U14 rotate 142b14 169l8 169t14 226s7
|
||||
145i11 I{integer} 147r14 147r23 148r14 148r23 148r51 149r14 149r23 149r51
|
||||
. 152r14 152r24 152r53 153r14 153r24 154r14 154r24 154r56 157r14 157r24 157r53
|
||||
. 158r14 158r24 158r53 159r14 159r24 162r14 162r25 162r44 163r14 163r25 163r44
|
||||
174U14 Render 174b14 213l8 213t14 227s7
|
||||
224l4 Main 231l13 231e17
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
[GENERATED OBJECT FILE]
|
||||
b__threed.o
|
||||
[PROJECT FILES]
|
||||
/home/jason/Projects/Ada/3dc/threed.gpr
|
||||
20230318225743 0663ee68fdcdcea9e21ca9ca03d50775
|
||||
/home/jason/opt/sdlada/share/gpr/sdlada.gpr
|
||||
20230506025901 af41c3ed36798e1c0fec4f1f74bfb120
|
||||
[BOUND OBJECT FILES]
|
||||
/home/jason/Projects/Ada/3dc/threed.o
|
||||
[GENERATED SOURCE FILES]
|
||||
b__threed.ads
|
||||
b__threed.adb
|
||||
b__threed.ali
|
||||
[RESULTING OPTIONS]
|
||||
-L/home/jason/Projects/Ada/3dc/
|
||||
-L/home/jason/Projects/Ada/3dc/
|
||||
-L/home/jason/opt/sdlada/lib/sdlada.release/
|
||||
-L/usr/lib/gcc/x86_64-redhat-linux/13/adalib/
|
||||
-static
|
||||
/usr/lib/gcc/x86_64-redhat-linux/13/adalib/libgnat.a
|
||||
-lm
|
||||
-ldl
|
||||
@@ -0,0 +1,5 @@
|
||||
with "/home/jason/opt/sdlada/share/gpr/sdlada.gpr";
|
||||
|
||||
project threed is
|
||||
for Main use ("threed.adb");
|
||||
end threed;
|
||||
+12166
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user