On 15 Jul 2009 at 9:51, Dave Dunfield wrote:
Just curious - I don't know if I ever saw a
Microsoft branded
version of MASM 1.0 - I have the complete IBM "Macro Assembler
by Microsoft" package, which is packaged in a pink PC format
binder with about an inch thickness of paper - I've saw a lot
of products in that era with much worse documentation.
That's the one I'm talking about. I'm not sure if MS ever sold the
1.0 version as a retail product.
There are two assemblers in the package, ASM which is
without
macros and requires 64k and MASM which does support macros and
requires 96k - someone scoffed at this, but it seems reasonable
to provide a limited version for a very small memory footprint
system (many vendors did this in the days of limited memory).
It does state that if you have 96k you can run either assembler,
so I don't think it has anything to do with needing to architect
if differently for different amounts of memory.
Correct. ASM was useful if you had the original fully-populated 64K
5150. I found that so limiting, I purchased a Quadram Quadboard
shortly thereafter.
We used this package a lot in some early PC product
development,
and I do recall that it was slow and had a number of quirks, but
we did produce a lot of working code with it. I also recall that
when we upgraded to MASM 4 is was *much* better (in fact I still
have it installed and use it from time to time).
What's remarkable is that MASM 2.x and 3.x versions can be hard to
find nowadays. I think 1.0 scared the dickens out of the market for
a time. I recall that MS/IBM released a corrective service pack
with something over 100 bug fixes.
It's interesting that Microsoft's Z80 assembler, M80 was fairly
robust--I used it extensively, even later under emulation, even
though I also had the Avocet Z80 cross-assembler.
Now, if someone would bring the microcontroller assemblers (PIC, AVR)
up to the level of MASM 6.x (or even the F level S/360 Assembler, or
CDC COMPASS) in terms of flexibility, I could die happy. What's
insane is that the current PIC assembler (MPASMWIN) executable is
over 8 MB. I know--welcome to the 21st century--nobody writes
assembly anymore.
--Chuck