Add tools set

This commit is contained in:
Yourtion
2014-09-04 15:36:35 +08:00
commit 9b5e6f0ced
107 changed files with 2646 additions and 0 deletions

340
tolset/GPL.txt Normal file
View File

@@ -0,0 +1,340 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) 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
this service 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 make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. 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.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute 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 and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
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
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the 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 a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, 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.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE 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.
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
convey 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 2 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, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision 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, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This 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 Library General
Public License instead of this License.

504
tolset/LGPL.txt Normal file
View File

@@ -0,0 +1,504 @@
GNU LESSER GENERAL PUBLIC LICENSE
Version 2.1, February 1999
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
[This is the first released version of the Lesser GPL. It also counts
as the successor of the GNU Library Public License, version 2, hence
the version number 2.1.]
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
Licenses are intended to guarantee your freedom to share and change
free software--to make sure the software is free for all its users.
This license, the Lesser General Public License, applies to some
specially designated software packages--typically libraries--of the
Free Software Foundation and other authors who decide to use it. You
can use it too, but we suggest you first think carefully about whether
this license or the ordinary General Public License is the better
strategy to use in any particular case, based on the explanations below.
When we speak of free software, we are referring to freedom of use,
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 this service if you wish); that you receive source code or can get
it if you want it; that you can change the software and use pieces of
it in new free programs; and that you are informed that you can do
these things.
To protect your rights, we need to make restrictions that forbid
distributors to deny you these rights or to ask you to surrender these
rights. These restrictions translate to certain responsibilities for
you if you distribute copies of the library or if you modify it.
For example, if you distribute copies of the library, whether gratis
or for a fee, you must give the recipients all the rights that we gave
you. You must make sure that they, too, receive or can get the source
code. If you link other code with the library, you must provide
complete object files to the recipients, so that they can relink them
with the library after making changes to the library and recompiling
it. And you must show them these terms so they know their rights.
We protect your rights with a two-step method: (1) we copyright the
library, and (2) we offer you this license, which gives you legal
permission to copy, distribute and/or modify the library.
To protect each distributor, we want to make it very clear that
there is no warranty for the free library. Also, if the library is
modified by someone else and passed on, the recipients should know
that what they have is not the original version, so that the original
author's reputation will not be affected by problems that might be
introduced by others.
Finally, software patents pose a constant threat to the existence of
any free program. We wish to make sure that a company cannot
effectively restrict the users of a free program by obtaining a
restrictive license from a patent holder. Therefore, we insist that
any patent license obtained for a version of the library must be
consistent with the full freedom of use specified in this license.
Most GNU software, including some libraries, is covered by the
ordinary GNU General Public License. This license, the GNU Lesser
General Public License, applies to certain designated libraries, and
is quite different from the ordinary General Public License. We use
this license for certain libraries in order to permit linking those
libraries into non-free programs.
When a program is linked with a library, whether statically or using
a shared library, the combination of the two is legally speaking a
combined work, a derivative of the original library. The ordinary
General Public License therefore permits such linking only if the
entire combination fits its criteria of freedom. The Lesser General
Public License permits more lax criteria for linking other code with
the library.
We call this license the "Lesser" General Public License because it
does Less to protect the user's freedom than the ordinary General
Public License. It also provides other free software developers Less
of an advantage over competing non-free programs. These disadvantages
are the reason we use the ordinary General Public License for many
libraries. However, the Lesser license provides advantages in certain
special circumstances.
For example, on rare occasions, there may be a special need to
encourage the widest possible use of a certain library, so that it becomes
a de-facto standard. To achieve this, non-free programs must be
allowed to use the library. A more frequent case is that a free
library does the same job as widely used non-free libraries. In this
case, there is little to gain by limiting the free library to free
software only, so we use the Lesser General Public License.
In other cases, permission to use a particular library in non-free
programs enables a greater number of people to use a large body of
free software. For example, permission to use the GNU C Library in
non-free programs enables many more people to use the whole GNU
operating system, as well as its variant, the GNU/Linux operating
system.
Although the Lesser General Public License is Less protective of the
users' freedom, it does ensure that the user of a program that is
linked with the Library has the freedom and the wherewithal to run
that program using a modified version of the Library.
The precise terms and conditions for copying, distribution and
modification follow. Pay close attention to the difference between a
"work based on the library" and a "work that uses the library". The
former contains code derived from the library, whereas the latter must
be combined with the library in order to run.
GNU LESSER GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License Agreement applies to any software library or other
program which contains a notice placed by the copyright holder or
other authorized party saying it may be distributed under the terms of
this Lesser General Public License (also called "this License").
Each licensee is addressed as "you".
A "library" means a collection of software functions and/or data
prepared so as to be conveniently linked with application programs
(which use some of those functions and data) to form executables.
The "Library", below, refers to any such software library or work
which has been distributed under these terms. A "work based on the
Library" means either the Library or any derivative work under
copyright law: that is to say, a work containing the Library or a
portion of it, either verbatim or with modifications and/or translated
straightforwardly into another language. (Hereinafter, translation is
included without limitation in the term "modification".)
"Source code" for a work means the preferred form of the work for
making modifications to it. For a library, complete source code means
all the source code for all modules it contains, plus any associated
interface definition files, plus the scripts used to control compilation
and installation of the library.
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running a program using the Library is not restricted, and output from
such a program is covered only if its contents constitute a work based
on the Library (independent of the use of the Library in a tool for
writing it). Whether that is true depends on what the Library does
and what the program that uses the Library does.
1. You may copy and distribute verbatim copies of the Library's
complete source code as you receive it, in any medium, provided that
you conspicuously and appropriately publish on each copy an
appropriate copyright notice and disclaimer of warranty; keep intact
all the notices that refer to this License and to the absence of any
warranty; and distribute a copy of this License along with the
Library.
You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.
2. You may modify your copy or copies of the Library or any portion
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) The modified work must itself be a software library.
b) You must cause the files modified to carry prominent notices
stating that you changed the files and the date of any change.
c) You must cause the whole of the work to be licensed at no
charge to all third parties under the terms of this License.
d) If a facility in the modified Library refers to a function or a
table of data to be supplied by an application program that uses
the facility, other than as an argument passed when the facility
is invoked, then you must make a good faith effort to ensure that,
in the event an application does not supply such function or
table, the facility still operates, and performs whatever part of
its purpose remains meaningful.
(For example, a function in a library to compute square roots has
a purpose that is entirely well-defined independent of the
application. Therefore, Subsection 2d requires that any
application-supplied function or table used by this function must
be optional: if the application does not supply it, the square
root function must still compute square roots.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Library,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Library, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote
it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Library.
In addition, mere aggregation of another work not based on the Library
with the Library (or with a work based on the Library) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library. To do
this, you must alter all the notices that refer to this License, so
that they refer to the ordinary GNU General Public License, version 2,
instead of to this License. (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.) Do not make any other change in
these notices.
Once this change is made in a given copy, it is irreversible for
that copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.
This option is useful when you wish to copy part of the code of
the Library into a program that is not a library.
4. You may copy and distribute the Library (or a portion or
derivative of it, under Section 2) in object code or executable form
under the terms of Sections 1 and 2 above provided that you accompany
it with the complete corresponding machine-readable source code, which
must be distributed under the terms of Sections 1 and 2 above on a
medium customarily used for software interchange.
If distribution of object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the
source code from the same place satisfies the requirement to
distribute the source code, even though third parties are not
compelled to copy the source along with the object code.
5. A program that contains no derivative of any portion of the
Library, but is designed to work with the Library by being compiled or
linked with it, is called a "work that uses the Library". Such a
work, in isolation, is not a derivative work of the Library, and
therefore falls outside the scope of this License.
However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because it
contains portions of the Library), rather than a "work that uses the
library". The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.
When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library. The
threshold for this to be true is not precisely defined by law.
If such an object file uses only numerical parameters, data
structure layouts and accessors, and small macros and small inline
functions (ten lines or less in length), then the use of the object
file is unrestricted, regardless of whether it is legally a derivative
work. (Executables containing this object code plus portions of the
Library will still fall under Section 6.)
Otherwise, if the work is a derivative of the Library, you may
distribute the object code for the work under the terms of Section 6.
Any executables containing that work also fall under Section 6,
whether or not they are linked directly with the Library itself.
6. As an exception to the Sections above, you may also combine or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
under terms of your choice, provided that the terms permit
modification of the work for the customer's own use and reverse
engineering for debugging such modifications.
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work
during execution displays copyright notices, you must include the
copyright notice for the Library among them, as well as a reference
directing the user to the copy of this License. Also, you must do one
of these things:
a) Accompany the work with the complete corresponding
machine-readable source code for the Library including whatever
changes were used in the work (which must be distributed under
Sections 1 and 2 above); and, if the work is an executable linked
with the Library, with the complete machine-readable "work that
uses the Library", as object code and/or source code, so that the
user can modify the Library and then relink to produce a modified
executable containing the modified Library. (It is understood
that the user who changes the contents of definitions files in the
Library will not necessarily be able to recompile the application
to use the modified definitions.)
b) Use a suitable shared library mechanism for linking with the
Library. A suitable mechanism is one that (1) uses at run time a
copy of the library already present on the user's computer system,
rather than copying library functions into the executable, and (2)
will operate properly with a modified version of the library, if
the user installs one, as long as the modified version is
interface-compatible with the version that the work was made with.
c) Accompany the work with a written offer, valid for at
least three years, to give the same user the materials
specified in Subsection 6a, above, for a charge no more
than the cost of performing this distribution.
d) If distribution of the work is made by offering access to copy
from a designated place, offer equivalent access to copy the above
specified materials from the same place.
e) Verify that the user has already received a copy of these
materials or that you have already sent this user a copy.
For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it. However, as a special exception,
the materials to be distributed need not include anything that is
normally distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on
which the executable runs, unless that component itself accompanies
the executable.
It may happen that this requirement contradicts the license
restrictions of other proprietary libraries that do not normally
accompany the operating system. Such a contradiction means you cannot
use both them and the Library together in an executable that you
distribute.
7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
library, provided that the separate distribution of the work based on
the Library and of the other library facilities is otherwise
permitted, and provided that you do these two things:
a) Accompany the combined library with a copy of the same work
based on the Library, uncombined with any other library
facilities. This must be distributed under the terms of the
Sections above.
b) Give prominent notice with the combined library of the fact
that part of it is a work based on the Library, and explaining
where to find the accompanying uncombined form of the same work.
8. You may not copy, modify, sublicense, link with, or distribute
the Library except as expressly provided under this License. Any
attempt otherwise to copy, modify, sublicense, link with, or
distribute the Library is void, and will automatically terminate your
rights under this License. However, parties who have received copies,
or rights, from you under this License will not have their licenses
terminated so long as such parties remain in full compliance.
9. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Library or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Library or works based on it.
10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties with
this License.
11. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
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
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Library at all. For example, if a patent
license would not permit royalty-free redistribution of the Library by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Library.
If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply,
and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
12. If the distribution and/or use of the Library is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Library under this License may add
an explicit geographical distribution limitation excluding those countries,
so that distribution is permitted only in or among countries not thus
excluded. In such case, this License incorporates the limitation as if
written in the body of this License.
13. The Free Software Foundation may publish revised and/or new
versions of the Lesser 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 Library
specifies a version number of this License which applies to it and
"any later version", you have the option of following the terms and
conditions either of that version or of any later version published by
the Free Software Foundation. If the Library does not specify a
license version number, you may choose any version ever published by
the Free Software Foundation.
14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission. For software which is
copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this. Our
decision will be guided by the two goals of preserving the free status
of all derivatives of our free software and of promoting the sharing
and reuse of software generally.
NO WARRANTY
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
OTHER PARTIES PROVIDE THE LIBRARY "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
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
AND/OR REDISTRIBUTE THE LIBRARY 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
LIBRARY (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 LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Libraries
If you develop a new library, and you want it to be of the greatest
possible use to the public, we recommend making it free software that
everyone can redistribute and change. You can do so by permitting
redistribution under these terms (or, alternatively, under the terms of the
ordinary General Public License).
To apply these terms, attach the following notices to the library. It is
safest to attach them to the start of each source file to most effectively
convey 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 library's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library 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
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Also add information on how to contact you by electronic and paper mail.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the library, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the
library `Frob' (a library for tweaking knobs) written by James Random Hacker.
<signature of Ty Coon>, 1 April 1990
Ty Coon, President of Vice
That's all there is to it!

98
tolset/license.txt Normal file
View File

@@ -0,0 +1,98 @@
川合堂许可协议-01 ver.1.0
2000.12.30 H.Kawai (川合秀实)
0.概要
通俗地说:“这是自由软件,使用前使用后都无须支付任何费用,可以自由使用,也可以
复制、修改以及用于商业目的但是作者对软件的bug以及因此所造成的损失不负任何责
任。”
为了保护软件使用者以及软件修改者、参考者的利益,即便作者将来为该软件中所使用的
算法申请专利,也保证不会向使用者收取授权费用。
1.目的
适用于本协议的软件,旨在为公众带来利益,以及为软件技术的进步做出贡献。
2.宗旨
本协议并不代表作者放弃著作权(仅放弃独家复制发布的权利),使用者可以自由复制并
再次发布本软件的一部分甚至全部内容。使用时无须支付任何费用,对本软件的解析、修改
也无须支付任何费用。
适用于本协议的软件,可以无条件地用作商业目的,甚至可以将软件直接有偿出售。
对于以适用于本协议的软件的一部分或全部内容为基础,在此之上所开发的软件(下称“
派生物”),可以赋予任何种类的许可协议。即,派生物的作者可以禁止对派生物进行复制,
也可以只允许派生物以有偿形式发布。派生物的著作权属于该派生物的生成者,适用于本协
议的软件作者不会对其派生物主张著作权。
在派生物的文档中,没有义务对原始软件的作者进行介绍,但这句话,理所当然地,不意
味着禁止这一行为。
在发布派生物时,没有义务取得原始软件作者的同意,但这句话,理所当然地,不意味着
禁止这一行为。
作者不对软件的质量作出任何保证,因此,由于使用本软件所造成的损害,或者没有达到
所期望的结果,作者不负任何责任。
对于适用于本协议的软件中所使用的技术,除了事先取得作者授权的人以外,禁止其他人
对其申请专利。但如果附加了新的技术并生成了派生物,允许对于追加的部分申请专利。作
者在将来有可能对软件中的技术申请专利,但保证不会向派生物以及软件的使用收取授权费
用。本保证不仅适用于申请专利之前所生成的派生物,也适用于专利取得后所生成的派生物。
将解析结果汇总并申请专利,需要事先取得作者的同意,但对于申请专利以外的行为,没
有任何限制。
3.补充
基本上,作者十分欢迎复制本软件。如果要表示对作者的感谢,请将本软件推荐给更多的
人,并复制给他们使用。作者希望有更多的人使用本软件,因此对于复制的行为非常支持。
除此之外,如果可以将使用后的感想发给作者,作者一定会感到更加高兴。
对于本协议所授权的软件,仅修改著作权信息并再次发布的行为,本协议并没有禁止,而
是作为派生物来处理。这并不是一个漏洞。因此,如果你认为有必要仅修改著作权信息并再
次发布本软件,是完全可以这样做的。
除了修复bug、增加新功能等修改行为以外对于为代码添加注释增加易读性、对文档进行
补充等,不会反映在编译产物及运行结果上的修改也同样欢迎。如果生成了这样的派生物,
欢迎和作者联系(但这并不是义务)。
如果你有任何疑问,或者对于制作派生物方面感到缺少某些信息,可以向作者提问。但是,
受作者精力所限可能无法一一进行回复,请大家谅解。对于协议本身漏洞的指摘,请联系作
者或川合堂。
也许,对于本协议所授权的软件中所使用的技术,禁止未经作者允许申请专利这一点,和
日本的专利法是向抵触的(希望大家提出自己的见解)。对此,最初提出本协议的川合秀实
的见解如下。
指定专利法的背景,是因为如果发明者为了保护自己发明所带来的利益,而拒绝将发明的
详情公开,会阻碍科学技术的进步,因此在法律上对于其所公开的内容,在一定时间内给予
独家使用的保护,这是专利法的精神所在。在本协议中,作者并没有故意隐藏发明的详细内
容,因此即便禁止对其申请专利我认为也不违背专利法的精神。相反,不理解本协议精神的
人,如果申请了专利并对原创的软件及派生物收取授权费用,这种担心反倒阻碍了科学技术
的进步。因此,本协议的目的是事先消除这种担心,我认为和专利法是不抵触的。
当然,最稳妥的做法是,作者对原创软件中可以被认作发明的全部内容申请并取得专利,
事前防止其他人来取得相关的专利,但是这对于作者来说负担很大。申请专利的负担和是否
公开软件内容之间必须要有所取舍的话,可能有些人会放弃公开软件内容。这并不是专利法
精神所期待的,也不符合我们的目的(参见“1.目的”)。
此外,当发明的详细内容由于专利法的形式限制没有记述并明确的,由作者以外的人在未
经许可的情况下将其解析并明确的行为,在本协议中是允许的。对于这部分内容,可以无偿
公开,也可以有偿出售。
不过,对于协议所授权的软件中的所有技术,并不能保证在使用时完全避免支付授权费用
的可能性。如果在发布的时间点仍然有效的专利技术,在软件中被使用的话,该专利的所有
者可以要求支付授权费用。本协议所保证的不收取专利授权费用,是针对软件内被认为是新
发明的那一部分技术。
如果需要将本协议适用于自己开发的软件,在事前事后均无须经过作者同意,可任意使用。
如果有任何不方便之处,可以对协议文本进行修改。如需修改协议文本,为了避免歧义,请
同时修改协议的名称。
4.链接
川合堂URL http://www.imasy.org/~mone/kawaido/
川合秀实URL http://www.imasy.org/~kawai/
e-mail kawai@imasy.org

View File

@@ -0,0 +1 @@
command

View File

@@ -0,0 +1 @@
cmd.exe

22
tolset/z_new_o/Makefile Normal file
View File

@@ -0,0 +1,22 @@
TARGET =
MODE = bin
STACKSIZE = 64k
MALLOCSIZE = 256k
MMAREA = 0
OBJS = $(TARGET).obj
INCPATH = ../z_tools/guigui00/
CC1OPT =
BIMOPT0 = -v48a
BIMOPT1 = -tek5 clv:5 eopt: eprm:
ARCFLIES =
ARCORG =
ARCTEK =
BIMOPT2 =
include ../z_tools/com_mak.txt
# OBJSを書き換えると分割コンパイル対応
# tolset08対応Makefile

1
tolset/z_new_o/make.bat Normal file
View File

@@ -0,0 +1 @@
..\z_tools\make.exe %1 %2 %3 %4 %5 %6 %7 %8 %9

View File

@@ -0,0 +1 @@
command

View File

@@ -0,0 +1 @@
cmd.exe

10
tolset/z_new_w/Makefile Normal file
View File

@@ -0,0 +1,10 @@
TARGET =
MODE = exe
OBJS = $(TARGET).obj
STACKSIZE = 0x1000000 # 16MB (default)
INCPATH = ../z_tools/win32/
CC1OPT = -Dmain=main0
include ../z_tools/com_mak.txt
# tolset08ΉžMakefile

1
tolset/z_new_w/make.bat Normal file
View File

@@ -0,0 +1 @@
..\z_tools\make.exe %1 %2 %3 %4 %5 %6 %7 %8 %9

View File

@@ -0,0 +1 @@
command

View File

@@ -0,0 +1 @@
cmd.exe

View File

@@ -0,0 +1,8 @@
opt imgin:../z_tools/osa_qemu/osaimgqe.bin
/*
copy from:../z_tools/OSASK0.PSF to:@:
copy from:helloc4.bin to:@:
*/
opt imgout:../z_tools/qemu/fdimage0.bin

17
tolset/z_osabin/run.bat Normal file
View File

@@ -0,0 +1,17 @@
@echo off
..\z_tools\make.exe -r -C ../z_tools/osa_qemu
if %1.==. goto def_opt
if %1.==.. goto no_opt
copy %1.bin ..\z_tools\!built.bin
..\z_tools\edimg.exe @../z_tools/edimgopt.txt
if errorlevel 1 goto end
goto qemu
:def_opt
..\z_tools\edimg.exe @!run_opt.txt
if errorlevel 1 goto end
goto qemu
:no_opt
copy ..\z_tools\osa_qemu\osaimgqe.bin ..\z_tools\qemu\fdimage0.bin
:qemu
..\z_tools\make.exe -r -C ../z_tools/qemu
:end

View File

@@ -0,0 +1,2 @@
setvesa 3 0x114
mouseaccel 1 1

BIN
tolset/z_tools/aksa.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/aska.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/bim2bin.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/bim2hrb.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/bin2obj.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/cc1.exe Normal file

Binary file not shown.

View File

@@ -0,0 +1,89 @@
TOOLPATH = ../z_tools/
RULEFILE = ../z_tools/guigui00/guigui00.rul
MAKE = $(TOOLPATH)make.exe -r
SJISCONV = $(TOOLPATH)sjisconv.exe -s
CC1 = $(TOOLPATH)cc1.exe -I$(INCPATH) $(CC1OPT) -Os -Wall -quiet
GAS2NASK = $(TOOLPATH)gas2nask.exe -a
NASK = $(TOOLPATH)nask.exe
OBJ2BIM = $(TOOLPATH)obj2bim.exe
BIM2BIN = $(TOOLPATH)bim2bin.exe
CPP0 = $(TOOLPATH)cpp0.exe -P -I$(INCPATH)
ASKA = $(TOOLPATH)aska.exe
NASKCNV = $(TOOLPATH)naskcnv0.exe -l -s -w
GOLIB = $(TOOLPATH)golib00.exe
LINK = $(TOOLPATH)ld.exe -s -Bdynamic --stack $(STACKSIZE)
EDIMG = $(TOOLPATH)edimg.exe
SARTOL = $(TOOLPATH)sartol.exe
DELE = del
COPY = copy
LIBPATH = $(INCPATH)
LIBS = $(LIBPATH)w32clibc.lib $(LIBPATH)golibc.lib $(LIBPATH)libmingw.lib
# 以上の項目はあなたのディレクトリ構成にあわせて書き換える
ALL:
$(MAKE) $(TARGET).$(MODE)
%.ca : %.c Makefile
$(SJISCONV) $*.c $*.ca
%.gas : %.ca Makefile
$(CC1) -o $*.gas $*.ca
%.nas : %.gas Makefile
$(GAS2NASK) $*.gas $*.nas
%.obj : %.nas Makefile
$(NASK) $*.nas $*.obj
%.ias : %.ask Makefile
$(CPP0) -o $*.ias $*.ask
%.3as : %.ias Makefile
$(ASKA) $*.ias $*.3as
%.nas : %.3as Makefile
$(NASKCNV) $*.3as $*.nas
%.lst : %.nas Makefile
$(NASK) $*.nas $*.obj $*.lst
$(TARGET).bim : $(OBJS) Makefile
$(OBJ2BIM) @$(RULEFILE) out:$(TARGET).bim stack:$(STACKSIZE) map:$(TARGET).map $(OBJS)
%.bin : %.bim Makefile
$(BIM2BIN) in:$*.bim out:$*.org malloc:$(MALLOCSIZE) mmarea:$(MMAREA) $(BIMOPT0)
$(BIM2BIN) -osacmp in:$*.org out:$*.bin $(BIMOPT1)
$(TARGET).lib : $(OBJS) Makefile
$(GOLIB) out:$@ $(OBJS)
$(TARGET).dll : $(TARGET).bim Makefile
$(OBJ2BIM) @$(RULEFILE) out:$(TARGET).bim map:$(TARGET).map $(OBJS)
$(BIM2BIN) -osacmp -tek1 in:$(TARGET).bim out:$(TARGET).dll
$(TARGET).exe : $(OBJS) Makefile
$(LINK) -o $(TARGET).exe -Map $(TARGET).map $(OBJS) $(LIBS)
clean :
-$(DELE) *.obj
-$(DELE) $(TARGET).bim
-$(DELE) $(TARGET).map
-$(DELE) $(TARGET).org
run :
$(MAKE) $(TARGET).$(MODE)
$(COPY) $(TARGET).$(MODE) ..\z_tools\!built.bin
$(MAKE) -C $(TOOLPATH)osa_qemu
$(EDIMG) @$(TOOLPATH)edimgopt.txt $(EDIMGOPT) imgout:../z_tools/qemu/fdimage0.bin
$(MAKE) -C $(TOOLPATH)qemu
arc :
$(MAKE) $(TARGET).$(MODE)
$(SARTOL) e $(ARCORG) . @-4k ARCINFO0.TXT $(ARCFLIES)
$(BIM2BIN) -osacmp in:$(ARCORG) out:$(ARCTEK) $(BIMOPT2)
src_only :
$(MAKE) clean
-$(DELE) $(TARGET).$(MODE)

BIN
tolset/z_tools/comcom.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/cpp0.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/doscmd.exe Normal file

Binary file not shown.

23
tolset/z_tools/dsar.bat Normal file
View File

@@ -0,0 +1,23 @@
@echo off
set dsar_sartol=sartol.exe
set dsar_bpath="%USERPROFILE%/デスクトップ/"
set dsar_autorun="%SystemRoot%\explorer.exe"
rem -例-
rem set dsar_bpath="%USERPROFILE%/デスクトップ/"
rem set dsar_bpath="%USERPROFILE%/デスクトップ"
rem set dsar_bpath=..@arcpath/
rem set dsar_bpath=..@arcpath
rem -例-
rem set dsar_autorun="%SystemRoot%\explorer.exe"
rem set dsar_autorun=
rem 注意dsar_bpathではパスの区切りに\を使うこと
:loop
if %1.==. goto end
%dsar_sartol% d %1 %dsar_bpath% %dsar_autorun%
shift
goto loop
:end

BIN
tolset/z_tools/edimg.exe Normal file

Binary file not shown.

View File

@@ -0,0 +1,5 @@
opt imgin:../z_tools/osa_qemu/osaimgqe.bin
copy from:../z_tools/OSASK0.PSF to:@:
copy from:../z_tools/!built.bin to:@:
opt imgout:../z_tools/qemu/fdimage0.bin

19
tolset/z_tools/esart5.bat Normal file
View File

@@ -0,0 +1,19 @@
@echo off
set esar_sartol=sartol.exe
set esar_bim2bin=bim2bin.exe
set esar_wce=wce.exe
if exist %1.sar goto end
if %2.==. goto all
%esar_wce% %esar_sartol% e %1.sar %1 !1 #b=%1 %2 %3 %4 %5 %6 %7 %8 %9
goto tek5
:all
%esar_wce% %esar_sartol% e %1.sar %1 !1 #b=%1 *
:tek5
%esar_wce% %esar_bim2bin% -osacmp -tek5 in:%1.sar out:%1.sar
:end

BIN
tolset/z_tools/fdimg0at.tek Normal file

Binary file not shown.

BIN
tolset/z_tools/fdimg0tw.tek Normal file

Binary file not shown.

BIN
tolset/z_tools/gas2nask.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/golib00.exe Normal file

Binary file not shown.

View File

@@ -0,0 +1,20 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(ERRNO_H))
#define ERRNO_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
extern int errno;
#define ENOENT 2 /* No such file or directory */
#define ERANGE 34 /* Result too large (or too small) */
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,26 @@
/* copyright(C) 2002 H.Kawai (under KL-01). */
#if (!defined(FLOAT_H))
#define FLOAT_H 1
#define FLT_RADIX 2
#define FLT_ROUNDS 1 /* nearest */
#define FLT_DIG 6
#define FLT_EPSILON 1.19209290e-07F
#define FLT_MANT_DIG 24
#define FLT_MAX 3.40282347e+38F
#define FLT_MAX_EXP (+128)
#define FLT_MIN 1.17549435e-38F
#define FLT_MIN_EXP (-125)
#define DBL_DIG 15
#define DBL_EPSILON 2.2204460492503131e-16
#define DBL_MANT_DIG 53
#define DBL_MAX 1.7976931348623157e+308
#define DBL_MAX_EXP 1024
#define DBL_MIN 2.2250738585072014e-308
#define DBL_MIN_EXP (-1021)
#endif

Binary file not shown.

View File

@@ -0,0 +1,20 @@
format:
/* このセクションでリンクの方針を記述 */
code(align:1, logic:0x48, file:0x48);
data(align:4, logic:stack_end, file:code_end);
file:
/* このセクションでコマンドラインに書ききれなかった
.objファイル、.libファイルを記載 */
/* なお、このセクションはフルパスで書いてもよい。 */
/* 例: c:/osask/gg00libc.lib; */
../z_tools/guigui00/gg00libc.lib;
../z_tools/guigui00/golibc.lib;
label:
/* 必ずリンクしなければいけないラベルを指定 */
/* エントリポイントを指定すればいいと思ってください */
_main;
/* 上記3セクションの順序は入れ替えてはいけません! */

Binary file not shown.

View File

@@ -0,0 +1,586 @@
#ifndef __GUIGUI00_H
#define __GUIGUI00_H
/* gg00lib+ ver.0.8 */
/* gg00lib9をベースにしている */
struct LIB_WORK {
int data[256 / 4];
};
struct LIB_WINDOW {
int data[128 / 4];
};
struct LIB_TEXTBOX {
int data[64 / 4];
};
struct LIB_SIGHNDLREG {
int ES, DS, FS, GS;
int EDI, ESI, EBP, ESP;
int EBX, EDX, ECX, EAX;
int EIP, CS, EFLAGS;
};
struct LIB_GRAPHBOX {
int reserve[64 / 4];
};
struct LIB_LINES1 {
int x0, y0, dx, dy, length, color;
};
struct LIB_LINES0 {
int x0, y0, x1, y1, dummy, color;
};
struct LIB_POINTS {
int x, y, color;
};
//void lib_execcmd(void *EBX);
extern __inline__ void lib_execcmd(void *EBX)
{
__asm__ (" .byte 154 \n\t"
" .byte 0 \n\t"
" .byte 0 \n\t"
" .byte 0 \n\t"
" .byte 0 \n\t"
" .byte 199 \n\t"
" .byte 0 \n\t"
: : "b" (EBX) );
}
void lib_execcmd0(int cmd, ...);
#if 0
extern __inline__ void lib_execcmd0(int cmd, ...)
{
__asm__ (" movl %%esp,%%ebx \n\t"
" .byte 154 \n\t"
" .byte 0 \n\t"
" .byte 0 \n\t"
" .byte 0 \n\t"
" .byte 0 \n\t"
" .byte 199 \n\t"
" .byte 0 \n\t"
: : : "%ebx");
}
#endif
int lib_execcmd1(int ret, int cmd, ...);
int lib_execcmd2(int ret, int cmd, ...);
void *malloc(const unsigned int nbytes);
#if 0
/* 以下の関数はマクロで実現されている(高速化とコンパクト化のため) */
/* 引数の型などが分かりやすいように、関数型宣言を註釈として残してある */
struct LIB_WORK *lib_init(struct LIB_WORK *work);
void lib_init_nm(struct LIB_WORK *work);
struct LIB_WORK *lib_init_am(struct LIB_WORK *work);
void lib_waitsignal(int opt, int signaldw, int nest);
struct LIB_WINDOW *lib_openwindow(struct LIB_WINDOW *window, int slot, int x_size, int y_size);
void lib_openwindow_nm(struct LIB_WINDOW *window, int slot, int x_size, int y_size);
void lib_openwindow_am(struct LIB_WINDOW *window, int slot, int x_size, int y_size);
struct LIB_TEXTBOX *lib_opentextbox(int opt, struct LIB_TEXTBOX *textbox, int backcolor,
int x_size, int y_size, int x_pos, int y_pos, struct LIB_WINDOW *window, int charset,
int init_char);
void lib_opentextbox_nm(int opt, struct LIB_TEXTBOX *textbox, int backcolor, int x_size,
int y_size, int x_pos, int y_pos, struct LIB_WINDOW *window, int charset, int init_char);
void lib_opentextbox_am(int opt, struct LIB_TEXTBOX *textbox, int backcolor, int x_size,
int y_size, int x_pos, int y_pos, struct LIB_WINDOW *window, int charset, int init_char);
void lib_waitsignaltime(int opt, int signaldw, int nest, unsigned int time0, unsigned int time1,
unsigned int time2);
int *lib_opensignalbox(int bytes, int *signalbox, int eos, int rewind);
void lib_opensignalbox_nm(int bytes, int *signalbox, int eos, int rewind);
int *lib_opensignalbox_am(int bytes, int *signalbox, int eos, int rewind);
void lib_definesignal0p0(int opt, int default_assign0, int default_assign1, int default_assign2);
void lib_definesignal1p0(int opt, int default_assign0, int default_assign1,
struct LIB_WINDOW *default_assign2, int signal);
void lib_opentimer(int slot);
void lib_closetimer(int slot);
void lib_settimertime(int opt, int slot, unsigned int time0, unsigned int time1,
unsigned int time2);
void lib_settimer(int opt, int slot);
void lib_opensoundtrack(int slot);
void lib_controlfreq(int slot, int freq);
struct LIB_WINDOW *lib_openwindow1(struct LIB_WINDOW *window, int slot, int x_size, int y_size,
int flags, int base);
void lib_openwindow1_nm(struct LIB_WINDOW *window, int slot, int x_size, int y_size, int flags,
int base);
void lib_openwindow1_am(struct LIB_WINDOW *window, int slot, int x_size, int y_size, int flags,
int base);
void lib_closewindow(int opt, struct LIB_WINDOW *window);
void lib_controlwindow(int opt, struct LIB_WINDOW *window);
void lib_close(int opt);
void lib_loadfontset(int opt, int slot, int len, void *font);
void lib_loadfontset0(int opt, int slot);
void lib_makecharset(int opt, int charset, int fontset, int len, int from, int base);
void lib_drawline(int opt, struct LIB_WINDOW *window, int color, int x0, int y0, int x1, int y1);
void lib_closetextbox(int opt, struct LIB_TEXTBOX *textbox);
void lib_mapmodule(int opt, int slot, int attr, int size, void *addr, int ofs);
void lib_unmapmodule(int opt, int size, void *addr);
void lib_initmodulehandle(int opt, int slot);
void lib_putblock1(struct LIB_WINDOW *win, int x, int y, int sx, int sy, int skip, void *p);
struct LIB_GRAPHBOX *lib_opengraphbox(int opt, struct LIB_GRAPHBOX *gbox, int mode, int mode_opt,
int x_size, int y_size, int x_pos, int y_pos, struct LIB_WINDOW *window);
void lib_opengraphbox_nm(int opt, struct LIB_GRAPHBOX *gbox, int mode, int mode_opt,
int x_size, int y_size, int x_pos, int y_pos, struct LIB_WINDOW *window);
struct LIB_GRAPHBOX *lib_opengraphbox_am(int opt, struct LIB_GRAPHBOX *gbox, int mode, int mode_opt,
int x_size, int y_size, int x_pos, int y_pos, struct LIB_WINDOW *window);
void lib_flushgraphbox(int opt, struct LIB_WINDOW *win, int x, int y, int sx, int sy, int skip,
void *p);
void lib_drawline0(int opt, struct LIB_GRAPHBOX *gbox, int color, int x0, int y0, int x1, int y1);
void lib_drawlines0(int opt, struct LIB_GRAPHBOX *gbox, int x0, int y0, int xsize, int ysize,
int lines, const struct LIB_LINES1 *ofs);
void lib_convlines(int opt, int lines, struct LIB_LINES0 *src, struct LIB_LINES1 *dest);
void lib_initmodulehandle0(int opt, int slot);
void lib_putblock02001(struct LIB_GRAPHBOX *gbox, void *buf, int vx0, int vy0);
struct LIB_GRAPHBOX *lib_opengraphbox2(int opt, struct LIB_GRAPHBOX *gbox, int mode, int mode_opt,
int x_bsize, int y_bsize, int x_vsize, int y_vsize, int x_pos, int y_pos,
struct LIB_WINDOW *window);
void lib_opengraphbox2_nm(int opt, struct LIB_GRAPHBOX *gbox, int mode, int mode_opt,
int x_bsize, int y_bsize, int x_vsize, int y_vsize, int x_pos, int y_pos,
struct LIB_WINDOW *window);
struct LIB_GRAPHBOX *lib_opengraphbox2_am(int opt, struct LIB_GRAPHBOX *gbox, int mode, int mode_opt,
int x_bsize, int y_bsize, int x_vsize, int y_vsize, int x_pos, int y_pos,
struct LIB_WINDOW *window);
void lib_putblock03001(struct LIB_GRAPHBOX *gbox, void *buf, int vx0, int vy0, void *tbuf,
int tbuf_skip, int tcol0);
void lib_drawpoints0(int opt, struct LIB_GRAPHBOX *gbox, int x0, int y0, int xsize, int ysize,
int points, const struct LIB_POINTS *ofs);
void lib_wsjis2gg00jpn0(int len, const char *sjis, int *gg00jpn, int ankbase, int jpnbase);
void lib_loadfontset1(int opt, int slot, int sig);
void lib_drawlines1(int opt, struct LIB_WINDOW *win, int x0, int y0, int xsize, int ysize,
int lines, const struct LIB_LINES1 *ofs);
void lib_drawpoints1(int opt, struct LIB_WINDOW *win, int x0, int y0, int xsize, int ysize,
int points, const struct LIB_POINTS *ofs);
void lib_seuc2gg00(int len, const char *seuc, int *gg00, int ankbase, int rightbase);
void lib_resizemodule(int opt, int slot, int newsize, int sig);
void lib_drawpoint0(int opt, struct LIB_GRAPHBOX *gbox, int color, int x, int y);
const int lib_getrandseed();
void lib_putstring0(int opt, int x_pos, int y_pos, struct LIB_TEXTBOX *textbox,
int color, int bcolor, int len, const int *str);
void lib_putstring1(int opt, int x_pos, int y_pos, struct LIB_TEXTBOX *tbox,
int col, int bcol, int base, int len, const int *str);
#endif
void lib_putstring_ASCII(int opt, int x_pos, int y_pos, struct LIB_TEXTBOX *textbox, int color,
int backcolor, const char *str);
void lib_definesignalhandler(void (*lib_signalhandler)(struct LIB_SIGHNDLREG *));
int lib_readCSb(int offset);
int lib_readCSd(int offset);
int lib_readmodulesize(int slot);
void lib_initmodulehandle1(int slot, int num, int sig);
void lib_steppath0(int opt, int slot, const char *name, int sig);
int lib_decodel2d3(int size, int src_ofs, int src_sel, int dest_ofs, int dest_sel);
void lib_putstring_SJIS0(int opt, int x_pos, int y_pos, struct LIB_TEXTBOX *textbox,
int color, int backcolor, const char *str);
int lib_decodetek0(int size, int src_ofs, int src_sel, int dest_ofs, int dest_sel);
void lib_settimertime2(int opt, int slot0, int slot1, unsigned int *time);
#define lib_init(work) \
(struct LIB_WORK *) lib_execcmd2(1 * 4 + 4, 0x0004, \
(work) ? (void *) (work) : malloc(sizeof (struct LIB_WORK)), 0x0000)
#define lib_init_nm(work) \
lib_execcmd0(0x0004, (void *) (work), 0x0000)
#define lib_init_am(work) \
(struct LIB_WORK *) lib_execcmd2(1 * 4 + 4, 0x0004, \
malloc(sizeof (struct LIB_WORK)), 0x0000)
#define lib_waitsignal(opt, signaldw, nest) \
lib_execcmd0(0x0018, (int) (opt), (int) (signaldw), (int) (nest), 0x0000)
#define lib_openwindow(window, slot, x_size, y_size) \
(struct LIB_WINDOW *) lib_execcmd2(1 * 4 + 4, 0x0020, \
(window) ? (void *) (window) : malloc(sizeof (struct LIB_WINDOW)), \
(int) (slot), (int) (x_size), (int) (y_size), 0x0000)
#define lib_openwindow_nm(window, slot, x_size, y_size) \
lib_execcmd0(0x0020, (void *) (window), (int) (slot), (int) (x_size), \
(int) (y_size), 0x0000)
#define lib_openwindow_am(window, slot, x_size, y_size) \
(struct LIB_WINDOW *) lib_execcmd2(1 * 4 + 4, 0x0020, \
malloc(sizeof (struct LIB_WINDOW)), \
(int) (slot), (int) (x_size), (int) (y_size), 0x0000)
#define lib_opentextbox(opt, textbox, backcolor, x_size, y_size, x_pos, y_pos, window, charset, init_char) \
(struct LIB_TEXTBOX *) lib_execcmd2(2 * 4 + 4, 0x0028, (int) (opt), \
(textbox) ? (void *) (textbox) : malloc(sizeof (struct LIB_TEXTBOX) + 8 * (x_size) * (y_size)), \
(int) (backcolor), (int) (x_size), (int) (y_size), (int) (x_pos), \
(int) (y_pos), (void *) (window), (int) (charset), (int) (init_char), \
0x0000)
#define lib_opentextbox_nm(opt, textbox, backcolor, x_size, y_size, x_pos, y_pos, window, charset, init_char) \
lib_execcmd0(0x0028, (int) (opt), (void *) (textbox), (int) (backcolor), \
(int) (x_size), (int) (y_size), (int) (x_pos), (int) (y_pos), \
(void *) (window), (int) (charset), (int) (init_char), 0x0000)
#define lib_opentextbox_am(opt, textbox, backcolor, x_size, y_size, x_pos, y_pos, window, charset, init_char) \
(struct LIB_TEXTBOX *) lib_execcmd2(2 * 4 + 4, 0x0028, (int) (opt), \
malloc(sizeof (struct LIB_TEXTBOX) + 8 * (x_size) * (y_size)), \
(int) (backcolor), (int) (x_size), (int) (y_size), (int) (x_pos), \
(int) (y_pos), (void *) (window), (int) (charset), (int) (init_char), \
0x0000)
#define lib_waitsignaltime(opt, signaldw, nest, time0, time1, time2) \
lib_execcmd0(0x0018, (int) (opt), (int) (signaldw), (int) (nest), \
(int) (time0), (int) (time1), (int) (time2), 0x0000)
#define lib_opensignalbox(bytes, signalbox, eos, rewind) \
(int *) lib_execcmd2(2 * 4 + 4, 0x0060, (int) (bytes), \
(signalbox) ? (void *) (signalbox) : malloc(bytes), (int) (eos), \
(int) (rewind), 0x0000)
#define lib_opensignalbox_nm(bytes, signalbox, eos, rewind) \
lib_execcmd0(0x0060, (int) (bytes), (void *) (signalbox), (int) (eos), \
(int) (rewind), 0x0000)
#define lib_opensignalbox_am(bytes, signalbox, eos, rewind) \
(int *) lib_execcmd2(2 * 4 + 4, 0x0060, (int) (bytes), \
malloc(bytes), (int) (eos), (int) (rewind), 0x0000)
#define lib_definesignal0p0(opt, default_assign0, default_assign1, default_assign2) \
lib_execcmd0(0x0068, (int) (opt), (int) (default_assign0), \
(int) (default_assign1), (int) (default_assign2), 0, 0, 0x0000)
#define lib_definesignal1p0(opt, default_assign0, default_assign1, default_assign2, signal) \
lib_execcmd0(0x0068, (int) (opt), (int) (default_assign0), \
(int) (default_assign1), (int) (default_assign2), 1, (int) (signal), \
0, 0x0000)
#define lib_opentimer(slot) \
lib_execcmd0(0x0070, (int) (slot), 0x0000)
#define lib_closetimer(slot) \
lib_execcmd0(0x0074, (int) (slot), 0x0000)
#define lib_settimertime(opt, slot, time0, time1, time2) \
lib_execcmd0(0x0078, (int) (opt), (int) (slot), (int) (time0), \
(int) (time1), (int) (time2), 0x0000)
#define lib_settimer(opt, slot) \
lib_execcmd0(0x0078, (int) (opt), (int) (slot), 0x0000)
#define lib_opensoundtrack(slot) \
lib_execcmd0(0x0080, (int) (slot), 0, 0x0000)
#define lib_controlfreq(slot, freq) \
lib_execcmd0(0x008c, (int) (slot), (int) (freq), 0x0000)
#define lib_openwindow1(window, slot, x_size, y_size, flags, base) \
(struct LIB_WINDOW *) lib_execcmd2(1 * 4 + 4, 0x0020, \
(window) ? (void *) (window) : malloc(sizeof (struct LIB_WINDOW)), \
(int) (slot) | 0x01, (int) (x_size), (int) (y_size), \
0x01 | (int) (flags) << 8, (int) (base), 0x0000)
#define lib_openwindow1_nm(window, slot, x_size, y_size, flags, base) \
lib_execcmd0(0x0020, (void *) (window), (int) (slot) | 0x01, \
(int) (x_size), (int) (y_size), 0x01 | (int) (flags) << 8, (int) (base), \
0x0000)
#define lib_openwindow1_am(window, slot, x_size, y_size, flags, base) \
(struct LIB_WINDOW *) lib_execcmd2(1 * 4 + 4, 0x0020, \
malloc(sizeof (struct LIB_WINDOW)), \
(int) (slot) | 0x01, (int) (x_size), (int) (y_size), \
0x01 | (int) (flags) << 8, (int) (base), 0x0000)
#define lib_closewindow(opt, window) \
lib_execcmd0(0x0024, (int) (opt), (void *) (window), 0x0000)
#define lib_controlwindow(opt, window) \
lib_execcmd0(0x003c, (int) (opt), (void *) (window), 0x0000)
#define lib_close(opt) \
lib_execcmd0(0x0008, (int) (opt), 0x0000)
#define lib_loadfontset(opt, slot, len, font) \
lib_execcmd0(0x00e0, (int) (opt), (int) (slot), (int) (len), (int) (font), \
0x000c, 0x0000)
#define lib_loadfontset0(opt, slot) \
lib_execcmd0(0x00e0, (int) (opt), (int) (slot), 0x0000)
#define lib_loadfontset1(opt, slot, sig) \
lib_execcmd0(0x00e0, (int) (opt), (int) (slot), 1, (int) (sig), 0x0000)
#define lib_makecharset(opt, charset, fontset, len, from, base) \
lib_execcmd0(0x00e8, (int) (opt), (int) (charset), (int) (fontset), \
(int) (len), (int) (from), (int) (base), 0x0000)
#define lib_drawline(opt, window, color, x0, y0, x1, y1) \
lib_execcmd0(0x0044, (int) (opt), (void *) (window), (int) (color), \
(int) (x0), (int) (y0), (int) (x1), (int) (y1), 0x0000)
#define lib_closetextbox(opt, textbox) \
lib_execcmd0(0x002c, (int) (opt), (int) (textbox), 0x0000)
#define lib_mapmodule(opt, slot, attr, size, addr, ofs) \
lib_execcmd0(0x00c0, (int) (opt), (int) (slot), (int) (size), \
(void *) (addr), 0x000c, (int) ((ofs) | (attr)), 0x0000)
#define lib_unmapmodule(opt, size, addr) \
lib_execcmd0(0x00c4, (int) (opt), (int) (size), (void *) (addr), 0x000c, \
0x0000)
#define lib_initmodulehandle(opt, slot) \
lib_execcmd0(0x00a0, (int) (opt), (int) (slot), 0x0000)
#define lib_putblock1(win, x, y, sx, sy, skip, p) \
lib_execcmd0(0x004c, 1, (void *) (win), (int) (x), (int) (y), (int) (sx), \
(int) (sy), (int) (skip), (void *) (p), 0x000c, 0x0000)
#define lib_opengraphbox(opt, graphbox, mode, mode_opt, x_size, y_size, x_pos, y_pos, window) \
(struct LIB_GRAPHBOX *) lib_execcmd2(2 * 4 + 4, 0x0030, (int) (opt), \
(graphbox) ? (void *) (graphbox) : malloc(sizeof (struct LIB_GRAPHBOX) + (x_size) * (y_size) * ((mode) & 0xf)), \
(int) (mode), (int) (mode_opt), (int) (x_size), (int) (y_size), \
(int) (x_pos), (int) (y_pos), (void *) (window), 0x0000)
#define lib_opengraphbox_nm(opt, graphbox, mode, mode_opt, x_size, y_size, x_pos, y_pos, window) \
lib_execcmd0(0x0030, (int) (opt), (void *) (graphbox), \
(int) (mode), (int) (mode_opt), (int) (x_size), (int) (y_size), \
(int) (x_pos), (int) (y_pos), (void *) (window), 0x0000)
#define lib_opengraphbox_am(opt, graphbox, mode, mode_opt, x_size, y_size, x_pos, y_pos, window) \
(struct LIB_GRAPHBOX *) lib_execcmd2(2 * 4 + 4, 0x0030, (int) (opt), \
malloc(sizeof (struct LIB_GRAPHBOX) + (x_size) * (y_size) * ((mode) & 0xf)), \
(int) (mode), (int) (mode_opt), (int) (x_size), (int) (y_size), \
(int) (x_pos), (int) (y_pos), (void *) (window), 0x0000)
#define lib_flushgraphbox(opt, win, x, y, sx, sy, skip, p) \
lib_execcmd0(0x004c, opt, (void *) (win), (int) (x), (int) (y), (int) (sx), \
(int) (sy), (int) (skip), (void *) (p), 0x000c, 0x0000)
#define lib_drawline0(opt, gbox, color, x0, y0, x1, y1) \
lib_execcmd0(0x0054, (int) (opt), (void *) (gbox), (int) (color), \
(int) (x0), (int) (y0), (int) (x1), (int) (y1), 0x0000)
#define lib_drawlines0(opt, gbox, x0, y0, xsize, ysize, lines, ofs) \
lib_execcmd0(0x0108, (int) (opt), (void *) (gbox), (int) (x0), \
(int) (y0), (int) (xsize), (int) (ysize), (int) (lines), (void *) (ofs), \
0x000c, 0x0000)
#define lib_convlines(opt, lines, src, dest) \
lib_execcmd0(0x010c, (int) (opt), (int) (lines), \
(struct LIB_LINES0 *) (src), 0x000c, (struct LIB_LINES1 *) (dest), \
0x000c, 0x0000)
#define lib_initmodulehandle0(opt, slot) \
lib_execcmd0(0x00a0, (int) (opt), (int) (slot), 0x0000)
#define lib_putblock02001(gbox, buf, vx0, vy0) \
lib_execcmd0(0x0058, 0x2001, (void *) (gbox), (void *) (buf), \
(int) (vx0), (int) (vy0), 0x0000)
#define lib_opengraphbox2(opt, graphbox, mode, mode_opt, x_bsize, y_bsize, \
x_vsize, y_vsize, x_pos, y_pos, window) \
(struct LIB_GRAPHBOX *) lib_execcmd2(2 * 4 + 4, 0x0030, (int) (opt), \
(graphbox) ? (void *) (graphbox) : malloc(sizeof (struct LIB_GRAPHBOX) + (x_bsize) * (y_bsize) * ((mode) & 0xf)), \
(int) (mode), (int) (mode_opt), (int) (x_bsize), (int) (y_bsize), \
(int) (x_vsize), (int) (y_vsize), (int) (x_pos), (int) (y_pos), \
(void *) (window), 0x0000)
#define lib_opengraphbox2_nm(opt, graphbox, mode, mode_opt, x_bsize, y_bsize, \
x_vsize, y_vsize, x_pos, y_pos, window) \
lib_execcmd0(0x0030, (int) (opt), (void *) (graphbox), \
(int) (mode), (int) (mode_opt), (int) (x_bsize), (int) (y_bsize), \
(int) (x_vsize), (int) (y_vsize), (int) (x_pos), (int) (y_pos), \
(void *) (window), 0x0000)
#define lib_opengraphbox2_am(opt, graphbox, mode, mode_opt, x_bsize, y_bsize, \
x_vsize, y_vsize, x_pos, y_pos, window) \
(struct LIB_GRAPHBOX *) lib_execcmd2(2 * 4 + 4, 0x0030, (int) (opt), \
malloc(sizeof (struct LIB_GRAPHBOX) + (x_bsize) * (y_bsize) * ((mode) & 0xf)), \
(int) (mode), (int) (mode_opt), (int) (x_bsize), (int) (y_bsize), \
(int) (x_vsize), (int) (y_vsize), (int) (x_pos), (int) (y_pos), \
(void *) (window), 0x0000)
#define lib_putblock03001(gbox, buf, vx0, vy0, tbuf, tbuf_skip, tcol0) \
lib_execcmd0(0x0058, 0x3001, (void *) (gbox), (void *) (buf), \
(int) (vx0), (int) (vy0), (void *) (tbuf), (int) (tbuf_skip), \
(int) (tcol0), 0x0000)
#define lib_drawpoints0(opt, gbox, x0, y0, xsize, ysize, points, ofs) \
lib_execcmd0(0x005c, (int) (opt), (void *) (gbox), (int) (x0), \
(int) (y0), (int) (xsize), (int) (ysize), (int) (points), (void *) (ofs), \
0x000c, 0x0000)
#define lib_wsjis2gg00jpn0(len, sjis, gg00jpn, ankbase, jpnbase) \
lib_execcmd0(0x00ec, 0x0001, (int) (len), (void *) (sjis), 0x000c, \
(int *) (gg00jpn), 0x000c, (int) (ankbase), (int) (jpnbase), 0x0000)
#define lib_drawlines1(opt, win, x0, y0, xsize, ysize, lines, ofs) \
lib_execcmd0(0x0110, (int) (opt), (void *) (win), (int) (x0), \
(int) (y0), (int) (xsize), (int) (ysize), (int) (lines), (void *) (ofs), \
0x000c, 0x0000)
#define lib_drawpoints1(opt, win, x0, y0, xsize, ysize, points, ofs) \
lib_execcmd0(0x0050, (int) (opt), (void *) (win), (int) (x0), \
(int) (y0), (int) (xsize), (int) (ysize), (int) (points), (void *) (ofs), \
0x000c, 0x0000)
#define lib_seuc2gg00(len, seuc, gg00, ankbase, rightbase) \
lib_execcmd0(0x00ec, 0x0002, (int) (len), (void *) (seuc), 0x000c, \
(int *) (gg00), 0x000c, (int) (ankbase), (int) (rightbase), 0x0000)
#define lib_resizemodule(opt, slot, newsize, sig) \
lib_execcmd0(0x0120, 0x0000, (int) (slot), (int) (newsize), 1, \
(int) (sig), 0x0000)
#define lib_drawpoint0(opt, gbox, color, x, y) \
lib_execcmd0(0x0054, (int) (opt), (void *) (gbox), (int) (color), \
(int) (x), (int) (y), (int) (x), (int) (y), 0x0000)
#define lib_getrandseed() \
lib_execcmd2(2 * 4 + 4, 0x0118, (int) 0, (int) 0, (int) 0x0000)
#define lib_putstring0(opt, x_pos, y_pos, textbox, color, bcolor, len, str) \
lib_execcmd0(0x0040, (int) (opt) | 0x4000, (int) (x_pos), (int) (y_pos), \
(void *) (textbox), (int) (color), (int) (bcolor), (int) (len), \
(void *) (str), (int) 0x000c, 0x0000)
#define lib_putstring1(opt, x_pos, y_pos, tbox, col, bcol, base, len, str) \
lib_execcmd0(0x0040, (int) (opt) | 0x4000, (int) (x_pos), (int) (y_pos), \
(void *) (tbox), (int) (col), (int) (bcol), (int) (base), (int) (len), \
(void *) (str), (int) 0x000c, 0x0000)
/* <guigui00.h>改良計画のための追記 */
//void lib_initsignalbox0_256(int rewind);
//void lib_initsignalbox0_4k(int rewind);
//void lib_initsignalbox0_64k(int rewind);
extern int lib_work256[256 / 4];
extern int lib_sigrwd_256, *lib_sigptr_256, lib_sigbox_256[256 / 4];
extern int lib_sigrwd_4k, *lib_sigptr_4k, lib_sigbox_4k[4096 / 4];
extern int lib_sigrwd_64k, *lib_sigptr_64k, lib_sigbox_64k[65536 / 4];
int lib_getsig0w(int *sigbox);
int lib_getsig0(int *sigbox);
int lib_getsig1w(int *sigbox);
int lib_getsig1(int *sigbox);
extern int lib_initsignalbox0_256d[1];
extern __inline__ void lib_initsignalbox0_256(int rewind)
{
__asm__ (" movl $_lib_initsignalbox0_256d,%%ebx\n\t" \
" movl %0,24(%%ebx) \n\t" \
" .byte 154 \n\t" \
" .byte 0 \n\t" \
" .byte 0 \n\t" \
" .byte 0 \n\t" \
" .byte 0 \n\t" \
" .byte 199 \n\t" \
" .byte 0 \n\t" \
: : "r" (rewind) : "%ebx" );
}
extern int lib_initsignalbox0_4kd[1];
extern __inline__ void lib_initsignalbox0_4k(int rewind)
{
__asm__ (" movl $_lib_initsignalbox0_4kd,%%ebx \n\t" \
" movl %0,24(%%ebx) \n\t" \
" .byte 154 \n\t" \
" .byte 0 \n\t" \
" .byte 0 \n\t" \
" .byte 0 \n\t" \
" .byte 0 \n\t" \
" .byte 199 \n\t" \
" .byte 0 \n\t" \
: : "r" (rewind) : "%ebx" );
}
extern int lib_initsignalbox0_64kd[1];
extern __inline__ void lib_initsignalbox0_64k(int rewind)
{
__asm__ (" movl $_lib_initsignalbox0_64kd,%%ebx\n\t" \
" movl %0,24(%%ebx) \n\t" \
" .byte 154 \n\t" \
" .byte 0 \n\t" \
" .byte 0 \n\t" \
" .byte 0 \n\t" \
" .byte 0 \n\t" \
" .byte 199 \n\t" \
" .byte 0 \n\t" \
: : "r" (rewind) : "%ebx" );
}
#if (!defined(LIB_FN_INIT))
/* function-number */
#define LIB_FN_INIT 0x0004 /* non-malloc型 */
#define LIB_FN_CLOSE 0x0008
#define LIB_FN_WAITSIGNAL 0x0018
#define LIB_FN_WAITSIGNALTIME 0x0018
#define LIB_FN_OPENWINDOW 0x0020 /* non-malloc型 */
#define LIB_FN_OPENWINDOW1 0x0020 /* non-malloc型 */
/* ↑slotのところに1を足す、flagsのところは256倍してさらに1を足す */
#define LIB_FN_CLOSEWINDOW 0x0024
#define LIB_FN_OPENTEXTBOX 0x0028 /* non-malloc型 */
#define LIB_FN_CLOSETEXTBOX 0x002c
#define LIB_FN_OPENGRAPHBOX 0x0030 /* non-malloc型 */
#define LIB_FN_OPENGRAPHBOX2 0x0030 /* non-malloc型 */
#define LIB_FN_CONTROLWINDOW 0x003c
#define LIB_FN_PUTSTRING 0x0040
/* ↑普通に使うならoptに0x4000を足す */
/* ↑テキスト埋め込みをやるなら0x4000は足さない */
#define LIB_FN_DRAWLINE 0x0044
#define LIB_FN_FLUSHGRAPHBOX 0x004c /* おしりに0x000cを追加 */
#define LIB_FN_PUTBLOCK1 0x004c /* 先頭にoptとして1を追加、さらにおしりに0x000cを追加 */
#define LIB_FN_DRAWPOINTS1 0x0050 /* おしりに0x000cを追加 */
#define LIB_FN_DRAWLINE0 0x0054
#define LIB_FN_DRAWPOINT0 0x0054
/* ↑xとyのあとに、またxとyを追加実はDRAWLINE0でごまかしているため */
#define LIB_FN_PUTBLOCK02001 0x0058 /* 先頭にoptとして0x2001を追加 */
#define LIB_FN_PUTBLOCK03001 0x0058 /* 先頭にoptとして0x3001を追加 */
#define LIB_FN_DRAWPOINTS0 0x005c /* おしりに0x000cを追加 */
#define LIB_FN_OPENSIGNALBOX 0x0060 /* non-malloc型 */
#define LIB_FN_DEFINESIGNAL 0x0068
/* ↑0p0の場合は、おしりに0を2つ追加 */
/* ↑1p0の場合は、signalの前に1を追加、signalの後ろに0を追加 */
#define LIB_FN_OPENTIMER 0x0070
#define LIB_FN_CLOSETIMER 0x0074
#define LIB_FN_SETTIMER 0x0078
#define LIB_FN_SETTIMERTIME 0x0078
#define LIB_FN_OPENSOUNDTRAK 0x0080
#define LIB_FN_CONTROLFREQ 0x008c
#define LIB_FN_MAPMODULE 0x00c0 /* addrの後ろに0x000cを追加、ofsとattrは足し算して一つに */
#define LIB_FN_UNMAPMODULE 0x00c4 /* addrの後ろに0x000cを追加 */
#define LIB_FN_LOADFONTSET 0x00e0 /* おしりに0x000cを追加 */
#define LIB_FN_LOADFONTSET0 0x00e0
#define LIB_FN_MAKECHARSET 0x00e8
#define LIB_FN_WSJIS2GG00JPN0 0x00ec
/* ↑先頭にoptとして1を追加、sjisとgg00jpnのうしろにそれぞれ0x000cを追加 */
#define LIB_FN_SEUC2GG00 0x00ec
/* ↑先頭にoptとして2を追加、seucとgg00のうしろにそれぞれ0x000cを追加 */
#define LIB_FN_DRAWLINES0 0x0108 /* おしりに0x000cを追加 */
#define LIB_FN_CONVLINES 0x010c /* おしりに0x000cを追加 */
#define LIB_FN_DRAWLINES1 0x0110 /* おしりに0x000cを追加 */
#define LIB_FN_RESIZEMODULE 0x0120 /* sigの前に1を追加 */
#endif
#define lib_openwintitle(size, window) \
lib_opentextbox(0x1000, 0, 0, size, 1, 0, 0, window, 0x00c0, 0)
#define lib_settimertime_interval(slot, time0, time1) \
lib_settimertime(0x12, slot, time0, time1, 0)
#define lib_settimertime_fromnow(slot, time0, time1) \
lib_settimertime(0x32, slot, time0, time1, 0)
#define lib_wait_interval(time0, time1) \
lib_waitsignaltime(0x0007, 0, 0, time0, time1, 0)
#define lib_wait_fromnow(time0, time1) \
lib_waitsignaltime(0x000f, 0, 0, time0, time1, 0)
int lib_imul(signed int a, signed int b, int *h);
int lib_idiv(signed int a, signed int b, int *r);
int lib_imuldiv(signed int a, signed int b, signed int c, int *r);
int lib_imod(signed int a, signed int b, int *q);
#endif

View File

@@ -0,0 +1,20 @@
format:
/* このセクションでリンクの方針を記述 */
code(align:1, logic:0x48, file:0x48);
data(align:4, logic:stack_end, file:code_end);
file:
/* このセクションでコマンドラインに書ききれなかった
.objファイル、.libファイルを記載 */
/* なお、このセクションはフルパスで書いてもよい。 */
/* 例: c:/osask/gg00libc.lib; */
../z_tools/guigui00/gg00libc.lib;
../z_tools/guigui00/golibc.lib;
label:
/* 必ずリンクしなければいけないラベルを指定 */
/* エントリポイントを指定すればいいと思ってください */
_OsaskMain;
/* 上記3セクションの順序は入れ替えてはいけません! */

View File

@@ -0,0 +1,23 @@
/* copyright(C) 2002 H.Kawai (under KL-01). */
#if (!defined(LIMITS_H))
#define LIMITS_H 1
#define CHAR_BIT 8
#define CHAR_MAX (+127)
#define CHAR_MIN 0
#define INT_MAX (+0x7fffffff)
#define INT_MIN (-0x7fffffff)
#define LONG_MAX INT_MAX
#define LONG_MIN INT_MIN
#define SCHAR_MAX (+127)
#define SCHAR_MIN (-127)
#define SHRT_MAX (+0x7fff)
#define SHRT_MIN (-0x7fff)
#define UCHAR_MAX (+0xff)
#define UINT_MAX (+0xffffffff)
#define ULONG_MAX UINT_MAX
#define USHRT_MAX (+0xffff)
#endif

View File

@@ -0,0 +1,42 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(MATH_H))
#define MATH_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
double sin(double);
double cos(double);
double sqrt(double);
double ldexp(double x, int n);
double frexp(double x, int *exp);
extern __inline__ double sin(double x)
{
double res;
__asm__ ("fsin" : "=t" (res) : "0" (x));
return res;
}
extern __inline__ double cos(double x)
{
double res;
__asm__ ("fcos" : "=t" (res) : "0" (x));
return res;
}
extern __inline__ double sqrt(double x)
{
double res;
__asm__ ("fsqrt" : "=t" (res) : "0" (x));
return res;
}
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,20 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(SETJMP_H))
#define SETJMP_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
typedef int jmp_buf[3]; /* EBP, EIP, ESP */
#define setjmp(env) __builtin_setjmp(env)
#define longjmp(env, val) __builtin_longjmp(env, val)
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,21 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(STDARG_H))
#define STDARG_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
#define va_start(v,l) __builtin_stdarg_start((v),l)
#define va_end __builtin_va_end
#define va_arg __builtin_va_arg
#define va_copy(d,s) __builtin_va_copy((d),(s))
#define va_list __builtin_va_list
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,17 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(STDDEF_H))
#define STDDEF_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
typedef unsigned int size_t;
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,24 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(STDIO_H))
#define STDIO_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
#if (!defined(NULL))
#define NULL ((void *) 0)
#endif
#include <stdarg.h>
int sprintf(char *s, const char *format, ...);
int vsprintf(char *s, const char *format, va_list arg);
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,34 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(STDLIB_H))
#define STDLIB_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
#include <stddef.h> /* size_t */
#define RAND_MAX 0x7fff
#define srand(seed) (void) (rand_seed = (seed))
int abs(int n);
double atof(const char *s);
int atoi(const char *s);
void qsort(void *base, size_t n, size_t size,
int (*cmp)(const void *, const void *));
int rand(void);
extern unsigned int rand_seed;
double strtod(const char *s, const char **endp);
long strtol(const char *s, const char **endp, int base);
unsigned long strtoul(const char *s, const char **endp, int base);
void *malloc(unsigned int nbytes);
void free(void *ap);
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,38 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(STRING_H))
#define STRING_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
#include <stddef.h> /* size_t */
char *strcpy(char *s, const char *ct);
char *strncpy(char *s, const char *ct, size_t n);
char *strcat(char *s, const char *ct);
char *strncat(char *s, const char *ct, size_t n);
int strcmp(const char *cs, const char *ct);
int strncmp(const char *cs, const char *ct, size_t n);
char *strchr(const char *cs, int c);
char *strrchr(const char *cs, int c);
size_t strspn(const char *s, const char *accept);
size_t strcspn(const char *s, const char *reject);
char *strpbrk(const char *s, const char *accept);
char *strstr(const char *cs, const char *ct);
size_t strlen(const char *cs);
void *memcpy(void *s, const void *ct, size_t n);
void *memmove(void *s, const void *ct, size_t n);
int memcmp(const void *cs, const void *ct, size_t n);
void *memchr(const void *cs, int c, size_t n);
void *memset(void *s, int c, size_t n);
char *strdup(const char *s);
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,20 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(ERRNO_H))
#define ERRNO_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
extern int errno;
#define ENOENT 2 /* No such file or directory */
#define ERANGE 34 /* Result too large (or too small) */
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,26 @@
/* copyright(C) 2002 H.Kawai (under KL-01). */
#if (!defined(FLOAT_H))
#define FLOAT_H 1
#define FLT_RADIX 2
#define FLT_ROUNDS 1 /* nearest */
#define FLT_DIG 6
#define FLT_EPSILON 1.19209290e-07F
#define FLT_MANT_DIG 24
#define FLT_MAX 3.40282347e+38F
#define FLT_MAX_EXP (+128)
#define FLT_MIN 1.17549435e-38F
#define FLT_MIN_EXP (-125)
#define DBL_DIG 15
#define DBL_EPSILON 2.2204460492503131e-16
#define DBL_MANT_DIG 53
#define DBL_MAX 1.7976931348623157e+308
#define DBL_MAX_EXP 1024
#define DBL_MIN 2.2250738585072014e-308
#define DBL_MIN_EXP (-1021)
#endif

Binary file not shown.

View File

@@ -0,0 +1,19 @@
format:
/* このセクションでリンクの方針を記述 */
code(align:1, logic:0x24, file:0x24);
data(align:4, logic:stack_end, file:code_end);
file:
/* このセクションでコマンドラインに書ききれなかった
.objファイル、.libファイルを記載 */
/* なお、このセクションはフルパスで書いてもよい。 */
/* 例: c:/osask/gg00libc.lib; */
../z_tools/haribote/harilibc.lib;
../z_tools/haribote/golibc.lib;
label:
/* 必ずリンクしなければいけないラベルを指定 */
/* エントリポイントを指定すればいいと思ってください */
_HariStartup;
/* 上記3セクションの順序は入れ替えてはいけません! */

Binary file not shown.

View File

@@ -0,0 +1,23 @@
/* copyright(C) 2002 H.Kawai (under KL-01). */
#if (!defined(LIMITS_H))
#define LIMITS_H 1
#define CHAR_BIT 8
#define CHAR_MAX (+127)
#define CHAR_MIN 0
#define INT_MAX (+0x7fffffff)
#define INT_MIN (-0x7fffffff)
#define LONG_MAX INT_MAX
#define LONG_MIN INT_MIN
#define SCHAR_MAX (+127)
#define SCHAR_MIN (-127)
#define SHRT_MAX (+0x7fff)
#define SHRT_MIN (-0x7fff)
#define UCHAR_MAX (+0xff)
#define UINT_MAX (+0xffffffff)
#define ULONG_MAX UINT_MAX
#define USHRT_MAX (+0xffff)
#endif

View File

@@ -0,0 +1,42 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(MATH_H))
#define MATH_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
double sin(double);
double cos(double);
double sqrt(double);
double ldexp(double x, int n);
double frexp(double x, int *exp);
extern __inline__ double sin(double x)
{
double res;
__asm__ ("fsin" : "=t" (res) : "0" (x));
return res;
}
extern __inline__ double cos(double x)
{
double res;
__asm__ ("fcos" : "=t" (res) : "0" (x));
return res;
}
extern __inline__ double sqrt(double x)
{
double res;
__asm__ ("fsqrt" : "=t" (res) : "0" (x));
return res;
}
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,20 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(SETJMP_H))
#define SETJMP_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
typedef int jmp_buf[3]; /* EBP, EIP, ESP */
#define setjmp(env) __builtin_setjmp(env)
#define longjmp(env, val) __builtin_longjmp(env, val)
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,21 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(STDARG_H))
#define STDARG_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
#define va_start(v,l) __builtin_stdarg_start((v),l)
#define va_end __builtin_va_end
#define va_arg __builtin_va_arg
#define va_copy(d,s) __builtin_va_copy((d),(s))
#define va_list __builtin_va_list
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,17 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(STDDEF_H))
#define STDDEF_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
typedef unsigned int size_t;
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,24 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(STDIO_H))
#define STDIO_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
#if (!defined(NULL))
#define NULL ((void *) 0)
#endif
#include <stdarg.h>
int sprintf(char *s, const char *format, ...);
int vsprintf(char *s, const char *format, va_list arg);
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,38 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(STRING_H))
#define STRING_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
#include <stddef.h> /* size_t */
char *strcpy(char *s, const char *ct);
char *strncpy(char *s, const char *ct, size_t n);
char *strcat(char *s, const char *ct);
char *strncat(char *s, const char *ct, size_t n);
int strcmp(const char *cs, const char *ct);
int strncmp(const char *cs, const char *ct, size_t n);
char *strchr(const char *cs, int c);
char *strrchr(const char *cs, int c);
size_t strspn(const char *s, const char *accept);
size_t strcspn(const char *s, const char *reject);
char *strpbrk(const char *s, const char *accept);
char *strstr(const char *cs, const char *ct);
size_t strlen(const char *cs);
void *memcpy(void *s, const void *ct, size_t n);
void *memmove(void *s, const void *ct, size_t n);
int memcmp(const void *cs, const void *ct, size_t n);
void *memchr(const void *cs, int c, size_t n);
void *memset(void *s, int c, size_t n);
char *strdup(const char *s);
#if (defined(__cplusplus))
}
#endif
#endif

BIN
tolset/z_tools/imgtol.com Normal file

Binary file not shown.

BIN
tolset/z_tools/ld.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/make.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/makefont.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/nask.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/naskcnv0.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/nothing.com Normal file

Binary file not shown.

BIN
tolset/z_tools/obj2bim.exe Normal file

Binary file not shown.

View File

@@ -0,0 +1,21 @@
MAKE = ..\make.exe -r
OSALINK = ..\osalink1.exe
MV = ren
EDIMG = ..\edimg.exe
RM = del
ALL :
$(MAKE) osaimgqe.bin
osask_qe.exe : Makefile OSASK.EXE timerdrv.tek osalink1.opt
-$(RM) osask_qe.exe
$(MV) OSASK.EXE osask_at.exe
$(OSALINK)
$(MV) osask.exe osask_qe.exe
$(MV) osask_at.exe OSASK.EXE
osask_qe.sys : Makefile osask_qe.exe
$(EDIMG) binin:osask_qe.exe exe2bin seg:2048 binout:osask_qe.sys
osaimgqe.bin : Makefile OSAIMGAT.BIN osask_qe.sys
$(EDIMG) @edimgopt.txt

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,2 @@
setvesa 3 0x114
mouseaccel 1 1

View File

@@ -0,0 +1,4 @@
opt imgin:OSAIMGAT.BIN
ovrcopy from:osask_qe.sys to:@:OSASK.SYS
copy from:OSASK0.PSF to:@:
opt imgout:osaimgqe.bin

View File

@@ -0,0 +1,9 @@
..\nothing.com
del osask_at.exe
del osask_qe.exe
ren OSASK.EXE osask_at.exe
..\osalink1.exe
ren osask.exe osask_qe.exe
ren osask_at.exe OSASK.EXE
..\imgtol.com s osask_qe.exe osask_qe.sys 2048
..\edimg.exe @edimgopt.txt

View File

@@ -0,0 +1,2 @@
osask_at.exe
timerdrv.tek

Binary file not shown.

BIN
tolset/z_tools/osalink1.exe Normal file

Binary file not shown.

View File

@@ -0,0 +1,2 @@
default :
qemu-win.bat

BIN
tolset/z_tools/qemu/SDL.dll Normal file

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,4 @@
@set SDL_VIDEODRIVER=windib
@set QEMU_AUDIO_DRV=none
@set QEMU_AUDIO_LOG_TO_MONITOR=0
qemu.exe -L . -m 32 -localtime -std-vga -fda fdimage0.bin

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,2 @@
default :
qemu.exe -L . --fda fdimage0.bin

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
tolset/z_tools/sartol.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/sjisconv.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/t5lzma.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/upx.exe Normal file

Binary file not shown.

BIN
tolset/z_tools/wce.exe Normal file

Binary file not shown.

View File

@@ -0,0 +1,20 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(ERRNO_H))
#define ERRNO_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
extern int errno;
#define ENOENT 2 /* No such file or directory */
#define ERANGE 34 /* Result too large (or too small) */
#if (defined(__cplusplus))
}
#endif
#endif

View File

@@ -0,0 +1,26 @@
/* copyright(C) 2002 H.Kawai (under KL-01). */
#if (!defined(FLOAT_H))
#define FLOAT_H 1
#define FLT_RADIX 2
#define FLT_ROUNDS 1 /* nearest */
#define FLT_DIG 6
#define FLT_EPSILON 1.19209290e-07F
#define FLT_MANT_DIG 24
#define FLT_MAX 3.40282347e+38F
#define FLT_MAX_EXP (+128)
#define FLT_MIN 1.17549435e-38F
#define FLT_MIN_EXP (-125)
#define DBL_DIG 15
#define DBL_EPSILON 2.2204460492503131e-16
#define DBL_MANT_DIG 53
#define DBL_MAX 1.7976931348623157e+308
#define DBL_MAX_EXP 1024
#define DBL_MIN 2.2250738585072014e-308
#define DBL_MIN_EXP (-1021)
#endif

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,23 @@
/* copyright(C) 2002 H.Kawai (under KL-01). */
#if (!defined(LIMITS_H))
#define LIMITS_H 1
#define CHAR_BIT 8
#define CHAR_MAX (+127)
#define CHAR_MIN 0
#define INT_MAX (+0x7fffffff)
#define INT_MIN (-0x7fffffff)
#define LONG_MAX INT_MAX
#define LONG_MIN INT_MIN
#define SCHAR_MAX (+127)
#define SCHAR_MIN (-127)
#define SHRT_MAX (+0x7fff)
#define SHRT_MIN (-0x7fff)
#define UCHAR_MAX (+0xff)
#define UINT_MAX (+0xffffffff)
#define ULONG_MAX UINT_MAX
#define USHRT_MAX (+0xffff)
#endif

View File

@@ -0,0 +1,42 @@
/* copyright(C) 2003 H.Kawai (under KL-01). */
#if (!defined(MATH_H))
#define MATH_H 1
#if (defined(__cplusplus))
extern "C" {
#endif
double sin(double);
double cos(double);
double sqrt(double);
double ldexp(double x, int n);
double frexp(double x, int *exp);
extern __inline__ double sin(double x)
{
double res;
__asm__ ("fsin" : "=t" (res) : "0" (x));
return res;
}
extern __inline__ double cos(double x)
{
double res;
__asm__ ("fcos" : "=t" (res) : "0" (x));
return res;
}
extern __inline__ double sqrt(double x)
{
double res;
__asm__ ("fsqrt" : "=t" (res) : "0" (x));
return res;
}
#if (defined(__cplusplus))
}
#endif
#endif

Some files were not shown because too many files have changed in this diff Show More