|
|||||||
Reader's Clinic - Volume Pointer RecordA reader writes "I've been using the tips from the December issue of REVMEDIA on creating Volume file variables and I keep getting a W559 error message" ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ Cannot continue ³ ³ An attempt was made to execute a null ("") program ³ ³ Press any key to contine ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ This problem occurs when the Volume pointer in Voc is modified to establish Volume MFSs. (It is possible to have an MFS apply to every file on a volume by inserting the MFS name before the BFS name (@VM delimited) in the Volume pointer.) When this happens the structure of the volume file variable changes slightly. In this case the @VMs in the Filing System list must be converted to @SVMs. Thus the code given on page 11 of issue 7 would be modified to be 0001 FS = VOL_REC<4> 0002 DOS = VOL_REC<5> 0003 CONVERT @VM TO @SVM IN FS 0004 FILE_VAR = FS : @VM : DOS Alternatively, if the Volume has not been attached, another way of getting all of the information required to create a volume file variable is to make a direct call to RTP49 (the routine used by the V18 ATTACH processor). This is a subroutine taking four parameters, (A,B,C,D) where A is the volume name, B is a flag (set to 0), C is the Volume Record returned and D is the Volume Pointer Record returned. C has five fields, the fifth of which is the Map file variable. D has three fields, the second of which is the FS list. Thus 0001 CALL RTP49(A,B,C,D) 0002 DOS = C<5> 0003 FS = D<2> 0004 CONVERT @VM TO @SVM IN FS 0005 FILE_VAR = FS : @VM : DOS (Volume 2, Issue 8, Page 3) |
|||||||
| |||||||