Microsoft Macro Assembler v 1.27 May. 1984
1.ADDENDUM TO MICROSOFT MACRO ASSEMBLER:
The following describes the differences between Microsoft Macro Assembler
versions 1.25 and 1.27:
- IFB & IFNB have been corrected
- Recognizes memory greater than 512K
- fsubr, fdiv & fdivr have been corrected
2.ADDENDUM TO MICROSOFT LINK:
The following describes the differences between Microsoft LINK versions
2.00 & 2.44:
A.Now allows for up to 1000 segments to be linked together
B.MS-LINK SWITCHES ADDENDUM (Page 2-11)
/NO - should be changed to /NOD (NODEFAULTLIBRARYSEARCH)
/NOGROUPASSOCIATION - Overrides the standard Group Association.
This is documented for Historical Purposes only, users of
Microsoft Macro Assembler should not have any reason to use it.
/NOIGNORECASE - By default, "FOO", "foo", and "Foo" are treated
by the linker as being equivalent. If /NOIGNORECASE is
specified, then they are all different symbols.
/CPARMAXALLOC:NNNN - By default, the cparMaxAlloc field(at offset
#0C) in the EXE header(see chapter 5 in the MS-DOS Programmer's
Reference) is set to 65535. This switch allows you to set the
value to any number between 1 and 65535; if the value you specify
is less than the computed value of cparMinAlloc, the linker will
use the value of cparMinAlloc(at offset #0A) instead. If you
are running programs under MS-DOS 1.25, you should not use the
switch.
/OVERLAYINTERRUPT:NNNN - By default, the interrupt number used for
passing control to overlays is CD hexadecimal. The overlay
interrupt switch allows the user to select a different interrupt
number. NNNN can be any of the following:
- A decimal number from 0 to 255(numbers that conflict with
MS-DOS interrupts are not prevented, but their use is
indivisable).
- An octal number from 0 to 377. A number is interpreted
as octal if it starts with a zero, e.g., 10 is 10 decimal
but 010 is 8 decimal.
- A hexadecimal number from 0 to FF. A number is interpreted
as hexadecimal if it starts with "0x". Thus, 10 is decimal
ten, 010 is 8 decimal, and 0x10 is 16 decimal.
3.ADDENDUM TO MICROSOFT LIB:
The following describes the differences between Microsoft LIB
Versions 2.00 & 2.20:
A.Summary of Enhancements to the Microsoft Library Manager:
o The contents of one library file may be added to another simply by
specifying the library file name as the argument to the addition
operator ("+"). Make sure to use the '.LIB' extension or LIB
Lib will look for a file with '.OBJ' extension instead.
o The internal page size is variable; thus, the amount of wasted
space inside libraries can be reduced.
o The user may specify a name other than the original name for
modified library. The primary benefit of this feature is that
the user may place the modified library on a different disk drive
than the original library.
o If the original name is to be used for a modified library, then
the old version is saved under the same name, except that its
extension is replaced with ".BAK". Thus, if an error occurs
during operations on an existing library, the user can recover.
o The user is no longer limited to a maximum of 1000 public symbols
within a single library. The maximum is now on the order of 3000
to 9000 symbols depending upon whether symbols average more or
less than 9 characters in length.
o New operators have been defined, thus simplifying replacement,
extraction and deletion of modules.
B.The format of the Library Command Line (from MS-LIB Manual -
Page 2-3) is:
LIB <library file><page size switch><operations>,<list file>,<new library>
where:
<library file> - is the DOS file name of a library file
<pagesize switch> - (NEW FEATURE) is an optional switch of the form:
"/pagesize:N", where N equals 2**n and 4 <= n <=15.
- If you are using the Command Prompt or a Response File,
the "/pagesize:N" switch should be placed immediately
after the <library file>.
- The default for the pagesize switch is 512 if the library
is being created, or the current page size, if the
library is being modified.
<operations> - is a list of actions to perform
<list file> - is a DOS file name where a cross-reference
listing will be placed
<new library> - (NEW FEATURE) is the DOS file name of a library
file to create with the modifications specified by the operations
or the page size switch or both.
- The default for <new library> is the original library
file name(the original will be renamed with an extension
of .bak instead of .lib)
C.The following Command Characters (Operators) have been added and ar
recognized by the Library Manager (MS-LIB Manual Pages 2-9 through 2-11):
-+ Replace an object module with the contents of the object file of
the same name (plus ".OBJ")
-* Delete an object module and at the same time extract it
for example:
To replace HEAH in the library with a newer version, the user would
type:
LIB PASCAL -+ HEAH;