home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Columbia Kermit
/
kermit.zip
/
archives
/
tapeutils.tar.gz
/
tapeutils.tar
/
maketape.wyl
next >
Wrap
Text File
|
1988-08-02
|
4KB
|
153 lines
; Make CMS or OS SL tape at 1600 or 6250 bpi. Choose between the Kermit
; mainframe or micros section.
EXEC TERSE NOLOG
SET ESC %
COMM
@ N1 0
CP LINK KERMIT 197 397 RR RDFROG
CP LINK KERMIT 198 398 RR RDFROG
ACC 397 C
ACC 398 D
SET STOR FREE 80
; Get number of files that should be written out to the tape.
; For first Kermit area.
CMQ Q DISK C (STACK FIFO
READ STR S1
READ STR S1
@ S1 SUBSTR("%S1",36)
CLEAR STACK
SCAN "%S1"
@ N3 SCKW
CLEAR STACK
; For second Kermit area.
CMQ Q DISK D (STACK FIFO
READ STR S1
READ STR S1
@ S1 SUBSTR("%S1",36)
CLEAR STACK
SCAN "%S1"
@ N4 SCKW
CLEAR STACK
; Get more info.
READ STR S0 PRO 'Are you starting fresh (Y/N) ..'
IF (S0 EQ 'Y') GOTO GETINFO
READ VAL N0 PRO 'How many tapes left to write ..'
GOTO GOTT
GETINFO:
READ VAL N0 PRO 'How many tapes would you like to write ..'
CMS TELL OP I need to write %N0 Kermit tapes
CMS TELL OP Please let me know when you are ready
WAITT:
COMM Wait until get msg from Operator. Wakeup on carriage return.
CP SL
READ STR S0 PRO 'Did you get your requested tapes (Y/N) ..'
IF (S0 EQ 'Y') GOTO GOTT
MSGOP:
READ STR S0 PRO 'Do you need to send a msg to the Operator (Y/N) ..'
IF (S0 EQ 'N') GOTO WAITT
READ STR S0 PRO 'Enter msg to send ..'
CMS TELL OP %S0
GOTO MSGOP
GOTT:
@ N1 = N1 + 1
COMM For tape number %N1 ....
GETTYPE:
READ STR S2 PRO 'Is tape CMS or OS ..'
IF (S2 EQ 'CMS') GOTO GETBPI
IF (S2 EQ 'OS') GOTO GETBPI
GOTO GETTYPE
GETBPI:
READ STR S3 PRO 'Is bpi 1600 or 6250 ..'
IF (S3 EQ '1600') GOTO GETFORM
IF (S3 EQ '6250') GOTO GETFORM
GOTO GETBPI
GETFORM:
READ STR S1 PRO 'Area A (micros) or B (mainframes) ..'
IF (S1 EQ 'A') GOTO MOUNTT
IF (S1 EQ 'B') GOTO MOUNTT
GOTO GETFORM
MOUNTT:
COMM Tape number %N1 is %S2 %S3 from group %S1
READ STR S0 PRO 'Is this correct (Y/N) ..'
IF (S0 EQ 'Y') GOTO MOUNT0
GOTO GETTYPE
MOUNT0:
CMS TELL OP Label tape %N1 as: %S2 %S3 number %N1 group %S1
COMM Requesting tape mount now. You will be hung until the
COMM tape is mounted.
SP CONS STOP CLOSE
SP CONS TO * START
COMM Ask BATCH for setup notape
SMSG BATCH SETUP NOTAPE
WTAP:
SLEEP 10 SEC
CPQ Q V 181
IF (RC NE 0) GOTO WTAP
COMM Ask BATCH for secondary setup
SMSG BATCH SETUP VOL KERMCO RING SECOND
COMM Do the rewind
CMS TAPE REW
COMM Tape %N1, %S2 %S3 group %S1, is now being written.
IF (S1 EQ 'A') @ N9 N3
IF (S1 EQ 'B') @ N9 N4
IF (S1 EQ 'A') ACC 397 B
IF (S1 EQ 'B') ACC 398 B
WRITET:
; SET STOR MIN
IF (S2 EQ 'CMS') CMS CCDUMP %S3
IF (S2 EQ 'OS') XCMS EXEC OSDUMP %S3
CP REW 181
SCR TAPE MAP A NOMSG
IF (S2 EQ 'CMS') CMS VMFPLC2 SCAN * * (DISK
IF (S2 EQ 'OS') XCMS TPLABELS 181 FILE TAPE MAP A1
; SET STOR MAX
SET A4
CLEAR ACT
U TAPE MAP A
IF (S2 EQ 'CMS') D F,L
IF (S2 EQ 'CMS') GOTO CHKT
P 'OSTAPE ASSEMBLE' N
IF (CURRENT EQ -1) COMM Ostape Assemble is not the first file
IF (CURRENT EQ -1) GOTO NOTOK
DEL F/CURRENT
DEL L
CHKT:
NUMBER
IF (N9 EQ LINES) GOTO ISOK
COMM The number of files on the tape does not match the
COMM number of files on the disk.
IF (N9 GT LINES) COMM Some files are missing.
IF (N9 LT LINES) COMM The log file has extra lines.
NOTOK:
COMM Do you want to (A) rewrite the tape or (B) dismount it?
READ STR S0 PRO 'A or B ..'
IF (S0 EQ 'B') GOTO BADT
COMM Rewriting tape %N1
CP REW 181
GOTO WRITET
ISOK:
U TAPE MAP A CLR
@ S0 "TAPE" || %N1 || "%S1"
@ FN %S0
@ S0 "%S2" || "%S3"
SET FT %S0
PRINT
@ S9 'Correctly'
CP REW 181
CP DET 181
GOTO DONE
BADT:
CP REW 181
CP DET 181
@ S9 'Incorrectly'
GOTO DONE
DONE:
COMM
COMM Tape %N1 written %S9
COMM
CMS TELL OP Please put tape in Bin 7 Watson. Thanks.
SP CONS STOP CLOSE
IF (N1 NE N0) GOTO GOTT
QUIT CLEAR