On Sat, 3 Oct 2020, Will Senn via cctalk wrote:
2. Most of the Assembly examples use DOS interrupt 21 for output. Is this typical of assembly programs of the time, or did folks use other methods?

For simple stuff, Int21H works and is portable to anything running MS-DOS.

Int10H is less portable.  Not as commonly used.

If you need SPEED, which all commercial software perceived a need for, then you need to determine WHERE video memory is (segment B000H for MDA, segment B800H for CGA, with TEXT modes of EGA/VGA also using those), and put bytes/words directly into video memory. REP MOVSW was generally the quickest way to put up a screenful of stuff (avoid segment over-ride because REP MOVSW lost that if an interrupt occured in mid transfer)


Keyboard input could be done with Int21H, Int16h, or accessing memory in the BIOS segment.

3. I was able to find a lot of 5150/5160 and other manuals, but I couldn't find an IBM Macro Assembler 2.0 manual (there are plenty of IBM Macro Assembler/2 manuals, but those are for OS/2, not DOS). Does anyone know where I can find one online?

MASM manual??!?
MASM 5.0 was the first version to have documentation that a sane person could say was adequate.
The MASM 5.00 manualS were pretty usable for the earlier MASM.

I used Lafore as textbook for my assembly language class


4. In y'all's view, what are the significant differences between IBM PC-DOS 2.10 and it's brother MS-DOS 2.x?

2.00 to 2.10 was minor changes. Perhaps the most significant was that the PCJr used the QumeTrak 142 (early half-height) drives, which were TOO SLOW for 2.00, so PC-DOS 2.10 slowed down the DOS track to track access time.

2.11 was MS-DOS ONLY, not PC-DOS. It was one of the favorite ones for OEMs to patch for different video or different drives (such as 720K 3.5")
PC-DOS didn't get 3.5" drives until PC-DOS 3.20.
PC-DOS 3.30 added 1.4M If you want CD-ROM, 3.10 added the "network redirector".

MS-DOS (NOT PC-DOS) 3.31, another favorite for patching, was the first to support hard drives larger than 32M

PC-DOS 4.00 was unpopular, partially becaause IBM didn't pre-warn Norton to revise their fUtilities.

MS-DOS 5.00 was the first to be sold RETAIL (not gray-market from an OEM), and added such things as SETVER (so LINK and EXe2BIN didn't need patching for DOS versions).

MS-DOS 6.00 added a whole cartful of bundled aftermarket add-ons, including compression, SMARTDRV disk cacheing, etc. PC-DOS 6.10 had a cartful of different aftermarket brands of the same add-ons.

MS-DOS 6.20 was the first version of MS-DOS for which imporving reliability was primary goal! (instead of adding smell-o-vision, dancing kangaroos and yodelling jellyfish) It backed off the settings for SMARTDRV so that disks didn't get trashed (incorrectly blamed on compression)
6.21 was same, without compression due to copyright lawsuit(s).
6.22 was same with non-infringing compression

5. I'm thinking of moving on to 3.3 at some point, in your view, what are the advantages?
Consider 3.31, instead of 3.30, to get larger drive support.


Bob Wallace (MICROS~1 10th? employee) wrote the IBM PASCAL. He advised me to NOT use the run-time library.


--
Grumpy Ol' Fred                 ci...@xenosoft.com

Reply via email to