File DVF.DC (file description)

Directory of image this file is from
This file as a plain text file

DVF.DC 78.05.10 DeVice File Documentation

			DVF - OS/8 DeVice Files


	DVFX  is an OS/8 utility that allows a file,  called a 'DeVice File' or
'DVF' to be treated as an OS/8 device for storage and retrieval of files.  DVFs
are  useful  to group files  together  by context  in virtual devices  that are
suited in size for the specific group of files.   All the files in the DVF  may
then be moved as a single entity merely by transfering the DVF.   Using DVFs, a
large OS/8 physical device, e.g. RK,  may be effectively segmented into as many
smaller devices  as desired.   For systems  that have  several  users  who have
filenames  that conflict,  the files with conflicting names  may be 'hidden' by
each user in his own DVF on the system disk  yet quickly restored to the system
from the DVF without need to change media.   DVFs may also be used to establish
'virtual' DECtapes or floppies on the larger device.



Three programs are used to support DVFs :

DVFGEN is used to create and initialize DVFs.
DVFX   is used to transfer files into and out of DVFs.
DVFDX  (or DIRECT) is used to obtain a directory of the contents of DVFs.

Additionally, FTPDV.BN may be used to overlay FOTP to allow use of the CCL
COPY, DELETE, LIST, and TYPE commands.



			DeVice File creation :


DVFGEN creates DVFs and initializes their internal directories to allow use of
the complete DVF (and no more!) as a virtual device.

e.g.	.R DVFGEN
	*DEV:DTA8<=1341$
	.


	On device 'DEV:' the file 'DTA8.DV' is now initialized to be used as
a DeVice File.  Note that it is the same length (in blocks) as a standard
DECtape and thus may contain the image of physical DECtape or be used as a
virtual DECtape.



			File Tranfers using DVFX


	DVFX (DeVice File tranXfer) supports all of the features of OS/8 FOTP
with two exceptions :
	1. RENAME (/R) is not allowed.
	2. Additional information words beyond the date word are not transfered.

	Two option switch specifications allow DVFX to treat a file as a device.
The option '/A' (Attach) is used to specify a DVF as a file destination.
The option '/B' (Belongs!) is used to specify a DVF as a file source.  Both
/A and /B may be used together.  For example, the following command transfers
all the files of the form 'COLOR?.*' or 'LIGHT?.*' or 'SOUND?.*' from within a
DeVice File named RED.DV located on device DSK1:, into a DeVice File named
BLUE.DV located on device DSK2:, assigning each file today's date and listing
each filename as the file is transfered :

	.COPY DSK2:BLUE.DV/A<DSK1:RED.DV/B,COLOR?.*,LIGHT?.*,SOUND?.*/T

Note that the 'COLOR?.*' etc. filenames never appear on the directories of
either DSK1: or DSK2:, but are in the directories of RED.DV and BLUE.DV.



For further information contact 
		Tim Clarke
		Menlo Computer Associates, Inc.
		Box 298					Phone : 415 4943248
		Menlo Park, California 94025

