Skip to content

MACRO‐10

Lars Brinkhoff edited this page Sep 13, 2023 · 3 revisions

ITS has imported some DEC software. To facilitate this, there is an emulator for TOPS-10 system calls called DECUUO. This can be used to run TOPS-10 programs. In order to assemble those programs, ITS has a copy of MACRO-10 that runs under DECUUO. It can be run just like any other ITS program, with the name MACRO.

HELLO; HELLO MAC is a sample "hello world" MACRO-10 program. It can be assembled like this:

*:cwd hello
*macro^K
*hello=hello.mac
*^C
*$^X.

This will produce a relocatable file HELLO REL. Note how MACRO-10 is using a TOPS-10 file name HELLO.MAC in the input. This is translated by DECUUO to an ITS file name HELLO MAC.

Next, the file must be linked. To do this, we invoke another DEC program called LOADER. When LOADER is done, it will leave the linked program in memory as the current job. Because it's a TOPS-10 program, we end with a twist: the magic 45$g command invokes DECUUO to massage the program for running on ITS.

*:dec sys:loader
*hello/g
*45$g
Command: dump
*:pdump ts hello

:pdump is the DDT command to write an executable file. The TS HELLO file is now ready to run.

Clone this wiki locally