Use this system macro to write a single non-TPF-type record that is no
longer than 4095 bytes to any cylinder or from main storage to a disk
module. The storage block at the specified entry control block (ECB)
data level or data event control block (DECB) is not disassociated from the
ECB.
The FLSPC macro causes virtual file access (VFA) to be searched for the
record. If the record is in VFA, it is forced out of VFA before the new
data is written to the DASD.
Required Authorizations
|
Key0
| Restricted
| System
| Common Storage
|
| X
|
|
|
Format
Notes:
- symbol1
- label
- A symbolic name can be assigned to the macro statement.
- symbol1
- Specifies the ECB data level (D0-DF) to be used by the service
routine.
- DECB=(Rx)|label1
- The label or general register (R0-R7) containing the address of the
DECB, which contains the file address of the record to be filed.
- E
- This parameter is required. The file address is in extended mode
and contained in the extended file address word defined by symbol1 or the DECB
parameter.
Entry Requirements
- This macro is intended only for control program (CP) support usage.
- R9 must contain the address of the ECB being processed.
- A block of storage must be held by the ECB at the specified core block
reference word (CBRW) (CE1CRn) or DECB (IDECDAD).
- The file address must be contained in the specified file address reference
word (FARW) (CE1FAn) or DECB (IDECFRW). The record type and record code
check (RCC) are optional.
- When accessing a general data set, the appropriate GDSNC or GDSRC macro
must be issued to set up the file address before using the FLSPC macro.
- The file address must be in the form BBCCHHR and contained in the extended
FARW (CE1FXn) for the ECB data level or DECB (IDECFX0). The bin number
(BB) should be zeroed and the module number will be the normal halfword number
stored in field CE1FMn or field IDECFMOD for the DECB.
Return Conditions
- Control is returned to the next sequential instruction (NSI).
- The contents of R14 and R15 are unknown. The contents of all other
registers are preserved across this macro call.
- If this macro is called from a program running in 24-bit mode, the
condition code will be saved across this macro call. If the macro is
called from a program running in 31-bit mode, the condition code upon return
from this macro is unknown.
- The FARW at the specified ECB data level (symbol1) or DECB is
unchanged.
- The status of the operation is unknown.
- The block of storage at the specified ECB data level (symbol1) or
DECB is not available.
Programming Considerations
- This macro can be run on any I-stream.
- This macro is the only file type macro available for use on cylinder 0,
head 0.
- A check is made by the control program (CP) to determine if the ECB is
holding a block of storage at the specified ECB data level (symbol1)
or DECB and if the file address at the specified ECB data level or DECB is
valid.
- The operational program may not use the specified level (symbol1)
or DECB on return from the CP.
- To ensure completion of the operation, a WAITC macro must be
issued.
- The number of bytes to be written is located in the byte count field of
the CBRW at the specified ECB data level or DECB.
- The core block is available to the operational program upon successful I/O
completion.
- If this macro is used on a record defined as a VFA synchronization
candidate, the record update will not be synchronized with other
processors. The record will only be flushed from VFA on the processor
from which the macro was issued.
- If the location of the data event control block specified by the DECB
parameter does not refer to a valid DECB, control is transferred to the system
error routine.
Examples
The input to write record type SI, with a code check of X'01' and
file address of M- 20, C- 02, H- 04, R- 09 from data level 1 follows in this
example.
CE1CR1- 00012480 0031041F (attached block)
CE1FA1- E2C901.. (record type, code check)
CE1FM1- 0014.... (module number-mm)
CE1FX1- 00000002 000409.. (bbcchhr.)
FLSPC D1,E
The input to the SI write record type, with a code check of X'01'
and file address of M- 20, C- 02, H- 04, R- 09 from data level 1 follows in
this example.
CE1CR1- 00012480 0031041F (attached block)
CE1FA1- E2C901.. (record type, code check)
CE1FM1- 0014.... (module number-mm)
CE1FX1- 00000002 000409.. (bbcchhr.)
LABEL FLSPC D1,E
The input to the SI write record type with a code check of X'01'
and file address of M- 20, C- 02, H- 04, R- 01 from a DECB follows in this
example.
IDECCT0- 00982000 0031041F (attached block)
IDECRID- E2C901.. (record ID, record code check)
IDECFM0- 0014.... (module number-mm)
IDECFX0- 00000002 000401.. (bbcchhr.)
FLSPC DECB=(R7),,E