DVFGEN : DeVice File preparation DeVice Files are created and initialized by DVFGEN. When DVFGEN is Run, it calls the OS/8 Command Decoder (in special mode). The output file specification is used to generate a DVF; if any input specifications are entered a syntax error is reported and no operation occurs. The default DeVice File length is the largest 'EMPTY' area on the output device specified. The DVF length may also be specified by the 4 low order octal digits of following an '='. If the Command Decoder line is terminated by a Carriage Return, after the DVF is generated, the Command Decoder is recalled for another DVF generation. If the Command Decoder line is terminated by ESCape (or ALTmode) then, following DVF generation, control is returned to the OS/8 Keyboard Monitor. Examples : .R DVFGEN *DEV:DVF.DV< This generates a DVF named DVF.DV in the largest contiguous empty space on device DEV:. *DTA1:DTA8<=153$ This generates a DVF named DTA8.DV on device DTA1:; its length is 153 (octal) blocks, 144 of which are useable for file storage (see below). Command Decoder switch options : =oooo where 'oooo' is an octal number that specifies desired DVF length. /O Ok; DVFGEN checks for an already existing DVF of the same name specified for output. If a file of the same name is found, an error exit is taken. However, if /O is specified, the old file of the same name is deleted. /X If no filename extension is specfied, DVFGEN normally substitutes '.DV'. If /X is specified, this substitution is disabled and the resultant file is given a null extension. DVFGEN error messages : Syntax error - no output file specified Syntax error - input file specified OS/8 USR ERRORS Filename already exists on output device (see /O) An EMPTY longer than 7 blocks not available on device No room on device for specified DVF length
_______ DVFX Features : DVFX (DeVice File tranXfer) supports all of the features of OS/8 FOTP with two exceptions : 1. RENAME (/R) is not allowed. 2. Additional information words beyond the date word are not transfered. Two option switch specifications allow DVFX to treat a file as a device. The option '/A' (Attach) is used to treat the OUTPUT specification (device:filename.ext) as a DeVice File. The option '/B' (Belongs!) is used to treat the INPUT file specification as a DeVice File. (See details below.) DVFX always calls the Command Decoder in special (*) mode thus there can be only one output specification and from one to five input specifications. _______ /A Option : The /A option is used to specify the device & DeVice File into which the input files will be transfered. All output transactions are to use not merely the device specified, but the 'DeVice File' on the specified device. The /A option pertains to only the OUTPUT specification. Consider the two Command Decoder lines below : *DEV:<SYS:*.SV/L *DEV:SAVES.DV/A<SYS:*.SV/L The first line transfers all the .SV files from device SYS to device DEV. The second line transfers all the .SV files from device SYS into the DeVice File SAVES.DV located on device DEV. _______ /B Option : The /B option is used to specify the device and DeVice File out of which files are to be transfered. The FIRST INPUT file specification is that of the DEVICE FILE to be used as the source of files (&/or filenames when no transfer is to take place.) Subsequent input file specifications without a device name or with the same device name as the first refer to the DeVice File. The first different device specified disconnects the input references from the DeVice File. If the /B option is used, there must be one or more input file specifications following the DeVice File specification. There is not a default '*.*' for the input DeVice File. _______ Examples : *SYS:<DEV:*.SV/L *SYS:<DEV:SAVES.DV/B,*.SV/L The first command line above transfers all .SV files from device DEV to device SYS. The second line transfers all .SV files from within the DeVice File SAVES.DV to device SYS. *SYS:<DEV:X.DV/B,*.BN,*.SV,*.TE/L will transfer to SYS all the .BN, .SV, and .TE files from the DeVice File X.DV on device DEV. *SYS:<DEV:X.DV/B,*.BN,DEV:*.SV,*.TE/L is equivalent to the previous example.
DVFX command examples, continued : *SYS:<DEV:X.DV/B,*.TE,DEV2:*.RL,DEV:*.BN/L will transfer onto SYS: 1. from the DeVice File 'X.DV' all the .TE files 2. from device 'DEV2' all the .RL files 3. from device 'DEV' all the .BN files Note that the 'DEV2:' in the third input file specification disconnected the input source from the DeVice File on DEV:. _______ Deletion of files within a DeVice File : Normally, to delete files in the DeVice File, the DVF is explicitly specified as both the source (input) and destination (output). Unlike FOTP, DVFX does not consider /D without an output specification to be a default '*.*<'. Those familiar with the technique of using FOTP to delete files with different devices for input and output may use the same technique with DVFX. Example of normal deletion of a file in a DVF : *DEV:TE.DV/A<DEV:TE.DV/B,*.*/D/Q will query for deletion of each of the files that are in the DeVice File 'TE.DV'. *DEV:TE.DV/A<DEV:TE.DV/B,*.BN/D/Q will query for deletion of each of the .BN files that are in the DeVice File 'TE.DV'. A 'BAD' example : *BAD:BAD.BAD<BAD:BAD.BAD,BAD.*(BAD) will delete all the BAD files from the BAD DeVice File on the BAD device. _______ Using CCL to call DVFX : CCL may be used without modification to indirectly call DVFX. FOTP can be set up so that when it is called with /A or /B it chains to DVFX. Thus the CCL commands COPY, DELETE, LIST, and TYPE may be used to call DVFX by specifying /A and/or /B in the CCL command line. As this is a chain operation, the file DVFX.SV must exsit on the system device. Note that this is a one way chain: DVFX does not chain back to FOTP. To provide this function, FOTP V9A is overlaid with FTPDV.BN as follows : .R ABSLDR *FOTP.SV/I *FTPDV$ .SAVE SYS:FOTP;14600=6503
_______ DVF Directory functions How do you find out what's in a DeVice File? One way, of course, is to use DVFX with /L. e.g. *DEV:TE.DV/B,*.*/L But if you wish dates and empties to be listed, use DVFDX.SV (DeVice File DireXtory). 1978 February : The functions of DVFDX have now been integrated into a standard (users) version of DIRECT. As this version uses the /S option switch for its DVF functions, I have given it the version number 5S. In addition to DVF support, DIRECT 5S no longer limits the number of columns (the '=' option) to 10. Any number of columns may be specified. DIRECT 5S supports all the normal switch options of DIRECT 5G. When /S (Special) is used with DIRECT 5S, the first input file specification designates the DeVice File from which to get the directory. From zero (0) to four (4) further input specifications may be used to perform the various DIRECT functions. If no further input specifications are found after the first one (which specified the DVF), *.* is assumed, i.e., all the filenames from within the DVF are output. In any case the device for the second (2nd) input specification is ALWAYS forced to the device specified for the DVF. Note that with /S, a single Command Decoder line cannot be used to obtain directories from multiple DVF's or mixed DVF's and normal devices. e.g. .DIR DEV:DVF.DV(SHEB)=2 lists in three (3) columns all the filenames in the directory of the DeVice File DVF.DV on device DEV, including empties and block numbers (relative within the DVF) and the contents of the header block, if present. .DIR DEV:DVF.DV/S,*.PA,FOO.*/A=3 lists in alphabetic order all the .PA filenames and all the FOO filenames in the directory of DeVice File DVF.DV on device DEV. .DIR DEV:DVF.DV/S,*.DV/E/B=2 for those who wish to nest DeVice Files (!), this lists the names of all the DeVice Files contained in the DeVice File DVF.DV on device DEV! All the DVF programs mentioned here are licensed programs available from Menlo Computer Associates, Inc. The DVF kit includes DVFGEN.SV, DVFX.SV, DVFDX.SV (DIRECT version 5S), FTPDV.BN, and DVF.DC (documentation). This copyrighted software is licensed for use on a single OS/8 computer installation, serial number "____________" and will not be transferred to any other computer system. For further information or if you have any questions regarding DVF performance contact Tim Clarke Menlo Computer Associates, Inc. Box 298 phone : 415 4943248 Menlo Park, California 94025



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search