MACRO-11
MACRO-11 is an assembly language with macro facilities, designed for PDP-11 minicomputer family from Digital Equipment Corporation (DEC). It is the successor to Program Assembler Loader (PAL-11R), an earlier version of the PDP-11 assembly language without macro facilities. MACRO-11 was supported on all DEC PDP-11 operating systems. PDP-11 Unix systems also include an assembler (named as), structurally similar to MACRO-11, but with different syntax and fewer features. The MACRO-11 assembler (and programs created by it) could also run under the RSX-11 compatibility mode of OpenVMS on VAX.[1] Programming exampleA complete "Hello, World!" program in PDP-11 macro assembler, to run under RT-11: .TITLE HELLO WORLD
.MCALL .TTYOUT,.EXIT
HELLO:: MOV #MSG,R1 ;STARTING ADDRESS OF STRING
1$: MOVB (R1)+,R0 ;FETCH NEXT CHARACTER
BEQ DONE ;IF ZERO, EXIT LOOP
.TTYOUT ;OTHERWISE PRINT IT
BR 1$ ;REPEAT LOOP
DONE: .EXIT
MSG: .ASCIZ /Hello, world!/
.END HELLO
The If this file is HELLO.MAC, the RT-11 commands to assemble, link and run (with console output shown) are as follows: .MACRO HELLO
ERRORS DETECTED: 0
.LINK HELLO
.R HELLO
Hello, world!
.
(The RT-11 command prompt is " For a more complicated example of MACRO-11 code, two examples chosen at random are Kevin Murrell's KPUN.MAC, or Farba Research's JULIAN routine. More extensive libraries of PDP-11 code can be found in the Metalab freeware and Trailing Edge archives.[2][3] References
External links
|