[Info-vax] fixing a saveset's attributes: attachment, not ftp

David Froble davef at tsoft-inc.com
Tue Jun 23 00:25:32 EDT 2015


Jan-Erik Soderholm wrote:
> David Froble skrev den 2015-06-22 18:05:
>> Michael Moroney wrote:
>>
>> Ok, we all know I don't get out much.  I also don't delve into the 
>> depts of
>> DCL as much as some do.  I'm also aware that the saveset block size is 
>> in a
>> word integer in bytes 41-42 of the saveset.
>>
>> But, can someone, speaking slowly and using small words so I can 
>> understand
>> just what the following is doing?
>>
>>> $! try to find the blocksize from within the saveset...
>>> $ BlockSize = 0
>>> $ BBH_L_BLOCKSIZE = %x28*8
>>> $ BlockSize = F$Cvui(BBH_L_BLOCKSIZE, 32, Record)
>>
>> Just curious ....
>>
>> And yes, I can at least understand initializing BlockSize to zero.
> 
> Record contains the first record from the saveset read in
> the code before your quote.
> 
>  >> $ BBH_L_BLOCKSIZE = %x28*8
> 
> 28 in hex is 40 decimal, which probably correspond the the "41-42"
> range you mentioned. Migth be 1 or 0 start bit difference...
> 
> 40 (dec) times 8 is the number of *BITS* from the start of record
> to the start of the block size parameter. That should be 320.
> 
> F$CVUI reads 32 bits from Record starting at bit 320.
> 
> The solution to this was "help lex f$cvui". That made it clear
> what the rest did... :-) Did you look up that?
> 
> Jan-Erik.
> 
> 
> 

It appears that what I thought I "knew" isn't really correct.  If the 
blocksize is 32 bits, that's a longword, not a word.  I guess I got away 
with it because 32256 only requires the low 16 bits.

Wrong again Dave, story of your life ....

:-)



More information about the Info-vax mailing list