Re: SCSI Tape to TAP utility
Thanks Al, I downloaded the assembler just in case. And to Chuck's point, it always felt like the MSDN distribution was a poorly documented, disorganized mess. I was not impressed. The old Turbo C and new Watcom C are available freely for DOS 16 bit and people say very good things of both. Marc From: Chuck Guzis ccl...@sydex.com On 08/14/2015 12:00 PM, Al Kossow wrote: last 16 bit compiler is visual C++ 1.52c also ran across MASM 8 https://www.microsoft.com/en-us/download/details.aspx?id=12654 if you need it Schizophrenic MS labeling. The C++ suite is 1.52c, but the compiler identifies itself as 8.00c. Crazy. --Chuck
Re: SCSI Tape to TAP utility
On 8/14/15 7:28 PM, Chuck Guzis wrote: I've got the Windows 3.1 DDK in big box/piles of floppies version. But isn't the documentation (and the rest) part of the MSDN collection? yea, forgot about that. I have pretty much the complete set back to the early 90's.
Re: SCSI Tape to TAP utility
On 8/14/15 1:30 PM, Chuck Guzis wrote: Schizophrenic MS labeling. The C++ suite is 1.52c, but the compiler identifies itself as 8.00c. Crazy. yea.. There is a page on it on Wikipedia. Visual C++ came out after MS C 7.0 which was Windows 3.1 time frame. Just staring at all this because I'm scanning a redundant win 3.1 /c++ 7.0 dev kit doc set we have right now. If someone has a spare win 3.1 driver dev kit doc set, I'd like to do that as well, but we only have one of them and I'm not going to do it a page at a time.
Re: SCSI Tape to TAP utility
On 08/14/2015 06:08 PM, Al Kossow wrote: yea.. There is a page on it on Wikipedia. Visual C++ came out after MS C 7.0 which was Windows 3.1 time frame. Just staring at all this because I'm scanning a redundant win 3.1 /c++ 7.0 dev kit doc set we have right now. If someone has a spare win 3.1 driver dev kit doc set, I'd like to do that as well, but we only have one of them and I'm not going to do it a page at a time. I've got the Windows 3.1 DDK in big box/piles of floppies version. But isn't the documentation (and the rest) part of the MSDN collection? Seems to me that it is. Do you want me to check my old MSDN CDs? --Chuck
Re: SCSI Tape to TAP utility
Reminds me of James Ellwood from one of my favorite TZ episode “From Agnes, With Love” https://en.wikipedia.org/wiki/From_Agnes—With_Love On Aug 9, 2015, at 8:57 PM, Chuck Guzis ccl...@sydex.com wrote: They didn't do much for my social life either. --Chuck
Re: SCSI Tape to TAP utility
The link below is to a Google Drive folder with three files that I will leave up for a while: awstape.c - Read a SCSI tape, output in AWS format (Linux) awstoraw.c - Read an AWS file, output a raw byte stream awstosimh.c - Read an AWS file, output a SimH https://drive.google.com/folderview?id=0B2v4WRwISEQRfi1TWnlKU1hqUXphWVhpZ1FKOGFoVjRPVnppX1F2aUMwTUw0QkxSNEsyMjgusp=sharing They are anything but elegant, but have gotten the job done for me. JRU On 8/9/2015 11:57 PM, Marc Verdiell wrote: Hey, I'll take the offer, I am interested in both. Marc Jay Jaeger wrote: If anyone is interested, I have code for a Linux SCSI tape to AWSTAPE program, and a program that translates aws format to a raw byte stream. Not sure if I have one that translates to the SimH .tap format, though. GNU C. Chuck Guzis wrote: I've got a Linux utility to translate SIMH .tap to raw binary, if that's interesting to anyone. I would have thought that such utilities existed already.
Re: SCSI Tape to TAP utility
Thanks Jay! Marc From: Jay Jaeger cu...@charter.net The link below is to a Google Drive folder with three files that I will leave up for a while: awstape.c - Read a SCSI tape, output in AWS format (Linux) awstoraw.c - Read an AWS file, output a raw byte stream awstosimh.c - Read an AWS file, output a SimH https://drive.google.com/folderview?id=0B2v4WRwISEQRfi1TWnlKU1hqUXphWVhpZ1FK OGFoVjRPVnppX1F2aUMwTUw0QkxSNEsyMjgusp=sharing They are anything but elegant, but have gotten the job done for me. JRU --
Re: SCSI Tape to TAP utility
Glad to help. On 8/10/2015 6:14 PM, Rich Alderson wrote: From: Jay Jaeger Sent: Monday, August 10, 2015 8:56 AM The link below is to a Google Drive folder with three files that I will leave up for a while: awstape.c - Read a SCSI tape, output in AWS format (Linux) awstoraw.c - Read an AWS file, output a raw byte stream awstosimh.c - Read an AWS file, output a SimH Thanks, Jay! I was dreading having to write these (in Macro-20) in the near future. Rich Rich Alderson Vintage Computing Sr. Systems Engineer Living Computer Museum 2245 1st Avenue S Seattle, WA 98134 mailto:ri...@livingcomputermuseum.org http://www.LivingComputerMuseum.org/
Re: SCSI Tape to TAP utility
On Sat, 8 Aug 2015, Chuck Guzis wrote: I've got a Linux utility to translate SIMH .tap to raw binary, if that's interesting to anyone. I would have thought that such utilities existed already. They probably do, but I have written my own set of tools for reading and writing TAP and AWS files, as probably most who do tape archiving. Christian
Re: SCSI Tape to TAP utility
On 8/9/2015 12:36 PM, Chuck Guzis wrote: Good OS-es allowed an operator to mount tapes for his next few jobs, without paying attention to paper labels and have the OS automatically locate and assign tapes to the proper job. Can UNIX do that? --Chuck Seems dangerous to me: duplicate data set names on different tapes would confuse it (plus, if the DSN is long, the entire DSN does not actually appear in the tape label). I worked with OS/360 and MVS in my career and we never did anything like that with it. Certainly one could imagine writing a process in Unix (or most any OS, for that matter) to do something like that where a separate process managed the tape drives, and then processes could connect to it to ask for tape data based on the label. I just can't imagine anyone WANTING to do that. JRJ
Re: SCSI Tape to TAP utility
On 8/8/15 9:16 PM, Chuck Guzis wrote: On 08/08/2015 08:14 PM, Jay Jaeger wrote: If anyone is interested, I have code for a Linux SCSI tape to AWSTAPE program, and a program that translates aws format to a raw byte stream. Not sure if I have one that translates to the SimH .tap format, though. GNU C. I've got a Linux utility to translate SIMH .tap to raw binary, if that's interesting to anyone. I would have thought that such utilities existed already. --Chuck this bursts a tape into raw sequentially numbered files #include stdio.h FILE *fp; main() { unsigned int len, len2; unsigned int i; unsigned int filenum = 0; char fname[20]; sprintf(fname,%05d,filenum++); fp = fopen(fname,w); do{ len = getchar(); if(feof(stdin)) exit(1); len = len | (getchar()8); len = len | (getchar()16); len = len | (getchar()24); if(len == -1){ fprintf(stderr,65535 byte record in file %d\n,filenum); getchar();getchar();getchar();getchar(); continue; } if(len == 0){ fprintf(stderr,Tape Mark\n); fclose(fp); sprintf(fname,%05d,filenum++); fp = fopen(fname,w); continue; } for(i = len; i; i--) fputc(getchar(), fp); len2= getchar(); len2= len2 | (getchar()8); len2= len2 | (getchar()16); len2= len2 | (getchar()24); if(len != len2){ fprintf(stderr, front and back lengths differ!\n); exit(1); } } while(!feof(stdin)); }
Re: SCSI Tape to TAP utility
On 08/09/2015 10:45 AM, Jay Jaeger wrote: Seems dangerous to me: duplicate data set names on different tapes would confuse it (plus, if the DSN is long, the entire DSN does not actually appear in the tape label). I worked with OS/360 and MVS in my career and we never did anything like that with it. So you'd trust your job to a 9-5 operator who really didn't care what the machine was doing to make tape assignments? Wow. Good thing that tapes have write-enable rings. --Chuck
Re: SCSI Tape to TAP utility
Good OS-es allowed an operator to mount tapes for his next few jobs, without paying attention to paper labels and have the OS automatically locate and assign tapes to the proper job. Even the old Operators Exec (and thus George 1 and 2) could do that on the ICL 1900 - I think it was referred-to as AVR (Automatic Volume Recognition) I took it so much for granted that I did not even think of mentioning it in the operational requirement for the replacement system. Quite a shock to discover its absence in GCOS on the Level 66. (The reason for its absence on big multi-tasking machines was probably to do with the scheduling on such being done by the OS, not the operators. Typically there was an extra console by the tape decks which told the operators which tapes to load for the next couple of jobs and didn't even schedule the job until the appropriate device was ready.)
Re: SCSI Tape to TAP utility
On 08/09/2015 11:27 AM, Dave G4UGM wrote: If you had a tape master file then typically that had the same dataset name on the master in and out But obviously, not the same VSN... There's (potentially) a lot of information in a set of labels, particularly if any of the user labels are used. See, for example, this CERN document: https://it-dep-fio-ds.web.cern.ch/it-dep-fio-ds/documentation/tapedrive/labels.html --Chuck
RE: SCSI Tape to TAP utility
-Original Message- From: cctalk [mailto:cctalk-boun...@classiccmp.org] On Behalf Of Chuck Guzis Sent: 09 August 2015 20:40 To: gene...@classiccmp.org; discuss...@classiccmp.org:On-Topic and Off- Topic Posts cctalk@classiccmp.org Subject: Re: SCSI Tape to TAP utility On 08/09/2015 11:27 AM, Dave G4UGM wrote: If you had a tape master file then typically that had the same dataset name on the master in and out But obviously, not the same VSN... There's (potentially) a lot of information in a set of labels, particularly if any of the user labels are used. See, for example, this CERN document: https://it-dep-fio-ds.web.cern.ch/it-dep-fio- ds/documentation/tapedrive/labels.html --Chuck On the Honeywell we had a Tape Management System that managed the tapes. All the tapes were filed by tape number, and the system knew which file was on which tape. It would tell the operators which tape number to mount. It would also manage the scratch pool of expired tapes and tell them which tapes to have ready for new outputs. It also managed off site storage. We trusted it and never removed a write ring. If you mounted a tape with current data the system read the label and dis-mounted the tape Dave Wade
Re: SCSI Tape to TAP utility
On 08/09/2015 01:25 PM, Dave G4UGM wrote: On the Honeywell we had a Tape Management System that managed the tapes. All the tapes were filed by tape number, and the system knew which file was on which tape. It would tell the operators which tape number to mount. It would also manage the scratch pool of expired tapes and tell them which tapes to have ready for new outputs. It also managed off site storage. We trusted it and never removed a write ring. If you mounted a tape with current data the system read the label and dis-mounted the tape I think that most large mainframe OSs eventually had a similar feature. When you had operators who were barely trained, it was best to leave it to the system. On the CDC 60x and 65x, my tapes never had a write ring in them (what else are you going to play ring-toss with while waiting for your job to complete?). I always kept a few cards in my shirt pocked to stick behind the mounted reel and trip the write-enable mechanism (which latched). When the autoloading 66x drives came in, part of my world disappeared. I've never tried to see if that trick works on minicomputer reel-to-reel drives. --Chuck
Re: SCSI Tape to TAP utility
On 2015-08-09 19:54, ANDY HOLT wrote: Good OS-es allowed an operator to mount tapes for his next few jobs, without paying attention to paper labels and have the OS automatically locate and assign tapes to the proper job. Even the old Operators Exec (and thus George 1 and 2) could do that on the ICL 1900 - I think it was referred-to as AVR (Automatic Volume Recognition) I took it so much for granted that I did not even think of mentioning it in the operational requirement for the replacement system. Quite a shock to discover its absence in GCOS on the Level 66. (The reason for its absence on big multi-tasking machines was probably to do with the scheduling on such being done by the OS, not the operators. Typically there was an extra console by the tape decks which told the operators which tapes to load for the next couple of jobs and didn't even schedule the job until the appropriate device was ready.) You should look at the operator interface in TOPS-20... It's a marvel of beauty in this area. Johnny -- Johnny Billquist || I'm on a bus || on a psychedelic trip email: b...@softjar.se || Reading murder books pdp is alive! || tryin' to stay hip - B. Idol
RE: SCSI Tape to TAP utility
I always kept a few cards in my shirt pocked to stick behind the mounted reel and trip the write-enable mechanism (which latched). When the autoloading 66x drives came in, part of my world disappeared. I've never tried to see if that trick works on minicomputer reel-to-reel drives. It should do. The few minicomputer magtape drives I've been inside have a solenoid on the write-enable pin. If it is pushed in part way, a microswtich operated and the solenoid pulls it in further to keep it away from the write enable ring. Otherwise, I think there would be tremendous wear on said ring. -tony
Re: SCSI Tape to TAP utility
On 08/09/2015 09:54 PM, Marc Verdiell wrote: Well, Chuck, thanks a bunch, this is very useful and quite difficult code to write from scratch. How does one compile for DOS by the way (I have to admit I am too young to have ever tried), and get a copy of MSC 8.00C. Is the DOS compiler buried in some part of Visual Studio? I have some old versions dating back from Windows 95 time, when it was called Visual Studio 97... Marc I believe it was tossed into Visual Studio 97 as a separate CD (not part of the usual packet of Visual Basic, 32-bit C++, Visual J++, etc.) So you probably already have it. I don't install the MS-specitic stuff (e.g. COM), just the compiler binaries and basic libraries and include files. It does require some DOS extender support (e.g. run it on Win9x or install HXDOS which will also work). I'd be surprised if there weren't a free version wandering around the web; sort of like MASM 6.x. With a little tweaking, almost any C that can compile to real mode (e.g. Borland C) should be able to handle it. The model that I compiled for is the Compact one (64K data, 64K code). It should not be very difficult to alter for Windows 32-bit cli use making use of WNASPI32--I just haven't had a need for it. Linux sg might also be an option--SCSI CDBs don't change. --Chuck --Chuck
RE: SCSI Tape to TAP utility
Well, Chuck, thanks a bunch, this is very useful and quite difficult code to write from scratch. How does one compile for DOS by the way (I have to admit I am too young to have ever tried), and get a copy of MSC 8.00C. Is the DOS compiler buried in some part of Visual Studio? I have some old versions dating back from Windows 95 time, when it was called Visual Studio 97... Marc From: Chuck Guzis ccl...@sydex.com Subject: SCSI Tape to TAP utility A couple of weeks ago, I offered to share the source and executable for a SCSI tape-to-SIMH .TAP file utility for MSDOS. To run it, you'll need an ASPI driver for your SCSI adapter. It was compiled using MSC 8.00C. Find it here: https://www.dropbox.com/s/x6qiudlpyitgxom/STP2T02.ZIP?dl=0 Enjoy, Chuck
Re: SCSI Tape to TAP utility
On 08/09/2015 03:03 PM, Jay Jaeger wrote: No, the OS did the drive assignments, and then prompted the operator to do the mount of the appropriate VolSer on a given drive. The label was of course checked as part of the OS/360 open process, and if there was a label, and it was not expired, one could not write over it, or, whether reading or writing, that the label matched the requested DSN. (Remember that OS/360 never heard of the 3480 tapes and their autoloaders - things presumably changed then, along with tape library management software, but by then I had moved on from mainframes, and what little I did with them didn't involve tape). The operators I worked with almost never mismounted a tape. I'd pretty much left the 360 world after DOS/360 (that really dates me), so I couldn't comment--except that I never trusted an operator to mount tapes, if I could do anything about it. A lot of the tapes came from customers who supplied them to demonstrate a problem. Losing one meant a lot of apologies and begging. Much of my big-iron days were spent in operating system work, so I needed the machine all to myself in any case---you know, middle-of-the-night block time, after the CEs were through. Build a tape, deadstart it, watch the machine crash, get a dump, punch some cards, lather, rinse, repeat. Come home to grab a shower and dinner and be back in time for the 9AM status meeting. Those years have affected my sleep habits all the way to my golden years. They didn't do much for my social life either. --Chuck
Re: SCSI Tape to TAP utility
If anyone is interested, I have code for a Linux SCSI tape to AWSTAPE program, and a program that translates aws format to a raw byte stream. Not sure if I have one that translates to the SimH .tap format, though. GNU C. JRJ On 8/8/2015 7:57 PM, Chuck Guzis wrote: A couple of weeks ago, I offered to share the source and executable for a SCSI tape-to-SIMH .TAP file utility for MSDOS. To run it, you'll need an ASPI driver for your SCSI adapter. It was compiled using MSC 8.00C. Find it here: https://www.dropbox.com/s/x6qiudlpyitgxom/STP2T02.ZIP?dl=0 Enjoy, Chuck - The first thing we do, let's kill all the spammers.
Re: SCSI Tape to TAP utility
On 08/08/2015 08:14 PM, Jay Jaeger wrote: If anyone is interested, I have code for a Linux SCSI tape to AWSTAPE program, and a program that translates aws format to a raw byte stream. Not sure if I have one that translates to the SimH .tap format, though. GNU C. I've got a Linux utility to translate SIMH .tap to raw binary, if that's interesting to anyone. I would have thought that such utilities existed already. --Chuck