Ready.
Here, we have an example of form@fix directly talking in the machine code/language, with a computer.
\\To craft a .com file \F "fixDC.htm"
First, a few goodies, for our convenience. We can construct these on the ARZ, the work-area. We must locate at after the range that will contain the written-output code. Since the final application is less than 100 bytes, for this example, to locate our goodies starting at byte-offset 0x300, is more than enough. An alternative was to frame-in the file fix8086.htm - with a lot of mnemonics listed.
\\Arrive at offset 0x300, on the ARZ \r! z \a 300 \\ A few i8086 assembly mnemonics ... \r int21h \*= 2 0xcd 0x21 \r AH=b \*= 1 0xb4 \r eBX=i \*= 1 0xbb \r eCX=i \*= 1 0xb9 \r eDX=i \*= 1 0xba \r StdOut \*=. 1 \r length(HeavenoStr) \*=. 17 \a z \\return to where we were.
\\The array/string must exist in file. \\We define it here. \r azHeaveno \'Heaveno, World!\r\n' //The size of azHeaveno was defined with // the goodies. No problem. That pointer // is not needed at run-time. //We could also write "\*=. 17" instead // of writing "\@ length(HeavenoStr)" \\Start running here. \F@ fixStArt \\Write azHeaveno to stdout \\ through DOS-int21h (AH=0x40) \_ AH=b \*= 0x40 \_ eBX=i \@ StdOut \_ eCX=i \@ length(HeavenoStr) \_ eDX=i \* azHeaveno \_ int21h \\Quit to DOS through DOS-int21h(AH=0x4c). \_ AH=b \*= 0x4c \_ int21h \\Write the file \F== heaveno.com \\Exit the form@fix session \A--
Make sure that the include file "fixDC.htm" is in the path, for form@fix to find that. You may simply save this file on disk, to run form@fix with it.
A point you may notice, is that I gave a long name to this file. If you save this file on disk with a short name (at most eight letters), that would be fine. This may be needed, because the form@fix version you are using may have that limitation of MS-DOS, but the platform you are using may not.
Or, you may save it with a "fix" extension, and associate all fix-extension files with the fix.exe. Then, you may launch it from the Windows shell (or, on other such platforms) by double-clicking on it.