
DLSA is the DownLoad for Source Ascii files. ID RECL=0 KL=0 FABL=1 DBL=4
DLTXT is for TEXT files                      ID or SQ RECL=0 KL=0 FABL=1 DBL=4
DLRO is for Relocatable Object Modules       SQ RECL=256    FABL=1 DBL=4
DLMX is for S-Rec files                      SQ RECL=0      FABL=1 DBL=4
DLLO is for Load Modules.                    CN 

WARNING - DLSA,DLRO and DLMX do NOT delete a file. They overwrite it. 
This means that if the file is not already the right 
type(ID,SQ, RECL=0, RECL=xx), chances are, something will fail. 
You might want to delete the file first if you know the type is wrong.
DLLO always deletes the file, so it can change the size.

DLTXT has a table of file types and attempts to select the right type based on 
the extention. This should reduce the chances that a file will be created with 
the wrong type. However, if an existing file's type is not correct, DLTXT will 
NOT change it, unless the file is deleted. Overwritting leaves an existing 
file's type unchanged. 

(NOTE - DLTXT will also correctly process MX, and List Files - sequential text)

(NOTE - If possible, you should overwrite files, rather than delete them)

ULTXT is for uploading text files .SA .LL .LS .CF .AI ETC....
   ID RECL=0 KL=0 and SQ RECL=0 formatted ASCII (expands spaces and adds CR LF 
   to each record)
ULBIN is for uploading binaryfiles like .LO .RO .DB .RS  ETC...  
   CN or SQ RECL=256 max  (image transfer - nothing added)

(NOTE - ULTXT and ULBIN will work on any file type, they simply proccess the 
file as though it is Text or Binary. Both, limit the record size to 256 max)

WARNING - some files might require a special program to Download. 
For instance .... the ERRORMSG.SY file is a IK KeyL=4 RECL=0 text file. 
Keys are binary formated, but the rest of the line is ascii formatted. 
And uploading produces something that may not be usefull, since the keys 
are binary.

first open a DLOAD file via the File->DLOAD menu item, then in versados...

=DLTXT <filespec>;<opt>  opt=A|C|F|P|W
=DLSA <filespec>;<opt>   opt=A|C|F|P|W
=DLMX <filespec>   
=DLRO <filespec>;<opt>   opt=T|P
=DLLO <filespec>;<opt>   opt=T|P

=ULTXT <filespec> 
=ULBIN <filespec> 

  Both DLRO and DLLO ask if OK to PAD or TRUNCATE last record if not MOD 256
  It is best to say NO, but sometimes there's garbage (or GOOD stuff) at the end

  DLMX converts tabs to a single space. (should not be tabs in MX files)

<filespec> is a versados filespec as described in the Data Management manual.

<opt> is a single character

 T for TRUNCATE last sector if not MOD 256 (default)
 P for PAD last sector if not MOD 256

if no option then Truncate

 A for Assember tabs 1,11,18,37
 C for COBOL tabs    1,6,9,12
 F for FORTRAN tabs  1,7
 P for Pascal tabs   1,4,7,10,13,16,19,22,25,28,31,34,37,40,46,49,52,55,58,73
 W for Windows tabs  1,9,17,25,33,41,49,57,65,73  (default Wordpad/Notepad tabs)

if no option then tabs default 1,10,20,30,40,50,60,70,80

any tabs beyond the last tabstop are converted to one space. (NO WRAP)

The file is read from the windows file system, via the emulator's DLOAD file, 
and written to a Indexed Sequential file, with duplicate Keys, Key length = 0, 
variable length records.

up to 200 characters can be read from the windows file system per line

when the line is written to a versados file, it is formatted as ASCII, 
blanks are compressed (tabs become compressed blanks) 

For ID RLEN=0 KEYL=0 files the EOL is not stored; instead, lines are stored 
as variable length records with the length of each record stored in the data 
block as the first big end-ian 16 bit value.

| 16 bit Length | rec1 data bytes  | 16 bit Length |  rec2 data bytes  | ....

NOTE - a CPM centric feature of the DLOAD port, causes a $1a to be returned
       at EOF. The $1a must NOT be added to the Versados file.

(a bug in the VDOSFS prior to VDOSFS V1.0.4 does not allow Motorola disk 
 attributes, only IBM disk attributes) 


DLV1-DLV4

The programs DLV1 thru DLV4 are prior generations of the download program.

They are incomplete and only good enough to load the next version.

To develop, i first used the VMEs10's CRT editor (E.LO) to create the first 
version, DLV1. 

DLV1 only downloaded a text file (crudely and buggy) to a file called 
DOWNLOAD.SA..

After i got DLV1 working, i then used Windows to edit the next version. 

Each new DLVx was used to download the next. 

DLV4 is basically complete for downloading text files and can be kept for 
emergencies(if you mess up DLSA).

NOTE - To get the DLV1 file from the emulator to windows, i made a versados 
       disk and copied the files to it, then using VDOSFS, i tranfered the 
       DLV1 to windows. Then, i used DLV1 to download DLV2 to versados to 
       assemble , link and test. Eventually i wrote ULoad programs.


