• Find unprocessed queue element with no wait indicator (CMCINOW) on.
• Dequeue element with no wait indication.
• Free queue sector for resue.
• Post calling program.
If IDELETE active at system console:
• Search for write to operator without reply (WTO) element in queue.
• If WTO element found and space needed:
- Deallocate SYSLOG queue sector.
- Dequeue and free disk sector (FIFO).
If no WTOs to free and queue full, caller must wait for space.
D
Find first queue element address.Ensure enough lines available or can be rolled off screen to display new data.
If not enough screen lines or if no more elements on queue, and if console in console mode:
• Dequeue console queue resource.
• If EOJ response indication (CMCI EJR) on in console matrix, go to
II;
otherwise, exit to command processor mainline (#CPML).If this is a new console SYSLOG post:
• Build work station data management parameter list.
• Sound audible alarm at console.
If console not in console mode, or if screen not available, exit to #CPML.
Load and pass control to console management second half (#CMCS).
Build work station data management parameter list to consolidate lines at bottom ·of screen that may be overlaid.
Roll screen.
If message command queue element (CMCIMSG):
• Find proper messa~e queue sector.
• Read in message sector.
• Update message sector to indicator sector available for reuse.
I f user text sector:
• Assign message number.
• Find user sector text.
• Read in text sector.
Generate message 10 for operator reply.
Increment message 10 control counter byte (SCADMID#).
Build printer lOB if spool not active, system in single program mode, and log printer active.
Call work station input output control handler (WSIOCH) to print output data.
Set up console matrix entries associated with line on screen.
Save line to be displayed on screen in command processor task work area (TWA) line save area.
Build work station data management parameter list.
Diagram 2.28 (Part 2 of 3). Perform Console Logical 1/0 Function
Licensed Material-Property of IBM
MODULE!
Method of Operation 2-59
DESCRIPTION
Put display to console display screen.
Dequeue and free queue element just processed.
Continue processing elements until queue is empty, screen is full, or element not yet placed in disk queue.
If queue empty, turn off message light.
Exit:
• Free up any assign/free area still owned .
• If EOJ response indication (CMCIEJR) is on in console matrix, go to
II;
otherwise dequeue on console SYSLOG queue, and exit to command processor mainline (CPMU.II
Find command processor task work area (TWA).Point at in-core matrix.
Loop through matrix setting off EOJ bits (CMCI EJR).
Determine message ID fields to be overlayed by
'**'.
Build work station data management param~ter list.
Put
,* *,
over message 1 D on console display screen.Exit to calling program.
Diagram 2.28 (Part 3 of 3). Perform Console Logical I/O Function 2-60
Licensed Material-Property of IBM
MODULE/
ROUTINE
#DWDM
#CMCS
WSIOCH
#CMCS
#CMEJ
#DWDM
#CMEJ
From: SYSIN (#ClSS), SYSlOG (#ClSG),
fJ
Display output data at work stationMain Storage display screen for SYSlOG
II
Display output data at work stationTransient Area: display screen for SYSLIST
#C~WI
Find requesting work station's terminal unit block (TUB).
If user invite outstanding, wait for invite end.
If user display on screen:
•
Build work station data management parameter list to save user display.• •
Save current format on screen.Reset invite and SYSLIST screen active indication.
If initial call for logical I/O interface:
To: Calling Program
MODULE/
ROUTINE
#CMWI
#DWDM
#CMWI
•
Retrieve user's initial record entered on command display (OCl or procedure statement). Disk lOS•
Return . #CMWI•
Output user's initial record to screen. #DWDMIf not initial call for logical I/O interface: #CMWI
•
Build work station data management parameter list to output logical I/O display.•
Display logical I/O interface and wait for user's response. #DWDMDiagram 2.29 (Part 1 of 3). Perform Work Station Logical 1/0 FUnction
Method of Operation 2·61
Licensed Material-Property of IBM
<J
OEseR IPTION MODULE/
ROUTINE
Process user entered response data: #CMWI
•
If null data response, blank out input data area.•
Move user response bytes into work station logical I/O data management input record area and then to user's area.,
Roll user response lines off screen input area:
•
Build work station data management parameter list with information to clear screen input area.•
Roll user entered data out of input area. #DWDMReturn control to SYSIN (#CLSS). #CMWI
D
If entry is from SYSLlST, go t o l l . #CMWOIf write to operator without reply request, IDELETE active, and logical I/O display interface not active:
•
Throwaway informational message.•
Return to SYSLOG (#CLSG).Wait for user I/O activity to finish. #CMWO
If user display active on screen (TUBUSUP):
•
Save work station invite status.•
Build work station data management parameter list to save user's display.•
Save user's display. #DWDM#CMWO
•
Indicate user screen saved (TUBATTR6).If logical I/O interface not active on screen (TUBINPA):
•
If logical I/O interface previously displayed (TUBLlOS):-
Build work station data management parameter list to restore logical I/O display.-
Restore logical I/O screen. #DWDM•
If logical I/O interface never active for this sign-on (TUBLlOS): #CMWO-
Retrieve user's initial OCL or procedure statement. Disk lOS-
Build work station data management parameter list for initial logical I/O screen. #CMWO-
Display screen with first keyed record. #DWDMIf second level message to display (CMW02ND): #CMWO
•
Build work station data management parameter list.'.
Display second level message. #DWDM•
Blank out response input area. #CMWO•
Read user's option response. #DWDM•
Ensure response length valid. #CMWO•
If response length error:-
Retrieve error message text. #MGRET-
Build work station data management parameter list. #CMWO-
Display error message. #DWDM-
Read user's retry response.•
Move good response to user area. #CMWO•
Verify user response valid:- If write to operator without reply (WTO), indicate no screen restore.
-
If other valid response, indicate to restore screen.•
If restore requested:-
Build work station data management parameter list to restore user screen.-
Restore screen. #DWDM-
Return to calling program. #CMWO" If call by WTO:
• Put out blank logical I/O screen.
•
Build work station data management parameter list to display WTO message. #CMWO•
Display message. #DWDM•
Return to SYSLOG (#CLSG). #CMWO(
Diagram 2.29 (Part 2 of 3). Perform Work ~tation Logical 1/0 Function 2-62
Licensed Material-Property of IBM
MODULE/
OEseR IPTION ROUTINE
If call to display SYSLOG message, write to operator With reply (WTOR): #CMWO
•
If SYSLOG halt and not WTOIWTOR:-
Build work station data management parameter list.-
Save screen.-
Sound audible alarm at work station.•
Build work station data management parameter list to display message.•
Display haltlWTOR message. #DWDM•
If WTO request, return to caller. #CMWO•
Read user's response. #DWDM• •
Ensure response length valid. #CMWO~
•
If response length error:-
Retrieve error message text. #MGRET-
Display error messgge #DWDM-
Read user's retry response,•
Move good response to user area. #CMWO•
Verify user response valid.•
Roll up WTOR response data. #DWDM•
If restore indicated: #CMWO-
Build work station data management parameter list to restore screen saved.-
Restore user's screen. #DWDM-
Return to calling program. #CMWOII
If SYSLIST active on screen (TUBSYLST), go t o l l O . #CMLSWait for user I/O activity to finish.
If user display active on screen (TUBUSUP):
•
Save work station invite status.•
Build work station data management parameter list to save user's display.•
Save user's display #DWDM•
Reset invite status (TUBATTR3). #CMLS•
Indicate user screen saved (TUBATTR6).e
If call by SYSLIST put:• If SYSLIST screen inactive (TUBSYLST):
- Save logical I/O screen if active. #DWDM
-
Put out blank logical I/O screen.•
Build work station data management parameter list to display SYSLIST message. #CMLS•
Display message. #DWDM•
Return to SYSLIST (#CLST) #CMLSIf call by SYSLIST get:
•
Build work station data management parameter list to display message.•
Display WTOR message. #DWDM•
Read user's response.•
Ensure response length valid. #CMLS•
If response length error:-
Retrieved error message text. #MGRET-
Display error message. #DWDM-
Read user's retry response.•
Move good response to user area. #CMLS•
Verify user response valid.•
Blank user response area. #DWDM•
Return to calling program. #CMLSDiagram 2.29 (Part 3 of 3). Perform Work Station Logical 1/0 Function
Method of Operation 2-63
Licensed Material-Property of IBM
From:
~INPUT
Command Processor Wait Routine (#CPML)
~OCESS
DESCR IPTION MODULE/
ROUTINE
[[) If IPL is in progress: #CPTC
0 If master console or alternative console, and not already signed on, call #CPTS. Display sign on. #CPTS
0 Return to caller. #CPTC
If IPL not in progress:
G) If not signed on, call #CPTS. Display sign on. #CPTS
0 If console in error, call #CPER for error recovery.
If work station in console mode:
0 If error recovery busy, ignore system request.
<) Issue stop invite to system console. #CPIO
0 If stop invite failed, ignore system request. #CPTC
0 Issue save for console display. #CPIO
0 If work station display was not previously saved: #CPTC
-
Swap the TUBs. HCPIO-
Display the proper system display. HCPTC-
Return to caller.0 If console mode was forced, issue clear unit I/O operation; HCPIO
otherwise, restore the saved display. HCPTC
0 Swap the TUBs.
0 If the work station was released, exit to #CPIQ.
0 If a task was active, have it dispatched.
0 If inquiry menu pending, process the inquiry.
If work station to console:
0 If vertical hold or savelrestore interlock, pend the system request.
0 If TUB not owned by command processor, set TUB to be skipped.
0 If TUB owned by command processor, issue stop invite. HCPIO
() Swap TUBs. #CPTC
0 Save work station display. #CPIO
0 If restore is required, restore console display; otherwise, put up console display. #CPTC 0 Indicate to call HCMe!.
0 Return to caller.
Diagram 2.30. Process System Request Event 2-64
Licensed Material-Property of IBM
From: Calling CPTransient
II
Process printer error----::Tl
D
If no input data and no output data to process, return to calling program.If no input data (CMCUINP = OFF), go toD.
If log input requested (CMCULOG),:
• Build history file put (#HFPUT) parameter list.
• Place'input data in history file.
• Build printer lOB if spool not active, system in single program mode, and log printer active.
• Call work station input output control handler (WSIOCH) to print input data.
• If printer error, go toll.
If roll screen request (CMCUROL):
• Find terminal unit block (TUB) for terminal requesting roll.
• If screen format is menu standby, command, inquiry, sign-on, or status (TUBATTR1):
- Build work station data management (WSDM) parameter list.
- Reinvite screen.
- Return to calling command processor transient.
If system console and in console mode:
• Build WSDM parameter list to consolidate lines at bottom of screen that will be overlaid.
• Roll screen.
Diagram 2.31 (Part 1 of 2). Perform Command Processor Cleanup Function
History file
Method of Operation 2-65
Licensed Material-Property of IBM
MODULE/
OEseR IPTION ROUTINE
•
Build WSDM parameter list for system console. #CMCU•
Modify system console display. #DWDM•
Return to calling command processor transient. #CMCUD
If message identification code (MIC) number provided (CMCUMIC):•
Build message retrieve parameter list .• •
Retrieve message. #MGRET~
If execution time data to be substituted in message (CMCUMSUB): #CMCU
•
Scan message looking for # signs.•
Substitute appropriate characters for # signs.If in-core message to be displayed (output switch on and MIC number field=zero)' move message to command processor work area.
If log output request (CMCULOG):
•
Build history file put (#HFPUT) parameter list.•
Place input data in history file. #HFPUTFind output terminal TUB address. #CMCU
If screen format is standby, command, Inquiry, menu, sign-on, or status (TUBATTR1 and TUBATTR2): #CMCU
•
Build WSDM parameter list.•
Display messages. #DWDMBuild printer lOB if spool not active, system in single program mode, and log printer active. #CMCU
Call WSIOCH to print output data. WSIOCH
If printer error, or if console only bits, go to
IJ.
#CPERIf request to show to console also (CMCUSWS): #CMCU
•
Find space in disk queue for message if possible.•
Place message in disk queue sector.•
Build console queue element.•
Place queue element on console SYSLOG queue.•
Post console SYSLOG.If system console and in console mode (TUBATTR2):
•
Build WSDM parameter list to consolidate lines at bottom of screen that will be overlaid.•
Roll screen. #DWDM•
Build WSDM parameter list for system console. #CMCU•
Put appropriate screen to system console. #DWDM•
Build printer lOB if spool not active, system in single program mode, and log printer active. #CMCU•
Call WSIOCH to print data if lOB buil·t.•
If printer error, go tolJ. #CPERReturn to calling command processor transient module. #CMCU
II
If printer error: #CPER•
Find space in disk queue for message if possible.•
Place message in disk queue sector.•
Build console queue element ...
Place queue element on console SYSLOG queue.•
Post console SYSLOG.•
Issue reset operation to the printer through WSIOCH.•
Reset any error condition indicators in printer TUB.Return to calling program.
Diagram 2.31 (Part 2 of 2). Perform Command Processor Cleanup Function 2-66
Licensed Material-Property of IBM
From: Calling Program
IINPUT
r
PROCESS~
• OUTPUT.. D
Perform security initialization if required ~
(XR2
... > ::>
XR2(parameter list Parameter list
fJ
Perform no~mal sign-on security check•
CompletionMain Storage code
•
User securityIf user 10 and password are special values, and if the user is at the system console:
e
Permit sign-on.•
Set normal return code (PRSFNML).•
Make cu rrent user master security officer.•
Return to calling program.Build VTOC read parameter list.
•
Read security file format 1 from VTOC. @CSVF~
If no security profile exists: #PRSD
•
Set security profile lost return code (PRSFLSn.•
Return to .calling program.Initialize security data in system communication area (SCA).
f)lnitialize search buffer:
•
Clear buffer to X'FF'.•
Put user ID in first 8 bytes of each 64-byte record in search buffer.Build disk lOB for security file disk scan operation.
Search security file for user 10. Disk lOS
Diagram 2.32 (Part 1 of 2). Perform Pass~ord Security Function
Method of Operation 2-67