Another (pedestrian) way of sending file(s) from a first level VM to the
second and back is by using the spool. Although limited because of the
initial size of the spool, this is handy in the initial stages of the
installation while you still don't have any other products installed on
the 2nd level. Also useful if you don't want to think where your
minidisks are :-)
1. Make sure you have a virtual reader and punch defined in a 1st
level's userid for the 2nd level VM (e.g. SPOOL 000C 3505 X and SPOOL
000D 3525 X). Those will be 2nd level's "real" reader and punch.
2. Add the following in the SYSTEM CONFIG on the 2nd level VM and then
re-IPL 2nd level:
Rdevice 000C Type Reader Class X
Rdevice 000D Type Punch Classes X
3. On the 2nd level's user with privilege class D enter the following to
start the real reader and punch (this step may have to be repeated after
the first file comes in/out):
cp sta c
cp sta d
4. Now you can use DISK DUMP command and RECEIVE to send the files both
ways.
Here's a small EXEC to send file(s) from the 1st level to 2nd. It can be
used to send a file from anywhere in the 1st level's RSCS network to a
specific user inside the second level VM. FILELIST option means that fn
ft fm is a fileid of the file that contains a list of files, where the
first three words of each line are fn, ft and fm of the files to be
sent. All the files in the list will be sent as one punch file. Useful
if you do FILELIST and save the list... Substitute your first level's
nodename instead of C$BROWN and 2nd level's userid on 1st level instead
of VM43. You may as well rename the exec.
/**
*** Send file(s) to the second level VM
*** Format: TOVM43 fn ft fm <target_user> <(<Filelist>>
*** <MAINT >
*** <----- >
**/
arg fn ft fm userid . '(' option .
---<snip>---
if userid = ''
then userid = 'MAINT'
'CP SP PU RSCS CLASS X CONT NOH NAME VM43 PUNCH'
'CP TA DE PU C$BROWN VM43'
'EXECIO 1 PUNCH (STRING ID' userid
if abbrev('FILELIST', option, 1)
then 'PIPE <' fn ft fm '| SPECS /DISK DUMP/ 1 W1-3 NW | CMS'
else 'DISK DUMP' fn ft fm
'CP SP PU CLOSE'
'CP SP PU OFF CLASS A NOCONT NON'
To send a file from 2nd to the 1st level, first SPOOL the 2nd level VM's
punch to the target user on the 1st level, then run this exec on a
second level user:
/**
*** Send file(s) to the first level VM
*** Format: TOVM1 fn ft fm <(<Filelist>>
**/
arg fn ft fm . '(' option .
---<snip>---
'CP SP PU OFF CL X NOCONT NOH NON'
if abbrev('FILELIST', option, 1)
then 'PIPE <' fn ft fm '| SPECS /DISK DUMP/ 1 W1-3 NW | CMS'
else 'DISK DUMP' fn ft fm
'CP SP PU CLOSE'
'CP SP PU CL A'
After receiving a file in the target reader on the 1st level, run this
on the target userid to strip the separator and trailing lines and
receive the DISK DUMP-ed file:
/**
*** Receive file(s) from the second level VM
*** Format: TOVM1REC spoolid <receive_args_and_options>
**/
arg spid options
'CP SP PU *'
'PIPE READER FILE' spid '| DROP 6 | DROP LAST | SPECS 2-* 1 | PUNCH'
if rc /= 0
then exit 3
parse value diag(8, 'C PU') with . . spid2 .
'CP SP PU OFF'
'RECEIVE' spid2 options
Ivica Brodaric
This message and any attachment is intended for the use of the individual or
entity to whom it is addressed by the first sender and contains information
which may be confidential and/or privileged.
If you receive this message and any attachment in error, delete it immediately
and notify the sender by email or phone +612 9218 1000 Unless you have been
expressly authorised by the sender, you are prohibited from copying,
distributing or using the information contained in this message and any
attachment
Tabcorp Holdings Ltd(ABN 66 063 780 709)and its related bodies corporate
"Tabcorp" is not responsible for any of the changes made to this message or any
attachment other than those made by Tabcorp, or for the effect of changes made
by others on the meaning of this message and any attachment
Tabcorp does not represent that any attachment is free from computer viruses or
defects and the user assumes all responsibility for any loss or damage
resulting directly or indirectly from the use of any attachment