** You can run/experience DMF on my ALTAIR simulator **

Note: This disk contains some of my earliest code - written a long time
      ago when I was much less experienced - please view accordingly.

 As most of this code was actually edited and assembled on the ALTAIR, the
 source had to be "small". I hadn't discovered TABS at that time, so some of
 my source files have single spaces - my EDITor/assembler would auto space
 when viewing lines - I tried to reformat to look better in subsequent years,
 but did "miss" a few files - sorry!

** In the early 1980s I had my ALTAIR decked out with a whopping 64k of RAM!
E800-EBFF was "deselected" for the NorthStar floppy disk controller. NorthStar
DOS loaded at 2000-29FF giving a max program size of 2A00-E800 (47.5k).
I designed DMF which loaded at EF00 and put user code at 0100 (8080 vectors
were at 0) giving a max program size of 0100-E800 (57.75k - much better)!

** I was at university at the time, using an IBM MVS system daily: I called
my OS a very "IBM" sounding name: Device Management Facility


This is the source to the DMF operating system and utilites.

To determine the address where a utility should be assembled, view the
directory listing of the DMF boot disk. Note that since the editor loads
at 0100, and uses a lot of memory when editing large source files, you
often have to place the assembled code at a different address than where
it will ultimately run.

Example rebuild of DISK command: (Boot DMF and mount DMFSRC1 in drive2)
  .EDIT DISK.ASM,2         <= Load source file
  .AE 100 D000             <= Asm for 100, put at D000
  .Q                       <= Exit editor
  .SAVE DISK.OBJ D000      <= Save new DISK image

Note when rebuilding DMF that it must be origined at EF00, due to the
UPI block occupying the first 256 bytes of the image:
  .EDIT DMF.ASM,2          <= Load source file
  .AE EF00 D000            <= Asm for EF00, put at D000
  .Q                       <= Exit editor
  .SAVE DOS.SYS D000       <= Save new DOS image

--- BASIC ---
BASIC was originally cross developed on a mainframe computer and ported to
DMF some time later - the original source file was too large to load into
memory on the Altair, so I removed the line comments to make it fit.
see ASMFMT.C

To rebuild: (Boot DMF and mount DMFSRC2 in drive 2)
  .EDIT BASIC.ASM,2                <= Load the .ASM file
  .AE 100 D000                     <= Asm for 100, put at D000
  .Q                               <= Quit back to OS
  .SAVE BASIC.OBJ D000             <= Save new BASIC image
