[cctalk] Re: IBM VM "CMS" tape format
On 9/22/23 01:57, Peter Coghlan via cctalk wrote: > > It looks like a disk FST tweaked for writing to tape to me. Using the FST > layout in LY24-5221-2 referenced by Dennis earlier, I think maybe it might > be interpreted something like below. Apologies if I've mixed anything up > here. Thank you, Peter. If additional samples of CMSN records would help clarify things, I can supply them. The tape itself appears to contain data from a run of SAS Institute's (https://www.sas.com/en_us/home.html) software. I can determine that it was run between the last months of 1984 and the early months of 1985 on a 3083. The client has expressed an enthusiastic interest in the content. --Chuck
[cctalk] Re: IBM VM "CMS" tape format
> > Thanks for the information so far, folks. > > Now this boils down to interpreting the final CMS record for each file. > I'm not clear on how to interpret them, however. For example, > >> Block 10, 87 bytes: >> 00 02 c3 d4 e2 d5 01 76 00 01 c1 f1 01 75 00 00 c6 |.CMSNA1F| >> 10 00 00 00 00 50 00 08 f8 f4 12 05 12 31 00 00 01 |&..84...| >> 20 3b 00 00 00 08 00 00 01 75 01 04 84 12 05 12 31 |...d| >> 30 21 00 00 00 00 e4 e3 c5 40 e2 c1 e2 c6 c9 d3 c5 |.UTE SASFILE| >> 40 40 00 00 00 00 c3 c8 c5 c3 d2 f1 40 40 d7 e2 c1 | CHECK1 PSA| >> 50 e2 40 40 40 40 c1 f1 |SA1 | > > I can figure some parts of it; for example, the hex 50 at offset 0x14 > apparently is the record length. I'm guessing that the 01 04 84 might > be a date code in packed BCD. > > Guesses welcome ! > It looks like a disk FST tweaked for writing to tape to me. Using the FST layout in LY24-5221-2 referenced by Dennis earlier, I think maybe it might be interpreted something like below. Apologies if I've mixed anything up here. ?01 76 Dunno ?00 01 Dunno FSTFMODE c1 f1 (Filemode A1) FSTRECCT 01 75 (Records in file 373) FSTCLPT 00 00 Dunno FSTRECFM c6("F" fixed record format) FSTFLAGS 00 FSTLRECL 00 00 00 50 (Record length 80 bytes) FSTBLKCT 00 08 (800? byte block count) FSTYEARW f8 f4 (Year written: 84) ... bit of a jump here ... FSTDATEW 12 05 (Date: December 05) FSTTIMEW 12 31 (Time: 12:31) ?00 00 01 3b Dunno FSTADBC 00 00 00 08 (should be same as FSTBLKCT for small files) FSTAIC 00 00 01 75 (should be same as FSTRECCT for small files) FSTNLVL 01Dunno FSTPTRSZ 04Dunno FSTADATI f8 f4 12 05 12 31 21(Alternate date/time: 841205 12:31:21) The next part seems mangled to me. The first part of a filename seems to be missing. ? 00 00 00 00 ? e4 e3 c5 40 e2 c1 e2 c6 c9 d3 c5 40 (incomplete filename?) ? 00 00 00 00 ? c3 c8 c5 c3 d2 f1 40 40 d7 e2 c1 e2 40 40 40 40 c1 f1 (complete filename) Regards, Peter Coghlan > > TIA > Chuck >
[cctalk] Re: IBM VM "CMS" tape format
Thanks for the information so far, folks. Now this boils down to interpreting the final CMS record for each file. I'm not clear on how to interpret them, however. For example, > Block 10, 87 bytes: > 00 02 c3 d4 e2 d5 01 76 00 01 c1 f1 01 75 00 00 c6 |.CMSNA1F| > 10 00 00 00 00 50 00 08 f8 f4 12 05 12 31 00 00 01 |&..84...| > 20 3b 00 00 00 08 00 00 01 75 01 04 84 12 05 12 31 |...d| > 30 21 00 00 00 00 e4 e3 c5 40 e2 c1 e2 c6 c9 d3 c5 |.UTE SASFILE| > 40 40 00 00 00 00 c3 c8 c5 c3 d2 f1 40 40 d7 e2 c1 | CHECK1 PSA| > 50 e2 40 40 40 40 c1 f1 |SA1 | I can figure some parts of it; for example, the hex 50 at offset 0x14 apparently is the record length. I'm guessing that the 01 04 84 might be a date code in packed BCD. Guesses welcome ! TIA Chuck
[cctalk] Re: IBM VM "CMS" tape format
> > Seems like rather than going through MUSIC/SP it'd be easier to just fire > up VM/CE 1.2 (which is VM/370 r6) and use CMS TAPE (which is present) > directly from the CMS UI. You can probably attach the file you've got as a > tape device; not entirely sure Hercules will like the format, but it > wouldn't hurt to try. > Seems like it but it isn't. Tried that the last time the issue came up and it didn't work. "CMS TAPE" format blocks are pretty much copies of CMS disk blocks. They are most likely 1K, 2K (or maybe 4K? - I don't recall) from just before the VM/SP era or later, and most unlikely to be the 800 byte blocks which are all that VM/370 R6 supports. Regards, Peter Coghlan. > > Adam >
[cctalk] Re: IBM VM "CMS" tape format
Seems like rather than going through MUSIC/SP it'd be easier to just fire up VM/CE 1.2 (which is VM/370 r6) and use CMS TAPE (which is present) directly from the CMS UI. You can probably attach the file you've got as a tape device; not entirely sure Hercules will like the format, but it wouldn't hurt to try. Adam
[cctalk] Re: IBM VM "CMS" tape format
> > I'll dig into it a bit today, but I believe that I'm on the right track. > > Unfortunately, the data itself is client-proprietary, so no sharing > there, sorry. > Hi Chuck, I think I pulled the files out of a similar tape image for you about 8 years ago using the CMSTAPE utility on MUSIC/SP. I'd be willing to do the same again for this one but it looks like your client won't allow it this time. You could fire up the MUSIC/SP demo system and use CMSTAPE yourself but it's probably easier to go with something along the lines of Dave's code if you are not familiar with MUSIC/SP. (I sent you an email about this earlier today but you probably haven't seen it.) Regards, Peter Coghlan.
[cctalk] Re: IBM VM "CMS" tape format
On 9/21/23 08:23, Dennis Boone via cctalk wrote: > Starting on pdf page 135 here is a description of the FST data > structures from circa 1986: > > https://bitsavers.org/pdf/ibm/370/VM_SP/Release_5_Dec86/LY24-5221-2_VM_SP_Release_5_Data_Areas_and_Control_Block_Logic_Volume_2_CMS_Dec1986.pdf > > Might help sort the CMSN block. Probably will be of help. This one was easy, comparatively. I've got yet another "mystery tape", but it has standard labels and appears to be raw data for some program (said program, of course, having disappeared). The question I don't ask myself is "exactly what will anyone do with this stuff?". Card images are mostly numeric data, arranged in fields, but no information of what the fields are, for example. Thanks, Chuck
[cctalk] Re: IBM VM "CMS" tape format
> -Original Message- > From: Chuck Guzis via cctalk > Sent: Thursday, September 21, 2023 3:39 PM > To: Dennis Boone via cctalk > Cc: Chuck Guzis > Subject: [cctalk] Re: IBM VM "CMS" tape format > > I slept on the problem a bit--good thing that I'm old; I like to sleep--and > think > that I've got it sussed out. > > Tape appears to consist of 4101 byte blocks, each with a "/02CMSx" > header; the first one seems to be "CMSF" with the intervening ones being > "CMSV" and then a final 87 byte block starting with "/02CMSN" and with > what appears to be file metadata, including the file name. The body of > the 4K+ blocks appears to be 80 character card images. Last block of each file > seems to be padded with nulls. > > I'll dig into it a bit today, but I believe that I'm on the right track. > > Unfortunately, the data itself is client-proprietary, so no sharing there, > sorry. > > What threw me was that there are 5 physical files on the tape (i.e. > blocks separated by tapemarks), so I was expecting something logical. > Silly me. > > Thanks, > Chuck Take a look at the link I pointed you too. There is code in there to list the files on the tape and copy then to a PC disk. It will work with AWS files and physical tapes. Dave
[cctalk] Re: IBM VM "CMS" tape format
> I slept on the problem a bit--good thing that I'm old; I like to > sleep--and think that I've got it sussed out. :) > Tape appears to consist of 4101 byte blocks, each with a "/02CMSx" > header; the first one seems to be "CMSF" with the intervening ones being > "CMSV" and then a final 87 byte block starting with "/02CMSN" and with > what appears to be file metadata, including the file name. The body of > the 4K+ blocks appears to be 80 character card images. Last block of > each file seems to be padded with nulls. Starting on pdf page 135 here is a description of the FST data structures from circa 1986: https://bitsavers.org/pdf/ibm/370/VM_SP/Release_5_Dec86/LY24-5221-2_VM_SP_Release_5_Data_Areas_and_Control_Block_Logic_Volume_2_CMS_Dec1986.pdf Might help sort the CMSN block. De
[cctalk] Re: IBM VM "CMS" tape format
I slept on the problem a bit--good thing that I'm old; I like to sleep--and think that I've got it sussed out. Tape appears to consist of 4101 byte blocks, each with a "/02CMSx" header; the first one seems to be "CMSF" with the intervening ones being "CMSV" and then a final 87 byte block starting with "/02CMSN" and with what appears to be file metadata, including the file name. The body of the 4K+ blocks appears to be 80 character card images. Last block of each file seems to be padded with nulls. I'll dig into it a bit today, but I believe that I'm on the right track. Unfortunately, the data itself is client-proprietary, so no sharing there, sorry. What threw me was that there are 5 physical files on the tape (i.e. blocks separated by tapemarks), so I was expecting something logical. Silly me. Thanks, Chuck
[cctalk] Re: IBM VM "CMS" tape format
> -Original Message- > From: Dennis Boone via cctalk > Sent: Thursday, September 21, 2023 4:33 AM > To: General Discussion: On-Topic and Off-Topic Posts > Cc: Dennis Boone > Subject: [cctalk] Re: IBM VM "CMS" tape format > > > Ive got a tape here from what I believe to be a VM system. The > structure is > unknown to me, although I can possibly take a stab at > it. Lots of data > between tapemarks that seems to consist of a number > of records that start > out something like this (translated from > EBCIDC): > > I think this might be the older VMFPLC (not VMFPLC2) format, used by IBM for > software distribution and other things. The format seems fairly > simple: Five character block header (x'02' 'CMS' 'N' or '0'), 800 bytes of contents. > First block is the FST for the file. Never seen a VMFPLC format tape, only VMFPLC2 or CMS TAPE command format. The main difference between CMSTAPE and VMFPLC2 is one has the FST at the start, the other at the end. I tweaked some utils from old to read and write these in AW format... https://1drv.ms/f/s!Ag4BJfE5B3onhK8KXjiJ7iUXUgRs8A?e=qS99zs which may help.. > > https://www.garlic.com/~lynn/2003b.html#42 > > Old VMFPLC may be just CMS TAPE DUMP under the covers. > > De Dave
[cctalk] Re: IBM VM "CMS" tape format
> The distance between the CMS header and the CMSN header appears to be > much larger than 800 bytes--the first, for example is about 4K . The > next CMS file name header follows about 80 bytes later. Later versions of the filesystem would be more likely to use 2k or 4k blocks. > I don't see any indication of file or record lengths in the header, > which is troubling. The first block has the following (ASCII > version) The FST contents would be the filesystem metadata, wherever that has landed. De
[cctalk] Re: IBM VM "CMS" tape format
On 9/20/23 20:33, Dennis Boone via cctalk wrote: > > Ive got a tape here from what I believe to be a VM system. The > > structure is unknown to me, although I can possibly take a stab at > > it. Lots of data between tapemarks that seems to consist of a number > > of records that start out something like this (translated from > > EBCIDC): > > I think this might be the older VMFPLC (not VMFPLC2) format, used by IBM > for software distribution and other things. The format seems fairly > simple: Five character block header (x'02' 'CMS' 'N' or '0'), 800 bytes > of contents. First block is the FST for the file. > > https://www.garlic.com/~lynn/2003b.html#42 > > Old VMFPLC may be just CMS TAPE DUMP under the covers. > > De Looks like there might be some grist for my mill. I'll have to take some time staring at hex dumps, but maybe I'm very close. 1600 bpi tape. What's interesting is that all of the tape blocks are what one would consider to be odd sizes: 87 bytes, 4101 bytes, etc. The distance between the CMS header and the CMSN header appears to be much larger than 800 bytes--the first, for example is about 4K . The next CMS file name header follows about 80 bytes later. I don't see any indication of file or record lengths in the header, which is troubling. The first block has the following (ASCII version) > 02 43 4d 53 46 44 41 54 41 20 5f 4e 55 4c 4c 5f |.CMSFDATA _NULL_| > 0010 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |; | > 0020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 || > * > 00a0 20 20 20 20 20 20 20 20 20 46 49 4c 45 20 20 20 | FILE | > 00b0 20 20 20 50 52 49 4e 54 3b 20 20 20 20 20 20 20 | PRINT; | > 00c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 || > * > 00f0 20 20 20 20 20 20 20 20 20 54 49 54 4c 45 20 20 | TITLE | > 0100 20 20 27 3d 3d 3d 3d 3d 3d 3e 20 42 41 44 2c 20 | '==> BAD, | > 0110 4d 49 53 53 49 4e 47 20 4f 52 20 45 58 54 52 41 |MISSING OR EXTRA| > 0120 20 43 41 52 44 20 23 27 27 53 20 3c 3d 3d 3d 3d | CARD #''S <| > 0130 3d 3d 27 3b 20 20 20 20 20 20 20 20 20 20 20 20 |==';| In any case, I'll dig a bit. This is a lone tape out of a set, so no comparatives. All the best, Chuck --Chuck
[cctalk] Re: IBM VM "CMS" tape format
> Ive got a tape here from what I believe to be a VM system. The > structure is unknown to me, although I can possibly take a stab at > it. Lots of data between tapemarks that seems to consist of a number > of records that start out something like this (translated from > EBCIDC): I think this might be the older VMFPLC (not VMFPLC2) format, used by IBM for software distribution and other things. The format seems fairly simple: Five character block header (x'02' 'CMS' 'N' or '0'), 800 bytes of contents. First block is the FST for the file. https://www.garlic.com/~lynn/2003b.html#42 Old VMFPLC may be just CMS TAPE DUMP under the covers. De
[cctalk] Re: IBM VM "CMS" tape format
Might be IBM CMS Conversational Monitor System (CMS, originally Cambridge Monitor System). Used it in 1977. Don’t know about the format though. Sent from my iPhone On Sep 20, 2023, at 17:24, Chuck Guzis via cctalk wrote: Group, Ive got a tape here from what I believe to be a VM system. The structure is unknown to me, although I can possibly take a stab at it. Lots of data between tapemarks that seems to consist of a number of records that start out something like this (translated from EBCIDC): 02 43 4d 53 46 30 30 30 31 31 32 30 35 31 31 32 |.CMSF00011205112| 0010 34 37 30 37 36 30 31 32 32 32 31 31 30 31 31 31 |4707601222110111| Another example: 02 43 4d 53 46 44 41 54 41 20 5f 4e 55 4c 4c 5f |.CMSFDATA _NULL_| 0010 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |; | 0020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 || The data itself appears to be a bunch of 80 character card images. I found a mention on the old yahoo groups H390-VM discussions, but no clarity was ever shed on the subject. Does anyone know about this tape format? --Chuck