====== FAIL Assembler ====== **FAIL** is the winning assembler from Stanford SAIL. It was originally written for the WAITS operating system, but was ported to TOPS-20 and is now available on twenex.org. From the help file: FAIL is a fast, one-pass assembler for the DECsystem-10/DECsystem-20. FAIL is documented in DOC:FAIL.MANUAL. Although FAIL is a great deal faster than MACRO-20, which is the DEC-supplied assembler, new programs should be written in MACRO because MACRO has a wider set of features to support complex assemblies and extended addressing, e.g., PSECT. FAIL is not entirely compatible with MACRO-20, differing most notably in its macro capabilities, and its support for ``block structured'' symbols. FAIL is unsupported. FAIL works with the TOPS-20 build commands (''EXECUTE'', ''COMPILE'', ''LOAD''). The standard source file extension is ''.FAI''. There is a complete manual on-line in ''DOC:FAIL.MANUAL''. An older version of the manual is available at [[http://www.bitsavers.org/pdf/stanford/sail/STAN-CS-74-407_FAIL_Apr74.pdf|Bitsavers']]. Here's a working Hello program. Save the following program in file ''HELLO.FAI'', then assemble, link, and run it with ''@EXEC HELLO'': ; Hello program in FAIL assembly start: hrroi 1,[asciz/Hello, World!/] PSOUT HALTF jrst start end start