On 2018-12-17 18:40, Paul Koning wrote:


On Dec 17, 2018, at 12:29 PM, Clem Cole <[email protected]> wrote:

The problem is the license manager code you are running into is expecting an 
RMS file, not a Stream I/O.  In the old days, the idea of 'access methods' was 
the natural ways OS's did I/O and RMS was VMS's answer.   Since today's 
programmers tend to have grown up with C/C++/Java and stream I/O, you need to 
think in terms of a programming 'Framework' that is inflicting some level 
structure on the file.  FWIW: Stream style I/O and the STREAM-LF file format 
was added to VMS to support VAX11/C, and normal programmers (correctly) started 
to avoid RMS (it was funny how quickly the compiler runtime teams abandoned 
RMS, but I digress).  But if the code was written assuming RMS (which was all 
VMS had for many years), the files need RMS.

That's odd, I thought that (on VMS) you didn't have any choice about using RMS. 
 Well, not unless doing raw block I/O.

Correct. And I seriously doubt the license manager is trying to go out of its way to make it hard here.

Stream is one of the formats supported by RMS, exactly as fixed and variable 
records (with prefix length) are.  Actually, stream comes in three flavors, 
depending on whether the record delimiter is LF, CR, or CR/LF.  RMS-11 also 
supports these, FWIW.

Well, RMS-11 actually only supports Stream, which is the same as Stream_CRLF under VMS. Stream_LF and Stream_CR more or less works fine reading with RMS-11, but the formats as such does not exist.

And to comment to Clem, the length field is 16 bits and have been so since RMS first saw the light. So the maximum length is 65535 bytes, not 255. And counted strings in Pascal have nothing to do with it.

So unless license manager goes out of its way to enforce a particular record format for 
its input files, I would think it "should just work", RMS should read the 
on-disk format and deliver the records (lines) according to the encoding described by the 
file attributes.

It should work, assuming that the file attributes are correct, which is where I strongly suspect the problem lies. A CD with ISO 9660 file system just don't have VMS file attributes on the files, so you need some way of telling the system that the files actually are in stream_lf format.

Finally, one suggestion was to transfer the file by cut & paste into a VMS 
editor; in that case the record format is chosen by the editor when creating the 
file, and the fact you're pasting from a Unix system is not a factor.

That is also an option.

And then I have my possibly very sneaky alternative: TECO. TECO usually swallows and does the right thing for very many things, and if not, it's very easy to correct, and then let TECO write the file out, and you'll have a file with the right format and attributes.

  Johnny

--
Johnny Billquist                  || "I'm on a bus
                                  ||  on a psychedelic trip
email: [email protected]             ||  Reading murder books
pdp is alive!                     ||  tryin' to stay hip" - B. Idol
_______________________________________________
Simh mailing list
[email protected]
http://mailman.trailing-edge.com/mailman/listinfo/simh

Reply via email to