[comp.sys.ibm.pc] ASMHELP - makes life easier for the MASM user

mrk@gvgspd.UUCP (Michael R. Kesti) (10/31/87)

Here's my Halloween treat for the net.  I started this about two years ago,
and it continues to evolve, but has been stable for some months now.  I hope
you find it useful!

------

The files contained in this archive were written to facilitate the creation
of assembly language programs for IBM-PC and compatible computers running
PC-DOS or MS-DOS using the Microsoft MASM assembler.

BIOS_DOS.DOC is a text file that documents the ROM BIOS and DOS services
	available to these computers.

BIOS_DOS.INC is an include file that symbolically defines the interrupt and
	function numbers of these services.

EQUATES.INC defines a number of symbols commonly used in assembly language
	programs for these computers.

COM.ASM and EXE.ASM are templates for programs intended to be .COM and .EXE
	files, respectively.

SBR_HDR.TPL is a "standard" subroutine header.

MAKECOM.BAT, MAKEEXE.BAT, and MAKESYS.BAT are batch files that perform the
	required MASM, LINK, and EXE2BIN calls required to translate source
	files to executable .COM, .EXE, and .SYS files, respectively.

begin 0666 asmhelp.arc
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
M(P[/X3KL*T4P'S&C2-",DHTA^%^CZ=<N8S#!