Skip to content

HACTRN basics

Lars Brinkhoff edited this page Sep 8, 2023 · 6 revisions

HACTRN is the first program the user interacts with when having logged in. It's another name for the debugger DDT, which is used to start and control programs, and to manipulate the file system. It's similar to, but much more powerful than the non-timesharing DDT which is used to start and debug ITS itself.

Many HACTRN commands come in two versions: a colon command and a DDT command. Colon commands start with a colon, followed by a name. DDT commands are control characters, or have an Altmode prefix, or both. Colon commands may be easier to learn and remember in the beginning, but DDT commands have stronger fluidity in use and have the same user experience as TECO and EMACS. Beginners are encouraged to use the DDT commands from the start.

A running programs is called a job. DDT can manage up to eight jobs. Each job may in turn have subjobs. You can usually suspend the current job by typing ^Z, but it will remain waiting in the background.

HACTRN remembers the last file name you typed to it; this is called file name defaults. When you type a file name, missing components will be filled in from the defaults, and then defaults are updated.

Some important HACTRN commands are:

DDT command Colon command Meaning
foo$U :LOGIN foo Log in as user foo.
$$U :LOGOUT Log out.
:HELP Brief help.
:? List all colon commands.
^F :LISTF List files in current directory.
foo^F :LISTF foo List files in foo, which may be a device or directory.
foo$$^S :CWD foo Change current directory to foo.
^Rfoo :TYPE foo Print the file foo on the display.
foo^K :foo Start program named foo.
^Z Suspend current job.
$$V :LISTJ List jobs.
$J :JOB Switch to the next job in the list.
foo$J :JOB foo Switch to the job named foo.
$^X. :KILL Kill current job.
foo$^X Kill job named foo.
$P :CONTINUE Resume current job.
^P :PROCED Run current job in the background.