Skip to content
Lars Brinkhoff edited this page Sep 13, 2023 · 1 revision

ITS has imported some software from WAITS, the Stanford AI laboratory operating system. To facilitate this, there is an emulator for WAITS system calls called DECUUO. This can be used to run WAITS programs. In order to assemble those programs, ITS has a copy of Stanford's FAIL assembler. FAIL is a native ITS program that generates a relocatable file for ITS' linker STINK.

HELLO; HELLO FAI is a sample "hello world" FAIL program that uses WAITS system calls. It can be assembled like this:

*:cwd hello
*fail^K
*hello fai
*^C
*$^X.

This will produce a relocatable file HELLO REL. Next, the file must be linked. To do this, we type :stink hello to run STINK with the linker script HELLO LOADER. When STINK is done, it will leave the linked program in memory as the current job. Because it's a WAITS program, we end with a twist: we merge in the DECUUO boostrap and set the job start address.

:stink hello
*$$1L decsys; decbot bin
*.jbsa/ start
*:pdump ts hello

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