added everything
This commit is contained in:
357
bin/nasm/Licence
Executable file
357
bin/nasm/Licence
Executable file
@ -0,0 +1,357 @@
|
||||
|
||||
|
||||
|
||||
Terms and Conditions for the use of the Netwide Assembler
|
||||
|
||||
|
||||
=========================================================
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Can I have the gist without reading the legalese?
|
||||
|
||||
|
||||
-------------------------------------------------
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Basically, NASM is free. You can't charge for it. You can copy it as
|
||||
|
||||
|
||||
much as you like. You can incorporate it, or bits of it, into other
|
||||
|
||||
|
||||
free programs if you want. (But we want to know about it if you do,
|
||||
|
||||
|
||||
and we want to be mentioned in the credits.) We may well allow you
|
||||
|
||||
|
||||
to incorporate it into commercial software too, but we'll probably
|
||||
|
||||
|
||||
demand some money for it, and we'll certainly demand to be given
|
||||
|
||||
|
||||
credit. And in extreme cases (although I can't immediately think of
|
||||
|
||||
|
||||
a reason we might actually want to do this) we may refuse to let you
|
||||
|
||||
|
||||
do it at all.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
NASM LICENCE AGREEMENT
|
||||
|
||||
|
||||
======================
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
By "the Software" this licence refers to the complete contents of
|
||||
|
||||
|
||||
the NASM archive, excluding this licence document itself, and
|
||||
|
||||
|
||||
excluding the contents of the `test' directory. The Netwide
|
||||
|
||||
|
||||
Disassembler, NDISASM, is specifically included under this licence.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
I. The Software is freely redistributable; anyone may copy the
|
||||
|
||||
|
||||
Software, or parts of the Software, and give away as many copies as
|
||||
|
||||
|
||||
they like to anyone, as long as this licence document is kept with
|
||||
|
||||
|
||||
the Software. Charging a fee for the Software is prohibited,
|
||||
|
||||
|
||||
although a fee may be charged for the act of transferring a copy,
|
||||
|
||||
|
||||
and you can offer warranty protection and charge a fee for that.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
II. The Software, or parts thereof, may be incorporated into other
|
||||
|
||||
|
||||
freely redistributable software (by which we mean software that may
|
||||
|
||||
|
||||
be obtained free of charge) without requiring permission from the
|
||||
|
||||
|
||||
authors, as long as due credit is given to the authors of the
|
||||
|
||||
|
||||
Software in the resulting work, as long as the authors are informed
|
||||
|
||||
|
||||
of this action if possible, and as long as those parts of the
|
||||
|
||||
|
||||
Software that are used remain under this licence.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
III. Modified forms of the Software may be created and distributed
|
||||
|
||||
|
||||
as long as the authors are informed of this action if possible, as
|
||||
|
||||
|
||||
long as the resulting work remains under this licence, as long as
|
||||
|
||||
|
||||
the modified form of the Software is distributed with documentation
|
||||
|
||||
|
||||
which still gives credit to the original authors of the Software,
|
||||
|
||||
|
||||
and as long as the modified form of the Software is distributed with
|
||||
|
||||
|
||||
a clear statement that it is not the original form of the Software
|
||||
|
||||
|
||||
in the form that it was distributed by the authors.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IV. The Software, or parts thereof, may be incorporated into other
|
||||
|
||||
|
||||
software which is not freely redistributable (i.e. software for
|
||||
|
||||
|
||||
which a fee is charged), as long as permission is granted from the
|
||||
|
||||
|
||||
authors of the Software. The authors reserve the right to grant this
|
||||
|
||||
|
||||
permission only for a fee, which may at our option take the form of
|
||||
|
||||
|
||||
royalty payments. The authors also reserve the right to refuse to
|
||||
|
||||
|
||||
grant permission if they deem it necessary. For further information
|
||||
|
||||
|
||||
about who exactly the authors are, see clause XI below.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
V. The Software may be incorporated, in its original archive form,
|
||||
|
||||
|
||||
into software collections or archives which are not freely
|
||||
|
||||
|
||||
redistributable, as long as it is clearly stated that the Software
|
||||
|
||||
|
||||
itself remains freely redistributable and remains under this licence
|
||||
|
||||
|
||||
and no other. Such collections are deemed not to fall under article
|
||||
|
||||
|
||||
IV of this licence.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
VI. Object files or programs generated by the Software as output do
|
||||
|
||||
|
||||
not fall under this licence at all, and may be placed under any
|
||||
|
||||
|
||||
licence the author wishes. The authors explicitly lay no claim to,
|
||||
|
||||
|
||||
and assert no rights over, any programs written by other people and
|
||||
|
||||
|
||||
assembled into object form by the Software.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
VII. You may not copy, modify or distribute the Software except
|
||||
|
||||
|
||||
under the terms given in this licence document. You may not
|
||||
|
||||
|
||||
sublicense the Software or in any way place it under any other
|
||||
|
||||
|
||||
licence than this one. Since you have not signed this licence, you
|
||||
|
||||
|
||||
are not of course required to accept it; however, no other licence
|
||||
|
||||
|
||||
applies to the Software, and nothing else grants you any permission
|
||||
|
||||
|
||||
to copy, modify, sublicense or distribute the Software in any way.
|
||||
|
||||
|
||||
These actions are therefore prohibited if you do not accept this
|
||||
|
||||
|
||||
licence.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
VIII. There is no warranty for the Software, to the extent permitted
|
||||
|
||||
|
||||
by applicable law. The authors provide the Software "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 Software is with you. Should the Software prove
|
||||
|
||||
|
||||
defective, you assume the cost of all necessary servicing, repair or
|
||||
|
||||
|
||||
correction.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IX. In no event, unless required by applicable law or agreed to in
|
||||
|
||||
|
||||
writing, will any of the authors be liable to you for damages,
|
||||
|
||||
|
||||
including any general, special, incidental or consequential damages,
|
||||
|
||||
|
||||
arising out of the use or the inability to use the Software,
|
||||
|
||||
|
||||
including but not limited to loss of data or data being rendered
|
||||
|
||||
|
||||
inaccurate or a failure of the Software to operate with any other
|
||||
|
||||
|
||||
programs, even if you have been advised of the possibility of such
|
||||
|
||||
|
||||
damages.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
X. In addition to what this Licence otherwise provides, the Software
|
||||
|
||||
|
||||
may be distributed in such a way as to be compliant with the GNU
|
||||
|
||||
|
||||
General Public Licence, as published by the Free Software Foundation,
|
||||
|
||||
|
||||
Cambridge, MA, USA; version 2, or, at your option, any later version;
|
||||
|
||||
|
||||
incorporated herein by reference. You must include a copy of this
|
||||
|
||||
|
||||
Licence with such distribution. Furthermore, patches sent to the
|
||||
|
||||
|
||||
authors for the purpose of inclusion in the official release version
|
||||
|
||||
|
||||
are considered cleared for release under the full terms of this
|
||||
|
||||
|
||||
Licence.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
XI. The authors of NASM are the original authors (Simon Tatham and
|
||||
|
||||
|
||||
Julian Hall) and all those who the original authors feel have
|
||||
|
||||
|
||||
contributed significantly to the overall project. If you wish to
|
||||
|
||||
|
||||
contact the authors, Julian Hall (jules@earthcorp.com) should be your
|
||||
|
||||
|
||||
first port of call.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
XII. Should any part of this agreement be deemed unenforcable, it is
|
||||
|
||||
|
||||
intended that the remainder of the agreement be held in force.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
END OF LICENCE AGREEMENT
|
||||
|
||||
|
179
bin/nasm/Readme
Executable file
179
bin/nasm/Readme
Executable file
@ -0,0 +1,179 @@
|
||||
This is a distribution of NASM, the Netwide Assembler. NASM is a
|
||||
prototype general-purpose x86 assembler. It will currently output
|
||||
flat-form binary files, a.out, COFF and ELF Unix object files,
|
||||
Microsoft Win32 and 16-bit DOS object files, OS/2 object files, the
|
||||
as86 object format, and a home-grown format called RDOFF.
|
||||
|
||||
Also included is NDISASM, a prototype x86 binary-file disassembler
|
||||
which uses the same instruction table as NASM.
|
||||
|
||||
To install NASM on UNIX or Linux, type `./configure', then `make', and
|
||||
then either `make install', or copy the file `nasm' (and maybe
|
||||
`ndisasm') to a directory on your search path (maybe /usr/local/bin,
|
||||
or ~/bin if you don't have root access). You may also want to copy the
|
||||
man page `nasm.1' (and maybe `ndisasm.1') to somewhere sensible. Note
|
||||
that source and binaries are also available in RPM format; to install
|
||||
an RPM on a system which uses this packaging format (mostly Linux
|
||||
distributions) simply do "rpm -Uivh filename.rpm".
|
||||
|
||||
To install under DOS, if you don't need to rebuild from the sources,
|
||||
you can just copy either nasm.exe and ndisasm.exe (32-bit DOS-extended
|
||||
versions), nasmr.exe and ndisasmr.exe (16-bit classical DOS
|
||||
executables), or nasmw.exe and ndisasmw.exe (Win32 console
|
||||
applications - less likely to run out of memory), to somewhere on your
|
||||
PATH.
|
||||
|
||||
The 32-bit applications require a DPMI server. If you're running
|
||||
under plain DOS and don't have a DPMI server already, you can get
|
||||
CSDPMI from ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2misc/.
|
||||
|
||||
To rebuild the DOS sources, various makefiles are provided:
|
||||
|
||||
- Makefile.dos, the one I build the standard 16-bit releases from,
|
||||
designed for a hybrid system using Microsoft C and Borland Make
|
||||
(don't ask why :-)
|
||||
- Makefile.vc, for Microsoft Visual C++ compiling to a Win32
|
||||
command-line application. This is the one I build the standard
|
||||
Win32 release binaries from.
|
||||
|
||||
- Makefile.bor, for Borland C.
|
||||
- Makefile.bc2, also for Borland C, contributed by Fox Cutter.
|
||||
Reported to work better than Makefile.bor on some systems.
|
||||
|
||||
- Makefile.sc, for Symantec C++, compiling to a 32-bit extended DOS
|
||||
executable.. Contributed by Mark Junker.
|
||||
- Makefile.scw, also for Symantec C++, compiling to a Win32 command-
|
||||
line application. Also contributed by Mark Junker.
|
||||
|
||||
- Makefile.wc, for Watcom C, compiling to a 32-bit extended DOS
|
||||
executable. Contributed by Dominik Behr.
|
||||
- Makefile.wcw, also for Watcom C, compiling to a Win32 command-
|
||||
line application. Also contributed by Dominik Behr.
|
||||
|
||||
- Makefile.dj, for DJGPP, compiling to a 32-bit extended DOS
|
||||
executable. Contributed by Dominik Behr.
|
||||
|
||||
- Makefile.lcc, for lcc-win32, compiling to a Win32 command line
|
||||
application. (The lcc-win32 compiler and tools are available from
|
||||
http://www.remcomp.com/lcc-win32/)
|
||||
|
||||
I can't guarantee that all of those makefiles work, because I don't
|
||||
have all of those compilers. However, Makefile.dos and Makefile.vc
|
||||
work on my system, and so do Makefile.bor and Makefile.bc2.
|
||||
|
||||
Be careful with Borland C: there have been various conflicting
|
||||
reports about how reliable the Huge memory model is. If you try to
|
||||
compile NASM in Large model, you may get DGROUP overflows due to the
|
||||
vast quantity of data in the instruction tables. I've had reports
|
||||
from some people that Huge model doesn't work at all (and also
|
||||
reports from others that it works fine), so if you don't want to try
|
||||
moving to Huge, you could try adding the option `-dc' to the
|
||||
compiler command line instead, which causes string literals to be
|
||||
moved from DGROUP to the code segments and might make Large model
|
||||
start working. (Either solution works for me.)
|
||||
|
||||
To rebuild truly from scratch, or to make any changes to insns.dat or
|
||||
standard.mac, you need a Perl interpreter installed. Perl
|
||||
interpreters are available for a number of platforms, from:
|
||||
|
||||
http://www.cpan.org/ports/
|
||||
|
||||
For DOS you can also get one from:
|
||||
|
||||
ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2gnu/
|
||||
|
||||
Dominik Behr has also contributed the file misc/pmw.bat, which is a
|
||||
batch file to turn the output from Makefile.wc (NASM.EXE and
|
||||
NDISASM.EXE) into standalone executables incorporating Tran's
|
||||
PMODE/W DOS extender, rather than depending on an external extender
|
||||
program.
|
||||
|
||||
Some of the Windows makefiles produce executables called nasmw.exe
|
||||
and ndisasmw.exe, and some don't. Be prepared for either...
|
||||
|
||||
If you want to build a restricted version of NASM containing only
|
||||
some of the object file formats, you can achieve this by adding
|
||||
#defines to `outform.h' (see the file itself for documentation), or
|
||||
equivalently by adding compiler command line options in the
|
||||
Makefile.
|
||||
|
||||
There is a machine description file for the `LCC' retargetable C
|
||||
compiler (version 4.0), in the directory `lcc', along with
|
||||
instructions for its use. This means that NASM can now be used as
|
||||
the code-generator back end for a useful C compiler.
|
||||
|
||||
Michael `Wuschel' Tippach has ported his DOS extender `WDOSX' to
|
||||
enable it to work with the 32-bit binary files NASM can output: the
|
||||
original extender and his port `WDOSX/N' are available from his web
|
||||
page, http://www.geocities.com/SiliconValley/Park/4493.
|
||||
|
||||
Matt Mastracci has written a document explaining how to write
|
||||
assembly language modules in DJGPP programs using NASM: it's on his
|
||||
web site at http://www.ucalgary.ca/~mmastrac/djgppasm.doc.
|
||||
|
||||
The `misc' directory contains `nasm.sl', a NASM editing mode for the
|
||||
JED programmers' editor (see http://space.mit.edu/~davis/jed.html
|
||||
for details about JED). The comment at the start of the file gives
|
||||
instructions on how to install the mode. This directory also
|
||||
contains a file (`magic') containing lines to add to /etc/magic on
|
||||
Unix systems to allow the `file' command to recognise RDF files, and
|
||||
a zip file (`exasm.zip') containing the necessary files for syntax
|
||||
highlighting in the Aurora DOS editor. (The Aurora files were
|
||||
contributed by <U993847220@aol.com>; I haven't tested them as I
|
||||
don't have Aurora.)
|
||||
|
||||
The `rdoff' directory contains sources for a linker and loader for
|
||||
the RDF object file format, to run under Linux, and also
|
||||
documentation on the internal structure of RDF files.
|
||||
|
||||
For information about how you can distribute and use NASM, see the
|
||||
file Licence. We were tempted to put NASM under the GPL, but decided
|
||||
that in many ways it was too restrictive for developers.
|
||||
|
||||
For release 0.98 and later, the NASM source distribution contains the
|
||||
following components:
|
||||
|
||||
Unix Windows, OS/2 DOS
|
||||
|
||||
nasm-X.XX.tar.gz nasm-X.XX.zip nasmXXXs.zip
|
||||
|
||||
Main archive: Contain all sources you need to build NASM,
|
||||
plus the documentation source code. If you have a Perl
|
||||
interpreter and (possibly) Winhelp compiler installed, you
|
||||
don't need any additional files.
|
||||
|
||||
nasm-X.XX-xdoc.tar.gz nasm-X.XX-xdoc.zip nasmXXXd.zip
|
||||
|
||||
Documentation in HTML, INFO, text, and PostScript format.
|
||||
You can compile these files yourself from the main archive
|
||||
if you have a Perl interpreter installed.
|
||||
|
||||
N/A nasm-X.XX-whlp.zip N/A
|
||||
|
||||
Documentation in Windows help format. You can compile this
|
||||
file yourself from the main archive if you have a Perl
|
||||
interpreter and a Winhelp compiler installed.
|
||||
|
||||
The Unix, Windows-OS/2, and DOS versions differ in the following ways:
|
||||
|
||||
The Unix version uses the Unix line ending convention (LF), and long file
|
||||
names with upper and lower case.
|
||||
|
||||
The Windows-OS/2 version uses the Microsoft line ending convention
|
||||
(CR+LF), and long file names with upper and lower case.
|
||||
|
||||
The DOS version uses the Microsoft line ending convention (CR+LF),
|
||||
with all filenames in 8.3 monocase.
|
||||
|
||||
For information about how to use NASM, see the various forms of
|
||||
documentation in the `doc' directory: documentation is provided in
|
||||
HTML, PostScript, plain text, Texinfo, and Windows Help formats. For
|
||||
information about how to use NDISASM, see `ndisasm.doc'. For
|
||||
information about the internal structure of NASM, see
|
||||
`internal.doc'. (In particular, _please_ read `internal.doc' before
|
||||
writing any code for us...)
|
||||
|
||||
The NASM web page is at http://www.cryogen.com/Nasm/
|
||||
|
||||
Bug reports (and patches if you can) should be sent to
|
||||
<hpa@zytor.com>.
|
BIN
bin/nasm/nasmw.exe
Executable file
BIN
bin/nasm/nasmw.exe
Executable file
Binary file not shown.
BIN
bin/nasm/ndisasmw.exe
Executable file
BIN
bin/nasm/ndisasmw.exe
Executable file
Binary file not shown.
Reference in New Issue
Block a user