ibm:vm370-lib:cms:dmsscr.assemble_abs
Table of Contents
DMSSCR Abstract
Statistics
Type ASSEMBLE
Source Lines : 708
Fixes Applied : 4
Most Recent Version : Tuesday, December 12, 1978
Last Fix ID : [HRC073DS]
Synopsis
Module
DMSSCR
Function
LOAD DISPLAY BUFFERS AND CREATE A PARAMETER LIST FOR MODULE DMSGIO.
Attributes
EXECUTES IN USER AREA AS PART OF EDIT LOAD MODULE.
Operation
UPON ENTRY TO THIS ROUTINE THE TWO BYTES LABELLED SCRFLGS, AND SCRFLG2 WILL BE SET TO INDICATE THE FOLLOWING: SCRFLGS= X'80' REWRITE THE STATUS AREA SCRFLGS= X'40' WRITE THE CURRENT LINE TO LINE 9 OF ALL DISPLAYS EXCEPT 3278 MOD 2A WHICH IS LINE 7 SCRFLGS= X'20' WRITE FROM THE CURRENT LINE DOWN TO THE BOTTOM OF THE OUTPUT AREA. SCRFLGS= X'02' WRITE FROM CURRENT LINE UP TO TOP SCRFLG2= X'80' CAUSE CP MORE STATUS. ISSUED WITH A COMPLETE WRITE REQUEST. SCRFLG2= X'40' CAUSE AN EFFECTIVE OPERATOR CANCEL. SCAFLG2= X'04' WRITE LAST COMMAND TO INPUT AREA DMSSCR USES THE FLAG BITS TO LOAD A DISPLAY BUFFER AREA WHICH IS LOCATED IN USER FREE STORAGE. THIS AREA WAS OBTAINED BY DMSEDX DURING INITIALIZATION. FILEID INFORMATION IS OBTAINED FROM CONTROL BLOCKS IN DMSEDI. EDITOR STATUS IS DETERMINED BY FLAG BITS IN DMSEDI INDICATING 'NEW FILE','EDIT MODE',OR 'INPUT MODE'. THE LENGTH AND ADDRESS OF A MESSAGE TO BE WRITTEN ARE LOCATED IN REGISTERS 0 AND 1 RESPECTIVELY AT ENTRY TO THIS MODULE. THE TRUNCATION COLUMN IS USED TO DETERMINE THE LENGTH OF THE CURRENT LINE TO BE PLACED IN THE INPUT AREA BUFFER. IN THE CASE OF A DISPLAY CHANGE COMMAND WITH LINEMODE IN EFFECT, THE LINE NUMBER IS NOT WRITTEN IN THE INPUT AREA WITH THE REST OF THE DATA. IT IS THEREBY PROTECTED FROM ALTERATION BY THE USER. LOADING OUTPUT AREA BUFFERS THE OUTPUT BUFFERS ARE ALWAYS LOADED SO THAT LINE 9 OF THE DISPLAY ALWAYS CONTAINS THE CURRENT LINE UNLESS IT IS A 3278 MOD 2A THEN IT IS LINE 7. IF THE VERIFICATION COLUMN IS GREATER THAN 80, TWO LINES MAY BE USED TO DISPLAY THE RECORD. TRAILING BLANKS IN A RECORD ARE IGNORED IN DETERMIN- ING WHETHER OR NOT A RECORD WILL REQUIRE TWO DISPLAY LINES. THE CURRENT LINE IS THE FIRST TO BE LOADED INTO THE BUFFER AREA. ENOUGH RECORDS FOLLOWING THE CURRENT LINE TO FILL THE REMAINING LOWER OUTPUT BUFFER AREA ARE THEN LOADED. THEN THE LINES PRECEDING THE CURRENT LINE ARE LOADED IN REVERSE ORDER, THAT IS, LINE 8, LINE 7, ETC, THROUGH LINE 2. IN THE CASE OF TOP OF FILE OR END OF FILE BEING ENCOUNTEREDIN LOADING THE BUFFER AREA, THE REMAINING BUFFER LINES IN THE OUTPUT AREA ARE PADDED WITH BLANKS. WHEN THE REQUESTED BUFFERS HAVE BEEN LOADED A PARAMETER LIST IS GENERATED USING THE UPPER AND LOWER LIMITS OF THE WRITE REQUEST TO CALCULATE THE NUMBER OF BYTES TO BE WRITTEN. A CALL IS MADE TO DMSGIO FOR ISSUANCE OF THE CP DIAGNOSE TO WRITE TO THE DISPLAY. UPON RETURN FROM DMSGIO, DMSSCR RETURNS TO THE CALLER WITH CP'S DIAGNOSE RETURN CODE IN REGISTER 15.
Calls to Other Routines
DMSGIO
ibm/vm370-lib/cms/dmsscr.assemble_abs.txt ยท Last modified: 2023/08/06 13:35 by Site Administrator