This is a modified version of NASM, modified and released by H. Peter Anvin ; it is not the original form released by the NASM authors. For release 0.98p3.3: * Patch from Conan Brink to allow nesting of %rep directives. * If we're going to allow INT01 as an alias for INT1/ICEBP (one of John's J4 changes), then we should allow INT03 as an alias for INT3 as well. * Updated changes.asm to include the latest changes. * Tried to clean up the s that had snuck in from a DOS/Windows environment into my Unix environment, and try to make sure than DOS/Windows users get them back. * We would silently generate broken tools if insns.dat wasn't sorted properly. Change insns.pl so that the order doesn't matter. * Fix bug in insns.pl (introduced by me) which would cause conditional instructions to have an extra "cc" in disassembly, e.g. "jnz" disassembled as "jccnz". For release 0.98p3.2: * Merged in John S. Fine's changes from his 0.98-J4 prerelease; see http://www.csoft.net/cz/johnfine/ * Changed previous "spotless" Makefile target (appropriate for distribution) to "distclean", and added "cleaner" target which is same as "clean" except deletes files generated by Perl scripts; "spotless" is union. * Removed BASIC programs from distribution. Get a Perl interpreter instead (see below.) * Calling this "pre-release 3.2" rather than "p3-hpa2" because of John's contributions. * Actually link in the IEEE output format (zoutieee.c); fix a bunch of compiler warnings in that file. Note I don't know what IEEE output is supposed to look like, so these changes were made "blind". For release 0.98p3-hpa: * Merged nasm098p3.zip with nasm-0.97.tar.gz to create a fully buildable version for Unix systems (Makefile.in updates, etc.) * Changed insns.pl to create the instruction tables in nasm.h and names.c, so that a new instruction can be added by adding it *only* to insns.dat. * Added the following new instructions: SYSENTER, SYSEXIT, FXSAVE, FXRSTOR, UD1, UD2 (the latter two are two opcodes that Intel guarantee will never be used; one of them is documented as UD2 in Intel documentation, the other one just as "Undefined Opcode" -- calling it UD1 seemed to make sense.) * MAX_SYMBOL was defined to be 9, but LOADALL286 and LOADALL386 are 10 characters long. Now MAX_SYMBOL is derived from insns.dat. * A note on the BASIC programs included: forget them. insns.bas is already out of date. Get yourself a Perl interpreter for your platform of choice at: http://www.cpan.org/ports/index.html